lib: fix strcat with equivalent logic
Checks
Commit Message
Replace strcat with concatenation logic 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>
---
lib/librte_cfgfile/rte_cfgfile.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
@@ -227,7 +227,15 @@ rte_cfgfile_load_with_params(const char *filename, int flags,
while (end != NULL) {
if (*(end+1) == params->comment_character) {
*end = '\0';
- strcat(split[1], end+1);
+ int index = strlen(split[1]);
+ char *temp = end+1;
+ while (*temp != '\0') {
+ split[1][index] = *temp;
+ index++;
+ temp++;
+ }
+ split[1][index] = '\0';
+
} else
end++;
end = memchr(end, '\\', strlen(end));