Add terminating null characters after calling strncpy() 06/197506/3
authorŁukasz Stelmach <l.stelmach@samsung.com>
Wed, 9 Jan 2019 15:06:56 +0000 (16:06 +0100)
committerŁukasz Stelmach <l.stelmach@samsung.com>
Fri, 22 Feb 2019 13:35:23 +0000 (14:35 +0100)
Change-Id: Icf736b174615ee2ac1be2338773d2ae168a08e73

src/common/procfs.c
src/proc-usage/proc-usage-application.c
src/proc-usage/proc-usage-application.h

index d3522ec688b83a63af38b468e63198380eff5fe4..12698cb9a411e24f554874744cc8b0c3b902be03 100644 (file)
@@ -362,6 +362,7 @@ API int procfs_get_pid_basename(pid_t pid, size_t size, char *bname)
        }
 
        strncpy(bname, basename(buf), size - 1);
+       bname[size - 1] = '\0';
 
        fclose(fp);
        return 0;
@@ -391,6 +392,7 @@ API int procfs_get_pid_label(pid_t pid, size_t size, char *label)
        }
 
        strncpy(label, buf, size - 1);
+       label[size - 1] = '\0';
 
        fclose(fp);
        return 0;
index ec0288a9a6070f851d4d4d09cd41fbe915a6b37f..16a30d27afcf995ac087f290a35a10c91b76a9a4 100644 (file)
@@ -96,7 +96,8 @@ int proc_usage_application_get_list(GSList **applist)
                        return -ENOMEM;
                }
 
-               strncpy(pua->appid, label + 11, NAME_MAX);
+               strncpy(pua->appid, label + 11, sizeof(pua->appid) - 1);
+               pua->appid[sizeof(pua->appid) - 1] = '\0';
                pua->pid = pid;
 
                *applist = g_slist_prepend(*applist, pua);
index 9b65a50f45604e13c99ee7a7ea6b088a9b32dee4..47ca50bb1026b90ea94da22e17489bc9db58a8f8 100644 (file)
@@ -27,7 +27,7 @@
 #include <glib.h>
 
 struct proc_usage_application {
-       char appid[NAME_MAX];
+       char appid[NAME_MAX + 1];
        pid_t pid;
 };