+msg_file_t MSG_file_open(const char* fullpath, void* data)
+{
+ msg_file_priv_t priv = xbt_new(s_msg_file_priv_t, 1);
+ priv->data = data;
+ priv->fullpath = xbt_strdup(fullpath);
+ priv->simdata = xbt_new0(s_simdata_file_t,1);
+ priv->simdata->smx_file = simcall_file_open(fullpath);
+ xbt_lib_set(file_lib, fullpath, MSG_FILE_LEVEL, priv);
+ return (msg_file_t) xbt_lib_get_elm_or_null(file_lib, fullpath);
+}
+
+/**
+ * \brief Frees private data of a file (internal call only)
+ */
+void __MSG_file_priv_free(msg_file_priv_t priv)