DD_LIST_FOREACH_SAFE should be used when there is node remove operation from list.
[platform/core/system/libstorage.git] / src / storage-external-dbus.h
index 98522d5..c37881b 100644 (file)
 #include <gio/gio.h>
 #include "list.h"
 
-#define STORAGE_EXT_BUS_NAME              "org.tizen.system.deviced"
-#define STORAGE_EXT_PATH                  "/Org/Tizen/System/DeviceD/Block"
-#define STORAGE_EXT_PATH_DEVICES          STORAGE_EXT_PATH"/Devices"
-#define STORAGE_EXT_PATH_MANAGER          STORAGE_EXT_PATH"/Manager"
-#define STORAGE_EXT_IFACE                 STORAGE_EXT_BUS_NAME".Block"
+#define STORAGE_EXT_BUS_NAME              "org.tizen.system.storage"
+#define STORAGE_EXT_PATH_MANAGER          "/Org/Tizen/System/Storage/Block/Manager"
 #define STORAGE_EXT_IFACE_MANAGER         STORAGE_EXT_BUS_NAME".BlockManager"
 
 enum mount_state {
@@ -41,11 +38,13 @@ enum storage_ext_state {
        STORAGE_EXT_REMOVED,
        STORAGE_EXT_ADDED,
        STORAGE_EXT_CHANGED,
+       STORAGE_EXT_BLOCKED,
 };
 
 enum storage_ext_type {
        STORAGE_EXT_SCSI,
        STORAGE_EXT_MMC,
+       STORAGE_EXT_MMC_EXTENDED_INTERNAL,
 };
 
 enum storage_ext_flags {
@@ -75,6 +74,7 @@ typedef struct _storage_ext_device {
 
 typedef int (*storage_ext_changed_cb)(storage_ext_device *dev, enum storage_ext_state state, void *data);
 
+int storage_ext_is_supported(void);
 void storage_ext_release_device(storage_ext_device **dev);
 void storage_ext_release_list(dd_list **list);
 int storage_ext_get_list(dd_list **list);
@@ -82,4 +82,10 @@ int storage_ext_get_list(dd_list **list);
 int storage_ext_register_device_change(storage_ext_changed_cb func, void *data);
 void storage_ext_unregister_device_change(storage_ext_changed_cb func);
 
+int storage_ext_get_device_info(int storage_id, storage_ext_device *info);
+
+/* storage-internal.c */
+GVariant *dbus_method_call_sync(const gchar *dest, const gchar *path,
+               const gchar *iface, const gchar *method, GVariant *param);
+
 #endif /* __STORAGE_EXTERNAL_DBUS_H__ */