Fixed svace issue 99/151499/1 accepted/tizen_unified accepted/tizen/unified/20170922.065143 submit/tizen/20170921.060854
authorYounho Park <younho.park@samsung.com>
Thu, 21 Sep 2017 06:02:49 +0000 (15:02 +0900)
committerYounho Park <younho.park@samsung.com>
Thu, 21 Sep 2017 06:02:49 +0000 (15:02 +0900)
Change-Id: Ie6e97a3b635cc81b896db9ad5a6c06c2b4c70282
Signed-off-by: Younho Park <younho.park@samsung.com>
adaptor/storage-adaptor/storage-adaptor.c
packaging/service-adaptor.spec
server/src/dbus/dbus-service-adaptor.c
server/src/dbus/dbus-storage-adaptor.c

index 546fa83239a0db64481e1fd0fbad43d4d9f78359..07b24e0d1847eb3a6926d6a155eb7430875742cf 100644 (file)
@@ -1341,18 +1341,21 @@ storage_adaptor_file_info_h storage_adaptor_create_file_info(void)
 {
        storage_adaptor_file_info_h _file_info = NULL;
        _file_info = (storage_adaptor_file_info_h) calloc(1, sizeof(storage_adaptor_file_info_t));
+       if (NULL == _file_info)
+               return NULL;
 
        storage_adaptor_media_meta_s *_media_meta = NULL;
        _media_meta = (storage_adaptor_media_meta_s *) calloc(1, sizeof(storage_adaptor_media_meta_s));
+       if (NULL == _media_meta) {
+               free(_file_info);
+               return NULL;
+       }
 
        storage_adaptor_cloud_meta_s *_cloud_meta = NULL;
        _cloud_meta = (storage_adaptor_cloud_meta_s *) calloc(1, sizeof(storage_adaptor_cloud_meta_s));
-
-       if ((NULL == _file_info) || (NULL == _media_meta) || (NULL == _cloud_meta)) {
+       if (NULL == _cloud_meta) {
                free(_file_info);
                free(_media_meta);
-               free(_cloud_meta);
-
                return NULL;
        }
 
index ed8944dfa1f4585a2e0010e00dd241a0022bbe4e..5eaec134f12c3f426c8a0acbd03816cf4110fb02 100644 (file)
@@ -1,6 +1,6 @@
 Name:       service-adaptor
 Summary:    Service Adaptor Framework for Convergence
-Version:    1.2.2
+Version:    1.2.3
 Release:    1
 Group:      System/Libraries
 License:    Apache-2.0
index b84302676fe1340c7a02464461510cfb424ce9bb..a6da04245608137203838ab12e0d73ffb6a33c56 100644 (file)
@@ -105,7 +105,7 @@ FUNC_STEP();
                service_adaptor_info("[DM] client profile <%s>", client_profile);
                char client_name[1024] = {0, };
                int client_pid = 0;
-               int sr = sscanf(client_profile, "%s%d", client_name, &client_pid);
+               int sr = sscanf(client_profile, "%1000s %10d", client_name, &client_pid);
                if (sr == 2) {
                                service_adaptor_info("[DM] client<%s> pid<%d>", client_name, client_pid);
                                #ifndef DETAILED_PEER
@@ -132,7 +132,7 @@ FUNC_END();
                service_adaptor_info("[DM] client profile <%s>", client_profile);
                char client_name[1024] = {0, };
                int client_pid = 0;
-               int sr = sscanf(client_profile, "%s%d", client_name, &client_pid);
+               int sr = sscanf(client_profile, "%1000s %10d", client_name, &client_pid);
                if (sr == 2) {
                                service_adaptor_info("[DM][dis] client<%s> pid<%d>", client_name, client_pid);
                                #ifndef DETAILED_PEER
index 0e589ca23ed5f9676086e95b134cb5c2e9ed6106..4d7ccff4d64963457aca7db4fb3d20b7c4e52bef 100644 (file)
@@ -807,65 +807,67 @@ GVariant *__create_get_file_list_res_type(storage_adaptor_file_info_h *file_info
        storage_adaptor_file_info_h _file_info = NULL;
        storage_adaptor_file_info_h dummy_file_info = storage_adaptor_create_file_info();
 
-       for (gsize i = 0; i < file_info_len; i++) {
-               _file_info = file_info_list[i];
-               if (NULL == _file_info) {
-                       _file_info = dummy_file_info;
-               }
-
-               if (NULL == _file_info->media_meta) {
-                       _file_info->media_meta = dummy_file_info->media_meta;
-               }
-
-               if (NULL == _file_info->cloud_meta) {
-                       _file_info->cloud_meta = dummy_file_info->cloud_meta;
-               }
-
-               g_variant_builder_open(builder_file_info, G_VARIANT_TYPE(service_adaptor_file_info_s_type));
-
-               /* file_info default */
-               g_variant_builder_add(builder_file_info, "s", __safe_add_string(_file_info->plugin_uri));
-               g_variant_builder_add(builder_file_info, "s", __safe_add_string(_file_info->object_id));
-               g_variant_builder_add(builder_file_info, "s", __safe_add_string(_file_info->storage_path));
-               g_variant_builder_add(builder_file_info, "t", (uint64_t) _file_info->file_size);
-               g_variant_builder_add(builder_file_info, "t", (uint64_t) _file_info->created_time);
-               g_variant_builder_add(builder_file_info, "t", (uint64_t) _file_info->modified_time);
-               g_variant_builder_add(builder_file_info, "i", (int32_t) _file_info->file_info_index);
-               g_variant_builder_add(builder_file_info, "i", (int32_t) _file_info->content_type);
-
-               /* media_meta */
-
-               g_variant_builder_add_value(builder_file_info, g_variant_new(service_adaptor_content_meta_s_type,
-                               __safe_add_string(_file_info->media_meta->mime_type),
-                               __safe_add_string(_file_info->media_meta->title),
-                               __safe_add_string(_file_info->media_meta->album),
-                               __safe_add_string(_file_info->media_meta->artist),
-                               __safe_add_string(_file_info->media_meta->genere),
-                               __safe_add_string(_file_info->media_meta->recorded_date),
-                               (int32_t) _file_info->media_meta->width,
-                               (int32_t) _file_info->media_meta->height,
-                               (int32_t) _file_info->media_meta->duration,
-                               __safe_add_string(_file_info->media_meta->copyright),
-                               __safe_add_string(_file_info->media_meta->track_num),
-                               __safe_add_string(_file_info->media_meta->description),
-                               __safe_add_string(_file_info->media_meta->composer),
-                               __safe_add_string(_file_info->media_meta->year),
-                               (int32_t) _file_info->media_meta->bitrate,
-                               (int32_t) _file_info->media_meta->samplerate,
-                               (int32_t) _file_info->media_meta->channel,
-                               __safe_add_string(_file_info->media_meta->extra_media_meta)));
-
-               /* cloud_meta */
-               g_variant_builder_add_value(builder_file_info, g_variant_new(service_adaptor_cloud_meta_s_type,
-                               __safe_add_string(_file_info->cloud_meta->service_name),
-                               (uint64_t) _file_info->cloud_meta->usage_byte,
-                               (uint64_t) _file_info->cloud_meta->quota_byte));
-
-               g_variant_builder_add(builder_file_info, "s", __safe_add_string(_file_info->extra_file_info));
-
-               g_variant_builder_close(builder_file_info);
+       if (NULL != dummy_file_info) {
+               for (gsize i = 0; i < file_info_len; i++) {
+                       _file_info = file_info_list[i];
+                       if (NULL == _file_info) {
+                               _file_info = dummy_file_info;
+                       }
+
+                       if (NULL == _file_info->media_meta) {
+                               _file_info->media_meta = dummy_file_info->media_meta;
+                       }
+
+                       if (NULL == _file_info->cloud_meta) {
+                               _file_info->cloud_meta = dummy_file_info->cloud_meta;
+                       }
+
+                       g_variant_builder_open(builder_file_info, G_VARIANT_TYPE(service_adaptor_file_info_s_type));
+
+                       /* file_info default */
+                       g_variant_builder_add(builder_file_info, "s", __safe_add_string(_file_info->plugin_uri));
+                       g_variant_builder_add(builder_file_info, "s", __safe_add_string(_file_info->object_id));
+                       g_variant_builder_add(builder_file_info, "s", __safe_add_string(_file_info->storage_path));
+                       g_variant_builder_add(builder_file_info, "t", (uint64_t) _file_info->file_size);
+                       g_variant_builder_add(builder_file_info, "t", (uint64_t) _file_info->created_time);
+                       g_variant_builder_add(builder_file_info, "t", (uint64_t) _file_info->modified_time);
+                       g_variant_builder_add(builder_file_info, "i", (int32_t) _file_info->file_info_index);
+                       g_variant_builder_add(builder_file_info, "i", (int32_t) _file_info->content_type);
+
+                       /* media_meta */
+
+                       g_variant_builder_add_value(builder_file_info, g_variant_new(service_adaptor_content_meta_s_type,
+                                       __safe_add_string(_file_info->media_meta->mime_type),
+                                       __safe_add_string(_file_info->media_meta->title),
+                                       __safe_add_string(_file_info->media_meta->album),
+                                       __safe_add_string(_file_info->media_meta->artist),
+                                       __safe_add_string(_file_info->media_meta->genere),
+                                       __safe_add_string(_file_info->media_meta->recorded_date),
+                                       (int32_t) _file_info->media_meta->width,
+                                       (int32_t) _file_info->media_meta->height,
+                                       (int32_t) _file_info->media_meta->duration,
+                                       __safe_add_string(_file_info->media_meta->copyright),
+                                       __safe_add_string(_file_info->media_meta->track_num),
+                                       __safe_add_string(_file_info->media_meta->description),
+                                       __safe_add_string(_file_info->media_meta->composer),
+                                       __safe_add_string(_file_info->media_meta->year),
+                                       (int32_t) _file_info->media_meta->bitrate,
+                                       (int32_t) _file_info->media_meta->samplerate,
+                                       (int32_t) _file_info->media_meta->channel,
+                                       __safe_add_string(_file_info->media_meta->extra_media_meta)));
+
+                       /* cloud_meta */
+                       g_variant_builder_add_value(builder_file_info, g_variant_new(service_adaptor_cloud_meta_s_type,
+                                       __safe_add_string(_file_info->cloud_meta->service_name),
+                                       (uint64_t) _file_info->cloud_meta->usage_byte,
+                                       (uint64_t) _file_info->cloud_meta->quota_byte));
+
+                       g_variant_builder_add(builder_file_info, "s", __safe_add_string(_file_info->extra_file_info));
+
+                       g_variant_builder_close(builder_file_info);
+               }
+               storage_adaptor_destroy_file_info(&dummy_file_info);
        }
-       storage_adaptor_destroy_file_info(&dummy_file_info);
 
        GVariant *response = g_variant_new(MAKE_RETURN_TYPE(service_adaptor_get_file_list_res_s_type),
                        builder_file_info, (uint32_t)file_info_len,
@@ -1278,7 +1280,7 @@ void storage_adaptor_method_call(GDBusConnection *connection,
                        char public_token[1024] = {0,};
                        char auth_code[1024] = {0,};
 
-                       sscanf(server_path, "%[^'?']?auth_code=%s", public_token, auth_code);
+                       sscanf(server_path, "%1000[^'?']?auth_code=%1000s", public_token, auth_code);
                        ret_code = storage_adaptor_download_file_sync_by_public_token(plugin, service->storage_context,
                                        public_token, auth_code, download_path, NULL, &error_code, NULL);
 
@@ -1354,7 +1356,7 @@ void storage_adaptor_method_call(GDBusConnection *connection,
                        char public_token[1024] = {0,};
                        char auth_code[1024] = {0,};
 
-                       sscanf(server_path, "%[^'?']?auth_code=%s", public_token, auth_code);
+                       sscanf(server_path, "%1000[^'?']?auth_code=%1000s", public_token, auth_code);
 
                        ret_code = storage_adaptor_download_file_async_by_public_token(plugin, service->storage_context,
                                        public_token, auth_code, download_path, NULL, (void *) &fd, &error_code);