Use rand_r() instead of rand() 42/269042/1 accepted/tizen/unified/20220110.135924 submit/tizen/20220107.035040
authorSeonah Moon <seonah1.moon@samsung.com>
Fri, 7 Jan 2022 03:46:21 +0000 (12:46 +0900)
committerSeonah Moon <seonah1.moon@samsung.com>
Fri, 7 Jan 2022 03:46:25 +0000 (12:46 +0900)
Change-Id: Ia8f78ddbb84aba767d5aef810b7602be2e6748be

packaging/capi-network-vine.spec
src/vine-dp.cpp

index ab0ee55..0834c6d 100755 (executable)
@@ -3,7 +3,7 @@
 %bcond_without use_glib_event_loop
 Name:    capi-network-vine
 Summary: An service discovery framework
-Version: 1.2.5
+Version: 1.2.6
 Release: 0
 Group:   Network & Connectivity/API
 License: Apache-2.0
index 3dc9a17..23806c4 100755 (executable)
@@ -1205,10 +1205,10 @@ void DPPubSub::create_id(char id[])
        const size_t map_len = strlen(map);
 
        string rand_str;
-       srand(time(NULL));
        generate_n(back_inserter(rand_str), 6,
                [&](){
-                       return map[rand() % map_len];
+                       unsigned int seed = time(NULL);
+                       return map[rand_r(&seed) % map_len];
                });
        snprintf(id, VINE_MAX_SERVICE_NAME_LEN, "%s-%s",
                        VINE_DP_PUBSUB_SERVICE_NAME_PREFIX, rand_str.c_str());
@@ -1305,8 +1305,8 @@ int DPPubSub::subscribe_service()
 
 int DPPubSub::create_rank()
 {
-       srand(time(NULL));
-       return rand() % VINE_DP_PUBSUB_RANK_MAX;
+       unsigned int seed = time(NULL);
+       return rand_r(&seed) % VINE_DP_PUBSUB_RANK_MAX;
 }
 
 int DPPubSub::open(vine_dp_opened_cb callback, void *user_data)