ecore_evas: replace strcmp with strncmp 07/226807/1
authorYeongjong Lee <yj34.lee@samsung.com>
Thu, 5 Mar 2020 11:22:08 +0000 (20:22 +0900)
committerYeongjong Lee <yj34.lee@samsung.com>
Thu, 5 Mar 2020 11:22:09 +0000 (20:22 +0900)
The `data` from '_ecore_evas_msg_handle' doesn't have null-character.
If you use this data for strcmp, it may corrupt memory.

Change-Id: I715ef2fe35a04f5b0992aabd5249d4d9dc0f5ef8

TC/ecore/ecore_evas/utc_ecore_evas_callback_msg_handle_set.c
TC/ecore/ecore_evas/utc_ecore_evas_callback_msg_parent_handle_set.c
TC/ecore/ecore_evas/utc_ecore_evas_msg_parent_send.c
TC/ecore/ecore_evas/utc_ecore_evas_msg_send.c

index 8cc1effe08448b4311478e45e8d6d025fc6788c8..b555fdce44218fdbfd981f28668e9f3ba24e6f4f 100644 (file)
@@ -41,7 +41,7 @@ static void
 _ecore_evas_msg_handle(Ecore_Evas *ee, int msg_domain, int msg_id, void *data, int size)
 {
     callback_counter++;
-    if (size ==  strlen(msg_data) && strcmp(data,msg_data) == 0)
+    if (size ==  strlen(msg_data) && strncmp(msg_data, data, size) == 0)
       {
          callback_msg = EINA_TRUE;
       }
index 94bbbb17aedbe005868128bbb9a4d59eec649ffd..07ae96ab63b8618dc0f2d77f88402b26a82d0af7 100644 (file)
@@ -40,7 +40,7 @@ static void
 _ecore_evas_msg_parent_handle(Ecore_Evas *ee, int msg_domain, int msg_id, void *data, int size)
 {
     callback_counter++;
-    if (size ==  strlen(msg_data) && strcmp(data,msg_data) == 0)
+    if (size ==  strlen(msg_data) && strncmp(msg_data, data, size) == 0)
       {
          callback_msg = EINA_TRUE;
       }
index 180d5628a9b5c7b8e5f99ad9e3b7614608758422..9080c64c6a51a494464cee24a3c9f18a66719349 100644 (file)
@@ -40,7 +40,7 @@ static void
 _ecore_evas_msg_parent_handle(Ecore_Evas *ee, int msg_domain, int msg_id, void *data, int size)
 {
     callback_counter++;
-    if (size ==  strlen(msg_data) && strcmp(data,msg_data) == 0)
+    if (size ==  strlen(msg_data) && strncmp(msg_data, data, size) == 0)
       {
          callback_msg = EINA_TRUE;
       }
index c2e967e4bd6202da6ac266eae024df037ab26b0e..24ec56965b8cf9e302e14b7d6d47dbe3ebe06b51 100644 (file)
@@ -40,7 +40,7 @@ static void
 _ecore_evas_msg_handle(Ecore_Evas *ee, int msg_domain, int msg_id, void *data, int size)
 {
     callback_counter++;
-    if (size ==  strlen(msg_data) && strcmp(data,msg_data) == 0)
+    if (size ==  strlen(msg_data) && strncmp(msg_data,data,size) == 0)
       {
          callback_msg = EINA_TRUE;
       }