+/* Creates a storage and registers it in SD.
+ */
+SD_storage_t __SD_storage_create(void *surf_storage, void *data)
+{
+
+ SD_storage_priv_t storage;
+ const char *name;
+
+ storage = xbt_new(s_SD_storage_priv_t, 1);
+ storage->data = data; /* user data */
+ name = surf_resource_name(surf_storage);
+ storage->host = surf_storage_get_host(surf_storage_resource_by_name(name));
+ xbt_lib_set(storage_lib,name, SD_STORAGE_LEVEL, storage);
+ return xbt_lib_get_elm_or_null(storage_lib, name);
+}
+
+/* Destroys a storage.
+ */
+void __SD_storage_destroy(void *storage)
+{
+ SD_storage_priv_t s;
+
+ s = (SD_storage_priv_t) storage;
+ xbt_free(s);
+}
+