summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHe Zhe <zhe.he@windriver.com>2018-08-22 17:52:41 -0700
committerYongseok Koh <yskoh@mellanox.com>2018-08-22 17:52:41 -0700
commit94e5b7f6417f8fcb7fc8a6f2ccbb579af87c2967 (patch)
tree729a6c18bb88ec690ecf918f60fd0a5068d5ba0f
parent4e659a71001ad6cc32093807fdd455aa28bb0eea (diff)
downloaddpdk-stable-94e5b7f6417f8fcb7fc8a6f2ccbb579af87c2967.zip
dpdk-stable-94e5b7f6417f8fcb7fc8a6f2ccbb579af87c2967.tar.gz
dpdk-stable-94e5b7f6417f8fcb7fc8a6f2ccbb579af87c2967.tar.xz
examples: fix strncpy error for GCC8
GCC 8 adds -Wstringop-truncation. If -Werror=stringop-truncation is enabled. We will meet errors like the following: examples/vhost_scsi/scsi.c:213:4: error: 'strncpy' output may be truncated copying 32 bytes from a string of length 63 [-Werror=stringop-truncation] | strncpy((char *)vpage->params, bdev->name, 32); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Signed-off-by: He Zhe <zhe.he@windriver.com>
-rw-r--r--examples/ip_pipeline/config_parse_tm.c2
-rw-r--r--examples/ipsec-secgw/parser.c2
-rw-r--r--examples/vhost_scsi/scsi.c6
3 files changed, 5 insertions, 5 deletions
diff --git a/examples/ip_pipeline/config_parse_tm.c b/examples/ip_pipeline/config_parse_tm.c
index e75eed7..1c945c9 100644
--- a/examples/ip_pipeline/config_parse_tm.c
+++ b/examples/ip_pipeline/config_parse_tm.c
@@ -352,7 +352,7 @@ tm_cfgfile_load_sched_subport(
char name[CFG_NAME_LEN + 1];
profile = atoi(entries[j].value);
- strncpy(name,
+ memcpy(name,
entries[j].name,
sizeof(name));
n_tokens = rte_strsplit(
diff --git a/examples/ipsec-secgw/parser.c b/examples/ipsec-secgw/parser.c
index 9d0ea46..e0881b7 100644
--- a/examples/ipsec-secgw/parser.c
+++ b/examples/ipsec-secgw/parser.c
@@ -544,7 +544,7 @@ parse_cfg_file(const char *cfg_filename)
goto error_exit;
}
- strncpy(str + strlen(str), oneline,
+ memcpy(str + strlen(str), oneline,
strlen(oneline));
continue;
diff --git a/examples/vhost_scsi/scsi.c b/examples/vhost_scsi/scsi.c
index fd430ec..47c5c83 100644
--- a/examples/vhost_scsi/scsi.c
+++ b/examples/vhost_scsi/scsi.c
@@ -210,7 +210,7 @@ vhost_bdev_scsi_inquiry_command(struct vhost_block_dev *bdev,
break;
case SPC_VPD_UNIT_SERIAL_NUMBER:
hlen = 4;
- strncpy((char *)vpage->params, bdev->name, 32);
+ memcpy((char *)vpage->params, bdev->name, 32);
vpage->alloc_len = rte_cpu_to_be_16(32);
break;
case SPC_VPD_DEVICE_IDENTIFICATION:
@@ -247,7 +247,7 @@ vhost_bdev_scsi_inquiry_command(struct vhost_block_dev *bdev,
strncpy((char *)desig->desig, "INTEL", 8);
vhost_strcpy_pad((char *)&desig->desig[8],
bdev->product_name, 16, ' ');
- strncpy((char *)&desig->desig[24], bdev->name, 32);
+ memcpy((char *)&desig->desig[24], bdev->name, 32);
len += sizeof(struct scsi_desig_desc) + 8 + 16 + 32;
buf += sizeof(struct scsi_desig_desc) + desig->len;
@@ -312,7 +312,7 @@ vhost_bdev_scsi_inquiry_command(struct vhost_block_dev *bdev,
bdev->product_name);
/* PRODUCT REVISION LEVEL */
- strncpy((char *)inqdata->product_rev, "0001", 4);
+ memcpy((char *)inqdata->product_rev, "0001", 4);
/* Standard inquiry data ends here. Only populate
* remaining fields if alloc_len indicates enough