Fixed a svace issue 40/213340/2
authorsaerome.kim <saerome.kim@samsung.com>
Wed, 4 Sep 2019 07:36:25 +0000 (16:36 +0900)
committersaerome.kim <saerome.kim@samsung.com>
Wed, 4 Sep 2019 09:09:47 +0000 (18:09 +0900)
406758: Non-terminated string of size 32.

Change-Id: I7d868df7f6a97ad886281e586dd468e5a0115e18
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
packaging/ua-manager.spec
ua-api/src/ua-api.c

index 02209bd..9a6ccfd 100644 (file)
@@ -1,6 +1,6 @@
 Name:       ua-manager
 Summary:    User awareness manager
-Version:    0.7.1
+Version:    0.7.2
 Release:    1
 License:    Apache-2.0
 Source0:    %{name}-%{version}.tar.gz
index f47c8da..75356d6 100644 (file)
@@ -1292,14 +1292,20 @@ UAM_EXPORT_API int _uam_add_ibeacon_adv_data(unsigned int adv_len, const char *i
 {
        FUNC_ENTRY;
        int ret;
+       int len = 0;
        char str[UAM_IBEACON_ADV_MAX_LEN + 1];
 
        UAM_INIT_PARAMS();
        UAM_ALLOC_PARAMS(in_param1, in_param2, in_param3, in_param4, out_param);
 
-       memcpy(str, ibeacon_adv, UAM_IBEACON_ADV_MAX_LEN + 1);
+       if (adv_len >= UAM_IBEACON_ADV_MAX_LEN)
+               len = UAM_IBEACON_ADV_MAX_LEN;
+       else
+               len = adv_len;
 
-       g_array_append_vals(in_param1, &adv_len, sizeof(unsigned int));
+       memcpy(str, ibeacon_adv, len);
+
+       g_array_append_vals(in_param1, &len, sizeof(unsigned int));
        g_array_append_vals(in_param2, &str, sizeof(str));
        ret = _uam_sync_request(UAM_REQUEST_ADD_IBEACON_ADV,
                        in_param1, in_param2, in_param3, in_param4, &out_param);