test: Remove all uses of strncpy
strncpy is going to be added to the list of banned functions because it does not guarantee strings are null terminated. Change-Id: I73adb5d3eea5c95ea705c67de4fc967e926eb6ce Signed-off-by: Ben Walker <benjamin.walker@intel.com> Reviewed-on: https://review.gerrithub.io/407025 Tested-by: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com>
This commit is contained in:
parent
453c804d1b
commit
931b7d1f85
@ -495,7 +495,7 @@ blob_thin_provision(void)
|
|||||||
|
|
||||||
dev = init_dev();
|
dev = init_dev();
|
||||||
spdk_bs_opts_init(&bs_opts);
|
spdk_bs_opts_init(&bs_opts);
|
||||||
strncpy(bs_opts.bstype.bstype, "TESTTYPE", SPDK_BLOBSTORE_TYPE_LENGTH);
|
snprintf(bs_opts.bstype.bstype, sizeof(bs_opts.bstype.bstype), "TESTTYPE");
|
||||||
|
|
||||||
/* Initialize a new blob store */
|
/* Initialize a new blob store */
|
||||||
spdk_bs_init(dev, &bs_opts, bs_op_with_handle_complete, NULL);
|
spdk_bs_init(dev, &bs_opts, bs_op_with_handle_complete, NULL);
|
||||||
@ -530,7 +530,7 @@ blob_thin_provision(void)
|
|||||||
|
|
||||||
/* Load an existing blob store and check if invalid_flags is set */
|
/* Load an existing blob store and check if invalid_flags is set */
|
||||||
dev = init_dev();
|
dev = init_dev();
|
||||||
strncpy(bs_opts.bstype.bstype, "TESTTYPE", SPDK_BLOBSTORE_TYPE_LENGTH);
|
snprintf(bs_opts.bstype.bstype, sizeof(bs_opts.bstype.bstype), "TESTTYPE");
|
||||||
spdk_bs_load(dev, &bs_opts, bs_op_with_handle_complete, NULL);
|
spdk_bs_load(dev, &bs_opts, bs_op_with_handle_complete, NULL);
|
||||||
CU_ASSERT(g_bserrno == 0);
|
CU_ASSERT(g_bserrno == 0);
|
||||||
SPDK_CU_ASSERT_FATAL(g_bs != NULL);
|
SPDK_CU_ASSERT_FATAL(g_bs != NULL);
|
||||||
@ -920,7 +920,7 @@ blob_read_only(void)
|
|||||||
|
|
||||||
dev = init_dev();
|
dev = init_dev();
|
||||||
spdk_bs_opts_init(&opts);
|
spdk_bs_opts_init(&opts);
|
||||||
strncpy(opts.bstype.bstype, "TESTTYPE", SPDK_BLOBSTORE_TYPE_LENGTH);
|
snprintf(opts.bstype.bstype, sizeof(opts.bstype.bstype), "TESTTYPE");
|
||||||
|
|
||||||
spdk_bs_init(dev, &opts, bs_op_with_handle_complete, NULL);
|
spdk_bs_init(dev, &opts, bs_op_with_handle_complete, NULL);
|
||||||
CU_ASSERT(g_bserrno == 0);
|
CU_ASSERT(g_bserrno == 0);
|
||||||
@ -972,7 +972,7 @@ blob_read_only(void)
|
|||||||
|
|
||||||
/* Load an existing blob store */
|
/* Load an existing blob store */
|
||||||
dev = init_dev();
|
dev = init_dev();
|
||||||
strncpy(opts.bstype.bstype, "TESTTYPE", SPDK_BLOBSTORE_TYPE_LENGTH);
|
snprintf(opts.bstype.bstype, sizeof(opts.bstype.bstype), "TESTTYPE");
|
||||||
spdk_bs_load(dev, &opts, bs_op_with_handle_complete, NULL);
|
spdk_bs_load(dev, &opts, bs_op_with_handle_complete, NULL);
|
||||||
CU_ASSERT(g_bserrno == 0);
|
CU_ASSERT(g_bserrno == 0);
|
||||||
SPDK_CU_ASSERT_FATAL(g_bs != NULL);
|
SPDK_CU_ASSERT_FATAL(g_bs != NULL);
|
||||||
@ -1731,7 +1731,7 @@ bs_load(void)
|
|||||||
|
|
||||||
dev = init_dev();
|
dev = init_dev();
|
||||||
spdk_bs_opts_init(&opts);
|
spdk_bs_opts_init(&opts);
|
||||||
strncpy(opts.bstype.bstype, "TESTTYPE", SPDK_BLOBSTORE_TYPE_LENGTH);
|
snprintf(opts.bstype.bstype, sizeof(opts.bstype.bstype), "TESTTYPE");
|
||||||
|
|
||||||
/* Initialize a new blob store */
|
/* Initialize a new blob store */
|
||||||
spdk_bs_init(dev, &opts, bs_op_with_handle_complete, NULL);
|
spdk_bs_init(dev, &opts, bs_op_with_handle_complete, NULL);
|
||||||
@ -1810,7 +1810,7 @@ bs_load(void)
|
|||||||
/* Load an existing blob store */
|
/* Load an existing blob store */
|
||||||
dev = init_dev();
|
dev = init_dev();
|
||||||
spdk_bs_opts_init(&opts);
|
spdk_bs_opts_init(&opts);
|
||||||
strncpy(opts.bstype.bstype, "TESTTYPE", SPDK_BLOBSTORE_TYPE_LENGTH);
|
snprintf(opts.bstype.bstype, sizeof(opts.bstype.bstype), "TESTTYPE");
|
||||||
spdk_bs_load(dev, &opts, bs_op_with_handle_complete, NULL);
|
spdk_bs_load(dev, &opts, bs_op_with_handle_complete, NULL);
|
||||||
CU_ASSERT(g_bserrno == 0);
|
CU_ASSERT(g_bserrno == 0);
|
||||||
SPDK_CU_ASSERT_FATAL(g_bs != NULL);
|
SPDK_CU_ASSERT_FATAL(g_bs != NULL);
|
||||||
@ -1855,7 +1855,7 @@ bs_type(void)
|
|||||||
|
|
||||||
dev = init_dev();
|
dev = init_dev();
|
||||||
spdk_bs_opts_init(&opts);
|
spdk_bs_opts_init(&opts);
|
||||||
strncpy(opts.bstype.bstype, "TESTTYPE", SPDK_BLOBSTORE_TYPE_LENGTH);
|
snprintf(opts.bstype.bstype, sizeof(opts.bstype.bstype), "TESTTYPE");
|
||||||
|
|
||||||
/* Initialize a new blob store */
|
/* Initialize a new blob store */
|
||||||
spdk_bs_init(dev, &opts, bs_op_with_handle_complete, NULL);
|
spdk_bs_init(dev, &opts, bs_op_with_handle_complete, NULL);
|
||||||
@ -1871,13 +1871,13 @@ bs_type(void)
|
|||||||
|
|
||||||
/* Load non existing blobstore type */
|
/* Load non existing blobstore type */
|
||||||
dev = init_dev();
|
dev = init_dev();
|
||||||
strncpy(opts.bstype.bstype, "NONEXISTING", SPDK_BLOBSTORE_TYPE_LENGTH);
|
snprintf(opts.bstype.bstype, sizeof(opts.bstype.bstype), "NONEXISTING");
|
||||||
spdk_bs_load(dev, &opts, bs_op_with_handle_complete, NULL);
|
spdk_bs_load(dev, &opts, bs_op_with_handle_complete, NULL);
|
||||||
CU_ASSERT(g_bserrno != 0);
|
CU_ASSERT(g_bserrno != 0);
|
||||||
|
|
||||||
/* Load with empty blobstore type */
|
/* Load with empty blobstore type */
|
||||||
dev = init_dev();
|
dev = init_dev();
|
||||||
strncpy(opts.bstype.bstype, "", SPDK_BLOBSTORE_TYPE_LENGTH);
|
memset(opts.bstype.bstype, 0, sizeof(opts.bstype.bstype));
|
||||||
spdk_bs_load(dev, &opts, bs_op_with_handle_complete, NULL);
|
spdk_bs_load(dev, &opts, bs_op_with_handle_complete, NULL);
|
||||||
CU_ASSERT(g_bserrno == 0);
|
CU_ASSERT(g_bserrno == 0);
|
||||||
|
|
||||||
@ -1887,7 +1887,7 @@ bs_type(void)
|
|||||||
|
|
||||||
/* Initialize a new blob store with empty bstype */
|
/* Initialize a new blob store with empty bstype */
|
||||||
dev = init_dev();
|
dev = init_dev();
|
||||||
strncpy(opts.bstype.bstype, "", SPDK_BLOBSTORE_TYPE_LENGTH);
|
memset(opts.bstype.bstype, 0, sizeof(opts.bstype.bstype));
|
||||||
spdk_bs_init(dev, NULL, bs_op_with_handle_complete, NULL);
|
spdk_bs_init(dev, NULL, bs_op_with_handle_complete, NULL);
|
||||||
CU_ASSERT(g_bserrno == 0);
|
CU_ASSERT(g_bserrno == 0);
|
||||||
SPDK_CU_ASSERT_FATAL(g_bs != NULL);
|
SPDK_CU_ASSERT_FATAL(g_bs != NULL);
|
||||||
@ -1898,13 +1898,13 @@ bs_type(void)
|
|||||||
|
|
||||||
/* Load non existing blobstore type */
|
/* Load non existing blobstore type */
|
||||||
dev = init_dev();
|
dev = init_dev();
|
||||||
strncpy(opts.bstype.bstype, "NONEXISTING", SPDK_BLOBSTORE_TYPE_LENGTH);
|
snprintf(opts.bstype.bstype, sizeof(opts.bstype.bstype), "NONEXISTING");
|
||||||
spdk_bs_load(dev, &opts, bs_op_with_handle_complete, NULL);
|
spdk_bs_load(dev, &opts, bs_op_with_handle_complete, NULL);
|
||||||
CU_ASSERT(g_bserrno != 0);
|
CU_ASSERT(g_bserrno != 0);
|
||||||
|
|
||||||
/* Load with empty blobstore type */
|
/* Load with empty blobstore type */
|
||||||
dev = init_dev();
|
dev = init_dev();
|
||||||
strncpy(opts.bstype.bstype, "", SPDK_BLOBSTORE_TYPE_LENGTH);
|
memset(opts.bstype.bstype, 0, sizeof(opts.bstype.bstype));
|
||||||
spdk_bs_load(dev, &opts, bs_op_with_handle_complete, NULL);
|
spdk_bs_load(dev, &opts, bs_op_with_handle_complete, NULL);
|
||||||
CU_ASSERT(g_bserrno == 0);
|
CU_ASSERT(g_bserrno == 0);
|
||||||
|
|
||||||
@ -1923,7 +1923,7 @@ bs_super_block(void)
|
|||||||
|
|
||||||
dev = init_dev();
|
dev = init_dev();
|
||||||
spdk_bs_opts_init(&opts);
|
spdk_bs_opts_init(&opts);
|
||||||
strncpy(opts.bstype.bstype, "TESTTYPE", SPDK_BLOBSTORE_TYPE_LENGTH);
|
snprintf(opts.bstype.bstype, sizeof(opts.bstype.bstype), "TESTTYPE");
|
||||||
|
|
||||||
/* Initialize a new blob store */
|
/* Initialize a new blob store */
|
||||||
spdk_bs_init(dev, &opts, bs_op_with_handle_complete, NULL);
|
spdk_bs_init(dev, &opts, bs_op_with_handle_complete, NULL);
|
||||||
@ -1942,14 +1942,14 @@ bs_super_block(void)
|
|||||||
super_block->version++;
|
super_block->version++;
|
||||||
|
|
||||||
dev = init_dev();
|
dev = init_dev();
|
||||||
strncpy(opts.bstype.bstype, "", SPDK_BLOBSTORE_TYPE_LENGTH);
|
memset(opts.bstype.bstype, 0, sizeof(opts.bstype.bstype));
|
||||||
spdk_bs_load(dev, &opts, bs_op_with_handle_complete, NULL);
|
spdk_bs_load(dev, &opts, bs_op_with_handle_complete, NULL);
|
||||||
CU_ASSERT(g_bserrno != 0);
|
CU_ASSERT(g_bserrno != 0);
|
||||||
|
|
||||||
/* Create a new blob store with super block version 1 */
|
/* Create a new blob store with super block version 1 */
|
||||||
dev = init_dev();
|
dev = init_dev();
|
||||||
super_block_v1.version = 1;
|
super_block_v1.version = 1;
|
||||||
strncpy(super_block_v1.signature, "SPDKBLOB", sizeof(super_block_v1.signature));
|
memcpy(super_block_v1.signature, "SPDKBLOB", sizeof(super_block_v1.signature));
|
||||||
super_block_v1.length = 0x1000;
|
super_block_v1.length = 0x1000;
|
||||||
super_block_v1.clean = 1;
|
super_block_v1.clean = 1;
|
||||||
super_block_v1.super_blob = 0xFFFFFFFFFFFFFFFF;
|
super_block_v1.super_blob = 0xFFFFFFFFFFFFFFFF;
|
||||||
@ -1964,7 +1964,7 @@ bs_super_block(void)
|
|||||||
super_block_v1.crc = _spdk_blob_md_page_calc_crc(&super_block_v1);
|
super_block_v1.crc = _spdk_blob_md_page_calc_crc(&super_block_v1);
|
||||||
memcpy(g_dev_buffer, &super_block_v1, sizeof(struct spdk_bs_super_block_ver1));
|
memcpy(g_dev_buffer, &super_block_v1, sizeof(struct spdk_bs_super_block_ver1));
|
||||||
|
|
||||||
strncpy(opts.bstype.bstype, "", SPDK_BLOBSTORE_TYPE_LENGTH);
|
memset(opts.bstype.bstype, 0, sizeof(opts.bstype.bstype));
|
||||||
spdk_bs_load(dev, &opts, bs_op_with_handle_complete, NULL);
|
spdk_bs_load(dev, &opts, bs_op_with_handle_complete, NULL);
|
||||||
CU_ASSERT(g_bserrno == 0);
|
CU_ASSERT(g_bserrno == 0);
|
||||||
|
|
||||||
@ -3480,7 +3480,7 @@ bs_load_iter(void)
|
|||||||
|
|
||||||
dev = init_dev();
|
dev = init_dev();
|
||||||
spdk_bs_opts_init(&opts);
|
spdk_bs_opts_init(&opts);
|
||||||
strncpy(opts.bstype.bstype, "TESTTYPE", SPDK_BLOBSTORE_TYPE_LENGTH);
|
snprintf(opts.bstype.bstype, sizeof(opts.bstype.bstype), "TESTTYPE");
|
||||||
|
|
||||||
/* Initialize a new blob store */
|
/* Initialize a new blob store */
|
||||||
spdk_bs_init(dev, &opts, bs_op_with_handle_complete, NULL);
|
spdk_bs_init(dev, &opts, bs_op_with_handle_complete, NULL);
|
||||||
@ -3520,7 +3520,7 @@ bs_load_iter(void)
|
|||||||
|
|
||||||
dev = init_dev();
|
dev = init_dev();
|
||||||
spdk_bs_opts_init(&opts);
|
spdk_bs_opts_init(&opts);
|
||||||
strncpy(opts.bstype.bstype, "TESTTYPE", SPDK_BLOBSTORE_TYPE_LENGTH);
|
snprintf(opts.bstype.bstype, sizeof(opts.bstype.bstype), "TESTTYPE");
|
||||||
opts.iter_cb_fn = test_iter;
|
opts.iter_cb_fn = test_iter;
|
||||||
opts.iter_cb_arg = &iter_ctx;
|
opts.iter_cb_arg = &iter_ctx;
|
||||||
|
|
||||||
@ -3534,7 +3534,7 @@ bs_load_iter(void)
|
|||||||
|
|
||||||
dev = init_dev();
|
dev = init_dev();
|
||||||
spdk_bs_opts_init(&opts);
|
spdk_bs_opts_init(&opts);
|
||||||
strncpy(opts.bstype.bstype, "TESTTYPE", SPDK_BLOBSTORE_TYPE_LENGTH);
|
snprintf(opts.bstype.bstype, sizeof(opts.bstype.bstype), "TESTTYPE");
|
||||||
opts.iter_cb_fn = test_iter;
|
opts.iter_cb_fn = test_iter;
|
||||||
iter_ctx.current_iter = 0;
|
iter_ctx.current_iter = 0;
|
||||||
opts.iter_cb_arg = &iter_ctx;
|
opts.iter_cb_arg = &iter_ctx;
|
||||||
|
@ -388,7 +388,7 @@ node_access_allowed(void)
|
|||||||
TAILQ_INIT(&tgtnode.pg_map_head);
|
TAILQ_INIT(&tgtnode.pg_map_head);
|
||||||
|
|
||||||
memset(&scsi_dev, 0, sizeof(struct spdk_scsi_dev));
|
memset(&scsi_dev, 0, sizeof(struct spdk_scsi_dev));
|
||||||
strncpy(scsi_dev.name, "iqn.2017-10.spdk.io:0001", SPDK_SCSI_DEV_MAX_NAME);
|
snprintf(scsi_dev.name, sizeof(scsi_dev.name), "iqn.2017-10.spdk.io:0001");
|
||||||
tgtnode.dev = &scsi_dev;
|
tgtnode.dev = &scsi_dev;
|
||||||
|
|
||||||
pg_map = spdk_iscsi_tgt_node_add_pg_map(&tgtnode, &pg);
|
pg_map = spdk_iscsi_tgt_node_add_pg_map(&tgtnode, &pg);
|
||||||
@ -450,7 +450,7 @@ node_access_denied_by_empty_netmask(void)
|
|||||||
TAILQ_INIT(&tgtnode.pg_map_head);
|
TAILQ_INIT(&tgtnode.pg_map_head);
|
||||||
|
|
||||||
memset(&scsi_dev, 0, sizeof(struct spdk_scsi_dev));
|
memset(&scsi_dev, 0, sizeof(struct spdk_scsi_dev));
|
||||||
strncpy(scsi_dev.name, "iqn.2017-10.spdk.io:0001", SPDK_SCSI_DEV_MAX_NAME);
|
snprintf(scsi_dev.name, sizeof(scsi_dev.name), "iqn.2017-10.spdk.io:0001");
|
||||||
tgtnode.dev = &scsi_dev;
|
tgtnode.dev = &scsi_dev;
|
||||||
|
|
||||||
pg_map = spdk_iscsi_tgt_node_add_pg_map(&tgtnode, &pg);
|
pg_map = spdk_iscsi_tgt_node_add_pg_map(&tgtnode, &pg);
|
||||||
@ -503,7 +503,7 @@ node_access_multi_initiator_groups_cases(void)
|
|||||||
TAILQ_INIT(&tgtnode.pg_map_head);
|
TAILQ_INIT(&tgtnode.pg_map_head);
|
||||||
|
|
||||||
memset(&scsi_dev, 0, sizeof(struct spdk_scsi_dev));
|
memset(&scsi_dev, 0, sizeof(struct spdk_scsi_dev));
|
||||||
strncpy(scsi_dev.name, IQN1, SPDK_SCSI_DEV_MAX_NAME);
|
snprintf(scsi_dev.name, sizeof(scsi_dev.name), IQN1);
|
||||||
tgtnode.dev = &scsi_dev;
|
tgtnode.dev = &scsi_dev;
|
||||||
|
|
||||||
/* initiator group initialization */
|
/* initiator group initialization */
|
||||||
@ -753,7 +753,7 @@ allow_iscsi_name_multi_maps_case(void)
|
|||||||
TAILQ_INIT(&tgtnode.pg_map_head);
|
TAILQ_INIT(&tgtnode.pg_map_head);
|
||||||
|
|
||||||
memset(&scsi_dev, 0, sizeof(struct spdk_scsi_dev));
|
memset(&scsi_dev, 0, sizeof(struct spdk_scsi_dev));
|
||||||
strncpy(scsi_dev.name, IQN1, SPDK_SCSI_DEV_MAX_NAME);
|
snprintf(scsi_dev.name, sizeof(scsi_dev.name), IQN1);
|
||||||
tgtnode.dev = &scsi_dev;
|
tgtnode.dev = &scsi_dev;
|
||||||
|
|
||||||
/* initiator group initialization */
|
/* initiator group initialization */
|
||||||
|
@ -283,8 +283,8 @@ test_connect(void)
|
|||||||
memset(&connect_data, 0, sizeof(connect_data));
|
memset(&connect_data, 0, sizeof(connect_data));
|
||||||
memcpy(connect_data.hostid, hostid, sizeof(hostid));
|
memcpy(connect_data.hostid, hostid, sizeof(hostid));
|
||||||
connect_data.cntlid = 0xFFFF;
|
connect_data.cntlid = 0xFFFF;
|
||||||
strncpy(connect_data.subnqn, subnqn, sizeof(connect_data.subnqn));
|
snprintf(connect_data.subnqn, sizeof(connect_data.subnqn), "%s", subnqn);
|
||||||
strncpy(connect_data.hostnqn, hostnqn, sizeof(connect_data.hostnqn));
|
snprintf(connect_data.hostnqn, sizeof(connect_data.hostnqn), "%s", hostnqn);
|
||||||
|
|
||||||
memset(&subsystem, 0, sizeof(subsystem));
|
memset(&subsystem, 0, sizeof(subsystem));
|
||||||
subsystem.id = 1;
|
subsystem.id = 1;
|
||||||
@ -353,7 +353,7 @@ test_connect(void)
|
|||||||
CU_ASSERT(rsp.connect_rsp.status_code_specific.invalid.iattr == 1);
|
CU_ASSERT(rsp.connect_rsp.status_code_specific.invalid.iattr == 1);
|
||||||
CU_ASSERT(rsp.connect_rsp.status_code_specific.invalid.ipo == 256);
|
CU_ASSERT(rsp.connect_rsp.status_code_specific.invalid.ipo == 256);
|
||||||
CU_ASSERT(qpair.ctrlr == NULL);
|
CU_ASSERT(qpair.ctrlr == NULL);
|
||||||
strncpy(connect_data.subnqn, subnqn, sizeof(connect_data.subnqn));
|
snprintf(connect_data.subnqn, sizeof(connect_data.subnqn), "%s", subnqn);
|
||||||
|
|
||||||
/* Subsystem not found */
|
/* Subsystem not found */
|
||||||
memset(&rsp, 0, sizeof(rsp));
|
memset(&rsp, 0, sizeof(rsp));
|
||||||
@ -377,7 +377,7 @@ test_connect(void)
|
|||||||
CU_ASSERT(rsp.connect_rsp.status_code_specific.invalid.iattr == 1);
|
CU_ASSERT(rsp.connect_rsp.status_code_specific.invalid.iattr == 1);
|
||||||
CU_ASSERT(rsp.connect_rsp.status_code_specific.invalid.ipo == 512);
|
CU_ASSERT(rsp.connect_rsp.status_code_specific.invalid.ipo == 512);
|
||||||
CU_ASSERT(qpair.ctrlr == NULL);
|
CU_ASSERT(qpair.ctrlr == NULL);
|
||||||
strncpy(connect_data.hostnqn, hostnqn, sizeof(connect_data.hostnqn));
|
snprintf(connect_data.hostnqn, sizeof(connect_data.hostnqn), "%s", hostnqn);
|
||||||
|
|
||||||
/* Host not allowed */
|
/* Host not allowed */
|
||||||
memset(&rsp, 0, sizeof(rsp));
|
memset(&rsp, 0, sizeof(rsp));
|
||||||
|
@ -269,21 +269,21 @@ nvmf_test_create_subsystem(void)
|
|||||||
char nqn[256];
|
char nqn[256];
|
||||||
struct spdk_nvmf_subsystem *subsystem;
|
struct spdk_nvmf_subsystem *subsystem;
|
||||||
|
|
||||||
strncpy(nqn, "nqn.2016-06.io.spdk:subsystem1", sizeof(nqn));
|
snprintf(nqn, sizeof(nqn), "nqn.2016-06.io.spdk:subsystem1");
|
||||||
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||||
SPDK_CU_ASSERT_FATAL(subsystem != NULL);
|
SPDK_CU_ASSERT_FATAL(subsystem != NULL);
|
||||||
CU_ASSERT_STRING_EQUAL(subsystem->subnqn, nqn);
|
CU_ASSERT_STRING_EQUAL(subsystem->subnqn, nqn);
|
||||||
spdk_nvmf_subsystem_destroy(subsystem);
|
spdk_nvmf_subsystem_destroy(subsystem);
|
||||||
|
|
||||||
/* valid name with complex reverse domain */
|
/* valid name with complex reverse domain */
|
||||||
strncpy(nqn, "nqn.2016-06.io.spdk-full--rev-domain.name:subsystem1", sizeof(nqn));
|
snprintf(nqn, sizeof(nqn), "nqn.2016-06.io.spdk-full--rev-domain.name:subsystem1");
|
||||||
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||||
SPDK_CU_ASSERT_FATAL(subsystem != NULL);
|
SPDK_CU_ASSERT_FATAL(subsystem != NULL);
|
||||||
CU_ASSERT_STRING_EQUAL(subsystem->subnqn, nqn);
|
CU_ASSERT_STRING_EQUAL(subsystem->subnqn, nqn);
|
||||||
spdk_nvmf_subsystem_destroy(subsystem);
|
spdk_nvmf_subsystem_destroy(subsystem);
|
||||||
|
|
||||||
/* Valid name discovery controller */
|
/* Valid name discovery controller */
|
||||||
strncpy(nqn, "nqn.2016-06.io.spdk:subsystem1", sizeof(nqn));
|
snprintf(nqn, sizeof(nqn), "nqn.2016-06.io.spdk:subsystem1");
|
||||||
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||||
SPDK_CU_ASSERT_FATAL(subsystem != NULL);
|
SPDK_CU_ASSERT_FATAL(subsystem != NULL);
|
||||||
CU_ASSERT_STRING_EQUAL(subsystem->subnqn, nqn);
|
CU_ASSERT_STRING_EQUAL(subsystem->subnqn, nqn);
|
||||||
@ -291,46 +291,45 @@ nvmf_test_create_subsystem(void)
|
|||||||
|
|
||||||
|
|
||||||
/* Invalid name, no user supplied string */
|
/* Invalid name, no user supplied string */
|
||||||
strncpy(nqn, "nqn.2016-06.io.spdk:", sizeof(nqn));
|
snprintf(nqn, sizeof(nqn), "nqn.2016-06.io.spdk:");
|
||||||
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||||
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
||||||
|
|
||||||
/* Valid name, only contains top-level domain name */
|
/* Valid name, only contains top-level domain name */
|
||||||
strncpy(nqn, "nqn.2016-06.io:subsystem1", sizeof(nqn));
|
snprintf(nqn, sizeof(nqn), "nqn.2016-06.io.spdk:subsystem1");
|
||||||
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||||
SPDK_CU_ASSERT_FATAL(subsystem != NULL);
|
SPDK_CU_ASSERT_FATAL(subsystem != NULL);
|
||||||
CU_ASSERT_STRING_EQUAL(subsystem->subnqn, nqn);
|
CU_ASSERT_STRING_EQUAL(subsystem->subnqn, nqn);
|
||||||
spdk_nvmf_subsystem_destroy(subsystem);
|
spdk_nvmf_subsystem_destroy(subsystem);
|
||||||
|
|
||||||
/* Invalid name, domain label > 63 characters */
|
/* Invalid name, domain label > 63 characters */
|
||||||
strncpy(nqn,
|
snprintf(nqn, sizeof(nqn),
|
||||||
"nqn.2016-06.io.abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz:sub",
|
"nqn.2016-06.io.abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz:sub");
|
||||||
sizeof(nqn));
|
|
||||||
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||||
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
||||||
|
|
||||||
/* Invalid name, domain label starts with digit */
|
/* Invalid name, domain label starts with digit */
|
||||||
strncpy(nqn, "nqn.2016-06.io.3spdk:sub", sizeof(nqn));
|
snprintf(nqn, sizeof(nqn), "nqn.2016-06.io.3spdk:sub");
|
||||||
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||||
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
||||||
|
|
||||||
/* Invalid name, domain label starts with - */
|
/* Invalid name, domain label starts with - */
|
||||||
strncpy(nqn, "nqn.2016-06.io.-spdk:subsystem1", sizeof(nqn));
|
snprintf(nqn, sizeof(nqn), "nqn.2016-06.io.-spdk:subsystem1");
|
||||||
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||||
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
||||||
|
|
||||||
/* Invalid name, domain label ends with - */
|
/* Invalid name, domain label ends with - */
|
||||||
strncpy(nqn, "nqn.2016-06.io.spdk-:subsystem1", sizeof(nqn));
|
snprintf(nqn, sizeof(nqn), "nqn.2016-06.io.spdk-:subsystem1");
|
||||||
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||||
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
||||||
|
|
||||||
/* Invalid name, domain label with multiple consecutive periods */
|
/* Invalid name, domain label with multiple consecutive periods */
|
||||||
strncpy(nqn, "nqn.2016-06.io..spdk:subsystem1", sizeof(nqn));
|
snprintf(nqn, sizeof(nqn), "nqn.2016-06.io..spdk:subsystem1");
|
||||||
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||||
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
||||||
|
|
||||||
/* Longest valid name */
|
/* Longest valid name */
|
||||||
strncpy(nqn, "nqn.2016-06.io.spdk:", sizeof(nqn));
|
snprintf(nqn, sizeof(nqn), "nqn.2016-06.io.spdk:");
|
||||||
memset(nqn + strlen(nqn), 'a', 223 - strlen(nqn));
|
memset(nqn + strlen(nqn), 'a', 223 - strlen(nqn));
|
||||||
nqn[223] = '\0';
|
nqn[223] = '\0';
|
||||||
CU_ASSERT(strlen(nqn) == 223);
|
CU_ASSERT(strlen(nqn) == 223);
|
||||||
@ -340,7 +339,7 @@ nvmf_test_create_subsystem(void)
|
|||||||
spdk_nvmf_subsystem_destroy(subsystem);
|
spdk_nvmf_subsystem_destroy(subsystem);
|
||||||
|
|
||||||
/* Invalid name, too long */
|
/* Invalid name, too long */
|
||||||
strncpy(nqn, "nqn.2016-06.io.spdk:", sizeof(nqn));
|
snprintf(nqn, sizeof(nqn), "nqn.2016-06.io.spdk:");
|
||||||
memset(nqn + strlen(nqn), 'a', 224 - strlen(nqn));
|
memset(nqn + strlen(nqn), 'a', 224 - strlen(nqn));
|
||||||
nqn[224] = '\0';
|
nqn[224] = '\0';
|
||||||
CU_ASSERT(strlen(nqn) == 224);
|
CU_ASSERT(strlen(nqn) == 224);
|
||||||
@ -348,37 +347,37 @@ nvmf_test_create_subsystem(void)
|
|||||||
CU_ASSERT(subsystem == NULL);
|
CU_ASSERT(subsystem == NULL);
|
||||||
|
|
||||||
/* Valid name using uuid format */
|
/* Valid name using uuid format */
|
||||||
strncpy(nqn, "nqn.2014-08.org.nvmexpress:uuid:11111111-aaaa-bbdd-FFEE-123456789abc", sizeof(nqn));
|
snprintf(nqn, sizeof(nqn), "nqn.2014-08.org.nvmexpress:uuid:11111111-aaaa-bbdd-FFEE-123456789abc");
|
||||||
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||||
SPDK_CU_ASSERT_FATAL(subsystem != NULL);
|
SPDK_CU_ASSERT_FATAL(subsystem != NULL);
|
||||||
CU_ASSERT_STRING_EQUAL(subsystem->subnqn, nqn);
|
CU_ASSERT_STRING_EQUAL(subsystem->subnqn, nqn);
|
||||||
spdk_nvmf_subsystem_destroy(subsystem);
|
spdk_nvmf_subsystem_destroy(subsystem);
|
||||||
|
|
||||||
/* Invalid name user string contains an invalid utf-8 character */
|
/* Invalid name user string contains an invalid utf-8 character */
|
||||||
strncpy(nqn, "nqn.2016-06.io.spdk:\xFFsubsystem1", sizeof(nqn));
|
snprintf(nqn, sizeof(nqn), "nqn.2016-06.io.spdk:\xFFsubsystem1");
|
||||||
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||||
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
||||||
|
|
||||||
/* Valid name with non-ascii but valid utf-8 characters */
|
/* Valid name with non-ascii but valid utf-8 characters */
|
||||||
strncpy(nqn, "nqn.2016-06.io.spdk:\xe1\x8a\x88subsystem1\xca\x80", sizeof(nqn));
|
snprintf(nqn, sizeof(nqn), "nqn.2016-06.io.spdk:\xe1\x8a\x88subsystem1\xca\x80");
|
||||||
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||||
SPDK_CU_ASSERT_FATAL(subsystem != NULL);
|
SPDK_CU_ASSERT_FATAL(subsystem != NULL);
|
||||||
CU_ASSERT_STRING_EQUAL(subsystem->subnqn, nqn);
|
CU_ASSERT_STRING_EQUAL(subsystem->subnqn, nqn);
|
||||||
spdk_nvmf_subsystem_destroy(subsystem);
|
spdk_nvmf_subsystem_destroy(subsystem);
|
||||||
|
|
||||||
/* Invalid uuid (too long) */
|
/* Invalid uuid (too long) */
|
||||||
strncpy(nqn, "nqn.2014-08.org.nvmexpress:uuid:11111111-aaaa-bbdd-FFEE-123456789abcdef",
|
snprintf(nqn, sizeof(nqn),
|
||||||
sizeof(nqn));
|
"nqn.2014-08.org.nvmexpress:uuid:11111111-aaaa-bbdd-FFEE-123456789abcdef");
|
||||||
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||||
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
||||||
|
|
||||||
/* Invalid uuid (dashes placed incorrectly) */
|
/* Invalid uuid (dashes placed incorrectly) */
|
||||||
strncpy(nqn, "nqn.2014-08.org.nvmexpress:uuid:111111-11aaaa-bbdd-FFEE-123456789abc", sizeof(nqn));
|
snprintf(nqn, sizeof(nqn), "nqn.2014-08.org.nvmexpress:uuid:111111-11aaaa-bbdd-FFEE-123456789abc");
|
||||||
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||||
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
||||||
|
|
||||||
/* Invalid uuid (invalid characters in uuid) */
|
/* Invalid uuid (invalid characters in uuid) */
|
||||||
strncpy(nqn, "nqn.2014-08.org.nvmexpress:uuid:111hg111-aaaa-bbdd-FFEE-123456789abc", sizeof(nqn));
|
snprintf(nqn, sizeof(nqn), "nqn.2014-08.org.nvmexpress:uuid:111hg111-aaaa-bbdd-FFEE-123456789abc");
|
||||||
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
subsystem = spdk_nvmf_subsystem_create(&tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||||
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
SPDK_CU_ASSERT_FATAL(subsystem == NULL);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user