From 542380a13f178d97851751b57054a6b5be555d1c Mon Sep 17 00:00:00 2001 From: Jens Rehsack Date: Thu, 13 Aug 2020 16:16:44 +0200 Subject: [PATCH 2/2] test/test_x509.c: fix potential overflow issue Instead of doing a memcpy() which does static overflow checking, use snprintf() for string copying which does the check dynamically. Fixes: | In file included from .../recipe-sysroot/usr/include/string.h:519, | from test/test_x509.c:27: | In function 'memcpy', | inlined from 'parse_keyvalue' at test/test_x509.c:845:2, | inlined from 'process_conf_file' at test/test_x509.c:1360:7, | inlined from 'main' at test/test_x509.c:2038:2: | .../recipe-sysroot/usr/include/bits/string_fortified.h:34:10: warning: '__builtin_memcpy' specified bound 4294967295 exceeds maximum object size 2147483647 [-Wstringop-overflow=] | 34 | return __builtin___memcpy_chk (__dest, __src, __len, __bos0 (__dest)); | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Signed-off-by: Jens Rehsack --- Upstream-Status: Pending test/test_x509.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/test/test_x509.c b/test/test_x509.c index 2c61cf5..76f6ab9 100644 --- a/test/test_x509.c +++ b/test/test_x509.c @@ -842,8 +842,7 @@ parse_keyvalue(HT *d) return -1; } name = xmalloc(u + 1); - memcpy(name, buf, u); - name[u] = 0; + snprintf(name, u, "%s", buf); if (HT_get(d, name) != NULL) { xfree(name); return -1; -- 2.17.1