From dcb02c1639c2ff05938c01eaa41286a2e2f8d698 Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine Date: Sun, 20 Jan 2019 20:04:13 +0100 Subject: [PATCH] apps/kcapi-hasher.c: fix build with gcc 8.2.x Fixes: - http://autobuild.buildroot.org/results/8355bc42238e885f7f11ed3d9d37fc55ebdead2b Signed-off-by: Fabrice Fontaine [Upstream status: https://github.com/smuellerDD/libkcapi/pull/76] --- apps/kcapi-hasher.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/apps/kcapi-hasher.c b/apps/kcapi-hasher.c index d6be685..7172b12 100644 --- a/apps/kcapi-hasher.c +++ b/apps/kcapi-hasher.c @@ -357,16 +357,20 @@ out: } /* - * GCC v8.1.0 introduced -Wstringop-truncation but it is not smart enough to - * find that cursor string will be NULL-terminated after all paste() calls and - * warns with: + * GCC v8.1.0 introduced -Wstringop-truncation and GCC v8.2.0 introduced + * -Wstringop-overflow but it is not smart enough to find that cursor string + * will be NULL-terminated after all paste() calls and warns with: * error: 'strncpy' destination unchanged after copying no bytes [-Werror=stringop-truncation] * error: 'strncpy' output truncated before terminating nul copying 5 bytes from a string of the same length [-Werror=stringop-truncation] + * error: 'strncpy' specified bound depends on the length of the source argument [-Werror=stringop-overflow=] */ #pragma GCC diagnostic push #if GCC_VERSION >= 80100 #pragma GCC diagnostic ignored "-Wstringop-truncation" #endif +#if GCC_VERSION >= 80200 +#pragma GCC diagnostic ignored "-Wstringop-overflow" +#endif static char *paste(char *dst, const char *src, size_t size) { strncpy(dst, src, size); @@ -417,7 +421,7 @@ static char *get_hmac_file(const char *filename, const char *checkdir) strncpy(cursor, "\0", 1); return checkfile; } -#pragma GCC diagnostic pop /* -Wstringop-truncation */ +#pragma GCC diagnostic pop /* -Wstringop-truncation -Wstringop-overflow */ static int hash_files(const struct hash_params *params, char *filenames[], uint32_t files, -- 2.14.1