/**
* @brief Enumeration for Storage of error codes.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
+ * @since_tizen 2.3
*/
typedef enum {
STORAGE_ERROR_NONE = TIZEN_ERROR_NONE, /**< Successful */
/**
* @brief Enumeration for the storage types.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
+ * @since_tizen 2.3
*/
typedef enum {
STORAGE_TYPE_INTERNAL, /**< Internal device storage (built-in storage in a device, non-removable) */
/**
* @brief Enumeration for storage devices state.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
+ * @since_tizen 2.3
*/
typedef enum {
STORAGE_STATE_UNMOUNTABLE = -2, /**< Storage is present but cannot be mounted. Typically it happens if the file system of the storage is corrupted */
/**
* @brief Called to get information once for each supported storage.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
+ * @since_tizen 2.3
* @param[in] storage_id The unique storage ID
* @param[in] type The type of the storage
* @param[in] state The current state of the storage
* @brief Retrieves all the storage in a device.
* @details This function invokes the callback function once for each storage in a device. \n
* If storage_device_supported_cb() returns @c false, then the iteration will be finished.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
+ * @since_tizen 2.3
* @param[in] callback The iteration callback function
* @param[in] user_data The user data to be passed to the callback function
* @return @c 0 on success,
/**
* @brief Gets the absolute path to the root directory of the given storage.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
+ * @since_tizen 2.3
* @remarks Files saved on the internal/external storage are readable or writable by all applications.\n
* When an application is uninstalled, the files written by that application are not removed from the internal/external storage.\n
* If you want to access files or directories in internal storage, you must declare %http://tizen.org/privilege/mediastorage.\n
/**
* @brief Enumeration for the storage directory types.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
+ * @since_tizen 2.3
*/
typedef enum {
STORAGE_DIRECTORY_IMAGES, /**< Image directory */
/**
* @brief Gets the absolute path to the each directory of the given storage.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
+ * @since_tizen 2.3
* @remarks Files saved on the internal/external storage are readable or writable by all applications.\n
* When an application is uninstalled, the files written by that application are not removed from the internal/external storage.\n
* The directory path may not exist, so you must make sure that it exists before using it.\n
/**
* @brief Gets the type of the given storage.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
+ * @since_tizen 2.3
* @param[in] storage_id The storage device
* @param[out] type The type of the storage
* @return @c 0 on success,
/**
* @brief Gets the current state of the given storage.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
+ * @since_tizen 2.3
* @param[in] storage_id The storage device
* @param[out] state The current state of the storage
* @return @c 0 on success,
/**
* @brief Called when the state of storage changes.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
+ * @since_tizen 2.3
* @param[in] storage_id The unique storage ID
* @param[in] state The current state of the storage
* @param[in] user_data The user data passed from the foreach function
/**
* @brief Registers a callback function to be invoked when the state of the storage changes.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
+ * @since_tizen 2.3
* @param[in] storage_id The storage device
* @param[in] callback The callback function to register
* @param[in] user_data The user data to be passed to the callback function
/**
* @brief Unregisters the callback function.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
+ * @since_tizen 2.3
* @param[in] storage_id The storage device to monitor
* @param[in] callback The callback function to register
* @return @c 0 on success,
/**
* @brief Gets the total space of the given storage in bytes.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
+ * @since_tizen 2.3
* @param[in] storage_id The storage device
* @param[out] bytes The total space size of the storage (bytes)
* @return @c 0 on success,
/**
* @brief Gets the available space size of the given storage in bytes.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
+ * @since_tizen 2.3
* @param[in] storage_id The storage device
* @param[out] bytes The available space size of the storage (bytes)
* @return @c 0 on success,
#define STORAGE_CONF_FILE "/etc/storage/libstorage.conf"
-#define MATCH(a, b) (!strncmp(a, b, strlen(a)))
#define SET_CONF(a, b) (a = (b > 0.0 ? b : a))
struct storage_config_info {
if (!info)
return -EINVAL;
- if (!MATCH(result->section, "STORAGE"))
+ if (strncmp(result->section, "STORAGE", strlen(result->section) + 1))
return -EINVAL;
name = result->name;
if (info->check_size > 0 && check_size < 0)
check_size = (storage_info.total_size < info->check_size) ? 1 : 0;
- if (MATCH(name, "CHECK_SIZE"))
+ if (!strncmp(name, "CHECK_SIZE", strlen(name) + 1))
info->check_size = atoi(value);
- else if (check_size == 0 && MATCH(name, "RESERVE"))
+ else if (check_size == 0 && !strncmp(name, "RESERVE", strlen(name) + 1))
info->reserved_size = atoi(value);
- else if (check_size == 1 && MATCH(name, "RESERVE_LITE"))
+ else if (check_size == 1 && !strncmp(name, "RESERVE_LITE", strlen(name) + 1))
info->reserved_size = atoi(value);
return 0;