cfgfile: replace strcat with strlcat
authorChaitanya Babu Talluri <tallurix.chaitanya.babu@intel.com>
Fri, 8 Mar 2019 12:45:50 +0000 (12:45 +0000)
committerThomas Monjalon <thomas@monjalon.net>
Fri, 5 Apr 2019 12:48:15 +0000 (14:48 +0200)
Replace strcat with strlcat to avoid buffer overflow.

Fixes: a6a47ac9c2 ("cfgfile: rework load function")
Cc: stable@dpdk.org
Signed-off-by: Chaitanya Babu Talluri <tallurix.chaitanya.babu@intel.com>
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
lib/librte_cfgfile/rte_cfgfile.c

index 6110dba..f8e7627 100644 (file)
@@ -224,10 +224,11 @@ rte_cfgfile_load_with_params(const char *filename, int flags,
                        _strip(split[1], strlen(split[1]));
                        char *end = memchr(split[1], '\\', strlen(split[1]));
 
+                       size_t split_len = strlen(split[1]) + 1;
                        while (end != NULL) {
                                if (*(end+1) == params->comment_character) {
                                        *end = '\0';
-                                       strcat(split[1], end+1);
+                                       strlcat(split[1], end+1, split_len);
                                } else
                                        end++;
                                end = memchr(end, '\\', strlen(end));