Add precondition 35/187435/1
authorJihoon Jung <jh8801.jung@samsung.com>
Thu, 23 Aug 2018 07:17:29 +0000 (16:17 +0900)
committerJihoon Jung <jh8801.jung@samsung.com>
Thu, 23 Aug 2018 07:17:29 +0000 (16:17 +0900)
Change-Id: Ic81973c496b5ee830f2139ba49f9e1706bdbc8b9
Signed-off-by: Jihoon Jung <jh8801.jung@samsung.com>
include/mdg.h
src/mdg.c
src/mdg_private.h

index 5f43b12..de144ba 100755 (executable)
@@ -928,33 +928,6 @@ int mdg_device_info_get_device_id(mdg_device_h device,
                char **device_id);
 
 /**
- * @brief Gets IP of the device handle.
- *
- * @since_tizen 5.0
- * @privlevel public
- *
- * @remarks The @a ip should be released using free().
- *
- * @param[in] device Device handle
- * @param[out] ip IP address
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #MDG_ERROR_NONE Successful
- * @retval #MDG_ERROR_INVALID_PARAMETER Invalid parameter
- *
- * @see mdg_device_info_create()
- * @see mdg_device_info_clone()
- * @see mdg_device_info_destroy()
- * @see mdg_device_info_get_device_id()
- * @see mdg_device_info_get_device_type()
- * @see mdg_device_info_get_model_name()
- *
- */
-int mdg_device_info_get_addr(mdg_device_h device, char **addr);
-int mdg_device_info_get_port(mdg_device_h device, int *port);
-int mdg_device_info_get_secure_port(mdg_device_h device, int *secure_port);
-
-/**
  * @brief Gets model name of the device handle.
  *
  * @since_tizen 5.0
index d2e83d0..a37b824 100755 (executable)
--- a/src/mdg.c
+++ b/src/mdg.c
@@ -63,6 +63,7 @@ EXPORT_API int mdg_deinitialize(mdg_h handle)
        int ret = MDG_ERROR_NONE;
 
        CHECK_FEATURE_SUPPORTED(MDG_FEATURE);
+       mdg_check_null_ret_error("handle", handle, MDG_ERROR_INVALID_PARAMETER);
        CHECK_HANDLE_IS_VALID(handle);
 
        _BEGIN();
@@ -210,6 +211,7 @@ EXPORT_API int mdg_device_regist_channel(mdg_h handle, char *channel_id,
 
        mdg_manager_s *_handle = handle;
        mdg_check_null_ret_error("handle", handle, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("channel_id", channel_id, MDG_ERROR_INVALID_PARAMETER);
        CHECK_HANDLE_IS_VALID(_handle);
 
        _BEGIN();
@@ -243,6 +245,11 @@ EXPORT_API int mdg_device_send_response(mdg_h handle, char *device_id, char *cha
 
        mdg_manager_s *_handle = handle;
        mdg_check_null_ret_error("handle", handle, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("device_id", device_id, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("channel_id", channel_id, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("data", data, MDG_ERROR_INVALID_PARAMETER);
+       cond_expr_ret(msg_id <= 0, MDG_ERROR_INVALID_PARAMETER);
+       cond_expr_ret(len <= 0, MDG_ERROR_INVALID_PARAMETER);
        CHECK_HANDLE_IS_VALID(handle);
 
        buf = g_try_malloc0(len + 1);
@@ -285,6 +292,7 @@ EXPORT_API int mdg_device_unregist_channel(mdg_h handle, char *channel_id)
 
        mdg_manager_s *_handle = handle;
        mdg_check_null_ret_error("handle", handle, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("channel_id", channel_id, MDG_ERROR_INVALID_PARAMETER);
        CHECK_HANDLE_IS_VALID(handle);
 
        _BEGIN();
@@ -301,7 +309,7 @@ EXPORT_API int mdg_device_unregist_channel(mdg_h handle, char *channel_id)
        }
 
        if (is_exist == false)
-               ret = MDG_ERROR_OPERATION_FAILED;
+               ret = MDG_ERROR_NO_DATA;
 
        if (ret == MDG_ERROR_NONE) {
                group_call_unregist_channel_sync(_handle->group_proxy, channel_id, &ret, NULL, &error);
@@ -332,10 +340,12 @@ EXPORT_API int mdg_device_send_data(mdg_h handle,
 
        mdg_manager_s *_handle = handle;
        mdg_check_null_ret_error("handle", handle, MDG_ERROR_INVALID_PARAMETER);
-       CHECK_HANDLE_IS_VALID(handle);
-
        mdg_device_s *dev = (mdg_device_s *)device;
        mdg_check_null_ret_error("dev", dev, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("channel_id", channel_id, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("data", data, MDG_ERROR_INVALID_PARAMETER);
+       cond_expr_ret(len <= 0, MDG_ERROR_INVALID_PARAMETER);
+       CHECK_HANDLE_IS_VALID(handle);
 
        buf = g_try_malloc0(len + 1);
        if (NULL == buf) {
@@ -417,6 +427,7 @@ EXPORT_API int mdg_set_receive_file_cb(mdg_h handle,
 
        mdg_manager_s *_handle = handle;
        mdg_check_null_ret_error("handle", handle, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("ejected_event_cb", receive_cb, MDG_ERROR_INVALID_PARAMETER);
        CHECK_HANDLE_IS_VALID(handle);
 
        _handle->receive_file_cb.receive_cb = receive_cb;
@@ -452,6 +463,7 @@ EXPORT_API int mdg_device_get_local_device(mdg_h handle,
 
        mdg_manager_s *_handle = handle;
        mdg_check_null_ret_error("handle", handle, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("device", device, MDG_ERROR_INVALID_PARAMETER);
        CHECK_HANDLE_IS_VALID(handle);
 
        group_call_get_local_device_sync(_handle->group_proxy, &va, NULL, &error);
@@ -617,11 +629,11 @@ EXPORT_API int mdg_group_info_clone(mdg_group_h *target,
 
        CHECK_FEATURE_SUPPORTED(MDG_FEATURE);
 
-       mdg_group_s * src = (mdg_group_s *)source;
+       mdg_group_s *src = (mdg_group_s *)source;
        mdg_check_null_ret_error("source", source, MDG_ERROR_INVALID_PARAMETER);
 
-       *target = (mdg_group_s *)g_malloc0(sizeof(mdg_group_s));
        mdg_check_null_ret_error("target", target, MDG_ERROR_INVALID_PARAMETER);
+       *target = (mdg_group_s *)g_malloc0(sizeof(mdg_group_s));
        mdg_group_s *dst = *target;
 
        if (src->device_id)
@@ -641,7 +653,7 @@ EXPORT_API int mdg_group_info_destroy(mdg_group_h data)
 
        CHECK_FEATURE_SUPPORTED(MDG_FEATURE);
 
-       mdg_group_s * group = (mdg_group_s *)data;
+       mdg_group_s *group = (mdg_group_s *)data;
        mdg_check_null_ret_error("group", group, MDG_ERROR_INVALID_PARAMETER);
 
        if (group->device_id) {
@@ -665,6 +677,8 @@ EXPORT_API int mdg_group_info_get_device_id(
        int ret = MDG_ERROR_NONE;
 
        CHECK_FEATURE_SUPPORTED(MDG_FEATURE);
+       mdg_check_null_ret_error("group", group, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("device_id", device_id, MDG_ERROR_INVALID_PARAMETER);
 
        *device_id = g_strdup(((mdg_group_s *)group)->device_id);
 
@@ -677,6 +691,8 @@ EXPORT_API int mdg_group_info_get_type(mdg_group_h group,
        int ret = MDG_ERROR_NONE;
 
        CHECK_FEATURE_SUPPORTED(MDG_FEATURE);
+       mdg_check_null_ret_error("group", group, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("type", type, MDG_ERROR_INVALID_PARAMETER);
 
        *type = ((mdg_group_s *)group)->type;
 
@@ -689,6 +705,8 @@ EXPORT_API int mdg_group_info_get_name(
        int ret = MDG_ERROR_NONE;
 
        CHECK_FEATURE_SUPPORTED(MDG_FEATURE);
+       mdg_check_null_ret_error("group", group, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("name", name, MDG_ERROR_INVALID_PARAMETER);
 
        *name = g_strdup(((mdg_group_s *)group)->group_name);
 
@@ -784,6 +802,8 @@ EXPORT_API int mdg_device_info_get_device_id(
        int ret = MDG_ERROR_NONE;
 
        CHECK_FEATURE_SUPPORTED(MDG_FEATURE);
+       mdg_check_null_ret_error("device", device, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("device_id", device_id, MDG_ERROR_INVALID_PARAMETER);
 
        *device_id = g_strdup(((mdg_device_s *)device)->device_id);
 
@@ -796,6 +816,8 @@ EXPORT_API int mdg_device_info_get_model_name(
        int ret = MDG_ERROR_NONE;
 
        CHECK_FEATURE_SUPPORTED(MDG_FEATURE);
+       mdg_check_null_ret_error("device", device, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("model_name", model_name, MDG_ERROR_INVALID_PARAMETER);
 
        *model_name = g_strdup(((mdg_device_s *)device)->model_name);
 
@@ -808,6 +830,8 @@ EXPORT_API int mdg_device_info_get_device_name(
        int ret = MDG_ERROR_NONE;
 
        CHECK_FEATURE_SUPPORTED(MDG_FEATURE);
+       mdg_check_null_ret_error("device", device, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("device_name", device_name, MDG_ERROR_INVALID_PARAMETER);
 
        *device_name = g_strdup(((mdg_device_s *)device)->device_name);
 
@@ -820,6 +844,8 @@ EXPORT_API int mdg_device_info_get_platform_ver(
        int ret = MDG_ERROR_NONE;
 
        CHECK_FEATURE_SUPPORTED(MDG_FEATURE);
+       mdg_check_null_ret_error("device", device, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("platform_ver", platform_ver, MDG_ERROR_INVALID_PARAMETER);
 
        *platform_ver = g_strdup(((mdg_device_s *)device)->platform_ver);
 
@@ -832,6 +858,8 @@ EXPORT_API int mdg_device_info_get_vendor_id(
        int ret = MDG_ERROR_NONE;
 
        CHECK_FEATURE_SUPPORTED(MDG_FEATURE);
+       mdg_check_null_ret_error("device", device, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("vendor_id", vendor_id, MDG_ERROR_INVALID_PARAMETER);
 
        *vendor_id = g_strdup(((mdg_device_s *)device)->vendor_id);
 
@@ -844,6 +872,8 @@ EXPORT_API int mdg_device_info_get_profile(
        int ret = MDG_ERROR_NONE;
 
        CHECK_FEATURE_SUPPORTED(MDG_FEATURE);
+       mdg_check_null_ret_error("device", device, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("profile", profile, MDG_ERROR_INVALID_PARAMETER);
 
        *profile = g_strdup(((mdg_device_s *)device)->profile);
 
@@ -856,6 +886,8 @@ EXPORT_API int mdg_device_info_is_invited(
        int ret = MDG_ERROR_NONE;
 
        CHECK_FEATURE_SUPPORTED(MDG_FEATURE);
+       mdg_check_null_ret_error("device", device, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("is_invited", is_invited, MDG_ERROR_INVALID_PARAMETER);
 
        *is_invited = ((mdg_device_s *)device)->is_invited;
 
@@ -868,6 +900,8 @@ EXPORT_API int mdg_device_info_get_type(
        int ret = MDG_ERROR_NONE;
 
        CHECK_FEATURE_SUPPORTED(MDG_FEATURE);
+       mdg_check_null_ret_error("device", device, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("type", type, MDG_ERROR_INVALID_PARAMETER);
 
        *type = ((mdg_device_s *)device)->type;
 
@@ -1015,6 +1049,7 @@ EXPORT_API int mdg_request_result_callback(mdg_h handle,
 
        mdg_manager_s *_handle = handle;
        mdg_check_null_ret_error("handle", handle, MDG_ERROR_INVALID_PARAMETER);
+       CHECK_HANDLE_IS_VALID(handle);
 
        _handle->request_result_cb.result_cb = result_cb;
        _handle->request_result_cb.user_data = user_data;
@@ -1029,6 +1064,8 @@ EXPORT_API int mdg_set_invited_event_cb(mdg_h handle, mdg_invited_event_cb invit
 
        mdg_manager_s *_handle = handle;
        mdg_check_null_ret_error("handle", handle, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("invited_event_cb", invited_event_cb, MDG_ERROR_INVALID_PARAMETER);
+       CHECK_HANDLE_IS_VALID(handle);
 
        _handle->invited_event_cb.invited_event_cb = invited_event_cb;
        _handle->invited_event_cb.user_data = user_data;
@@ -1044,6 +1081,7 @@ EXPORT_API int mdg_unset_invited_event_cb(mdg_h handle)
 
        mdg_manager_s *_handle = handle;
        mdg_check_null_ret_error("handle", handle, MDG_ERROR_INVALID_PARAMETER);
+       CHECK_HANDLE_IS_VALID(handle);
 
        _handle->invited_event_cb.invited_event_cb = NULL;
        _handle->invited_event_cb.user_data = NULL;
@@ -1059,6 +1097,8 @@ EXPORT_API int mdg_set_ejected_event_cb(mdg_h handle, mdg_ejected_event_cb eject
 
        mdg_manager_s *_handle = handle;
        mdg_check_null_ret_error("handle", handle, MDG_ERROR_INVALID_PARAMETER);
+       mdg_check_null_ret_error("ejected_event_cb", ejected_event_cb, MDG_ERROR_INVALID_PARAMETER);
+       CHECK_HANDLE_IS_VALID(handle);
 
        _handle->ejected_event_cb.ejected_event_cb = ejected_event_cb;
        _handle->ejected_event_cb.user_data = user_data;
@@ -1074,6 +1114,7 @@ EXPORT_API int mdg_unset_ejected_event_cb(mdg_h handle)
 
        mdg_manager_s *_handle = handle;
        mdg_check_null_ret_error("handle", handle, MDG_ERROR_INVALID_PARAMETER);
+       CHECK_HANDLE_IS_VALID(handle);
 
        _handle->ejected_event_cb.ejected_event_cb = NULL;
        _handle->ejected_event_cb.user_data = NULL;
index 5722993..b0d622e 100755 (executable)
@@ -186,7 +186,7 @@ typedef struct _mdg_manager_s {
 
 #define CHECK_HANDLE_IS_VALID(handle) { \
        if (g_slist_find(handle_list, handle) == NULL) \
-               return MDG_ERROR_OPERATION_FAILED; \
+               return MDG_ERROR_NO_DATA; \
 }
 
 /**