+
+/** \ingroup msg_storage_management
+ *
+ * \brief Set the user data of a #msg_storage_t.
+ * This functions checks whether some data has already been associated to \a storage
+ or not and attach \a data to \a storage if it is possible.
+ */
+msg_error_t MSG_storage_set_data(msg_storage_t storage, void *data)
+{
+ msg_storage_priv_t priv = MSG_storage_priv(storage);
+ priv->data = data;
+ return MSG_OK;
+}
+
+/** \ingroup msg_host_management
+ *
+ * \brief Returns the user data of a #msg_storage_t.
+ *
+ * This functions checks whether \a storage is a valid pointer or not and returns
+ the user data associated to \a storage if it is possible.
+ */
+void *MSG_storage_get_data(msg_storage_t storage)
+{
+ xbt_assert((storage != NULL), "Invalid parameters");
+ msg_storage_priv_t priv = MSG_storage_priv(storage);
+ return priv->data;
+}
+
+/** \ingroup msg_storage_management
+ *
+ * \brief Returns the content (file list) of a #msg_storage_t.
+ * \param storage a storage
+ * \return The content of this storage element as a dict (full path file => size)
+ */
+xbt_dict_t MSG_storage_get_content(msg_storage_t storage)
+{
+ return SIMIX_storage_get_content(storage);
+}
+
+sg_size_t MSG_storage_get_size(msg_storage_t storage)
+{
+ return SIMIX_storage_get_size(storage);
+}
+
+/**
+ * \ingroup msg_storage_management
+ *
+ * \brief Rename the file in the contents of its associated storage.
+ */
+msg_error_t MSG_storage_file_rename(msg_storage_t storage, const char* src, const char* dest)
+{
+ simcall_storage_file_rename(storage, src, dest);
+ return MSG_OK;
+}
+
+/**
+ * \ingroup msg_storage_management
+ * \brief Move a file to another location. Depending on the values of dest, dest, mount,
+ * and fullname, this move can be local or remote and, within a host, on the same
+ * mounted disk or between mounted disks.
+ *
+ */
+msg_error_t MSG_storage_file_move (msg_file_t fd, msg_host_t dest, char* mount, char* fullname)
+{
+ THROW_UNIMPLEMENTED;
+ return MSG_OK;
+}
+
+/** \ingroup msg_storage_management
+ *
+ * \brief Returns the host name the storage is attached to
+ *
+ * This functions checks whether a storage is a valid pointer or not and return its name.
+ */
+const char *MSG_storage_get_host(msg_storage_t storage) {
+ xbt_assert((storage != NULL), "Invalid parameters");
+ msg_storage_priv_t priv = MSG_storage_priv(storage);
+ return priv->host;
+}