From: Jian Yu Date: Wed, 9 Oct 2019 21:30:49 +0000 (-0700) Subject: LU-12844 lnet: fix strncpy bound error X-Git-Tag: 2.12.90~31 X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=commitdiff_plain;h=cebda7a478f9943f10b9a3388377c61a54957a87 LU-12844 lnet: fix strncpy bound error This patch fixes the following error while using gcc 8: liblnetconfig.c: In function ‘lustre_lnet_parse_nids’: liblnetconfig.c:320:3: error: ‘strncpy’ specified bound depends on the length of the source argument [-Werror=stringop-overflow=] strncpy(entry, cur, len - 1); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ liblnetconfig.c:310:10: note: length computed here len = strlen(cur) + 1; ^~~~~~~~~~~ cc1: all warnings being treated as errors Change-Id: I2d5840fd58c7b7d27ef1b2aa12f1f187d30abbfd Signed-off-by: Jian Yu Reviewed-on: https://review.whamcloud.com/36417 Tested-by: jenkins Reviewed-by: Andreas Dilger Reviewed-by: Amir Shehata Tested-by: Maloo Reviewed-by: James Simmons --- diff --git a/lnet/utils/lnetconfig/liblnetconfig.c b/lnet/utils/lnetconfig/liblnetconfig.c index 23612c8..5a50b21 100644 --- a/lnet/utils/lnetconfig/liblnetconfig.c +++ b/lnet/utils/lnetconfig/liblnetconfig.c @@ -317,7 +317,7 @@ int lustre_lnet_parse_nids(char *nids, char **array, int size, finish = i > 0 ? i - 1: 0; goto failed; } - strncpy(entry, cur, len - 1); + memcpy(entry, cur, len - 1); entry[len] = '\0'; new_array[i] = entry; if (comma) {