From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jerin Jacob Subject: [PATCH v2 1/2] app/crypto-perf: use strcpy for allocated string Date: Wed, 16 May 2018 17:58:03 +0530 Message-ID: <20180516122804.535-1-jerin.jacob@caviumnetworks.com> References: <20180516063955.6193-1-jerin.jacob@caviumnetworks.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: pablo.de.lara.guarch@intel.com, thomas@monjalon.net, Jerin Jacob , declan.doherty@intel.com, andy@warmcat.com, stable@dpdk.org To: dev@dpdk.org Return-path: In-Reply-To: <20180516063955.6193-1-jerin.jacob@caviumnetworks.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" inlined from ‘cperf_test_vector_get_from_file’ at ../app/test-crypto-perf/cperf_test_vector_parsing.c:578:11: ../app/test-crypto-perf/cperf_test_vector_parsing.c:510:3: error: ‘strncpy’ output truncated before terminating nul copying as many bytes from a string as its length [-Werror=stringop-truncation] strncpy(entry, line, strlen(line)); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../app/test-crypto-perf/cperf_test_vector_parsing.c:528:5: error: ‘strncat’ output truncated before terminating nul copying as many bytes from a string as its length [-Werror=stringop-truncation] strncat(entry, line, strlen(line)); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Found this issue with meson build and gcc 8.1. Fixes: f8be1786b1b8 ("app/crypto-perf: introduce performance test application") Cc: declan.doherty@intel.com Cc: andy@warmcat.com Cc: stable@dpdk.org Signed-off-by: Jerin Jacob Acked-by: Pablo de Lara --- v2: - No change --- app/test-crypto-perf/cperf_test_vector_parsing.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/app/test-crypto-perf/cperf_test_vector_parsing.c b/app/test-crypto-perf/cperf_test_vector_parsing.c index 26321d004..92932a230 100644 --- a/app/test-crypto-perf/cperf_test_vector_parsing.c +++ b/app/test-crypto-perf/cperf_test_vector_parsing.c @@ -506,8 +506,7 @@ parse_file(struct cperf_test_vector *vector, struct cperf_options *opts) if (entry == NULL) return -1; - memset(entry, 0, strlen(line) + 1); - strncpy(entry, line, strlen(line)); + strcpy(entry, line); /* check if entry ends with , or = */ if (entry[strlen(entry) - 1] == ',' @@ -524,8 +523,8 @@ parse_file(struct cperf_test_vector *vector, struct cperf_options *opts) if (entry_extended == NULL) goto err; entry = entry_extended; - - strncat(entry, line, strlen(line)); + /* entry has been allocated accordingly */ + strcpy(&entry[strlen(entry)], line); if (entry[strlen(entry) - 1] != ',') break; -- 2.17.0