Merge pull request #39 from gpshead/strncpy-msc_dev_ids

Fixes #33: Remove invalid use of strncpy()
This commit is contained in:
hathach 2019-03-03 20:37:12 -08:00 committed by GitHub
commit f23affbb0a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 12 additions and 6 deletions

View File

@ -265,14 +265,20 @@ int32_t proc_builtin_scsi(msc_cbw_t const * p_cbw, uint8_t* buffer, uint32_t buf
.is_removable = 1,
.version = 2,
.response_data_format = 2,
.vendor_id = "Adafruit",
.product_id = "Feather52840",
.product_rev = "1.0"
.vendor_id = " ",
.product_id = " ",
.product_rev = " ",
};
size_t len;
strncpy((char*) inquiry_rsp.vendor_id , CFG_TUD_MSC_VENDOR , sizeof(inquiry_rsp.vendor_id));
strncpy((char*) inquiry_rsp.product_id , CFG_TUD_MSC_PRODUCT , sizeof(inquiry_rsp.product_id));
strncpy((char*) inquiry_rsp.product_rev, CFG_TUD_MSC_PRODUCT_REV, sizeof(inquiry_rsp.product_rev));
#define _min(a,b) ((a) < (b) ? (a) : (b))
len = strlen(CFG_TUD_MSC_VENDOR);
memcpy(inquiry_rsp.vendor_id , CFG_TUD_MSC_VENDOR , _min(len, sizeof(inquiry_rsp.vendor_id)));
len = strlen(CFG_TUD_MSC_PRODUCT);
memcpy(inquiry_rsp.product_id , CFG_TUD_MSC_PRODUCT , _min(len, sizeof(inquiry_rsp.product_id)));
len = strlen(CFG_TUD_MSC_PRODUCT_REV);
memcpy(inquiry_rsp.product_rev, CFG_TUD_MSC_PRODUCT_REV, _min(len, sizeof(inquiry_rsp.product_rev)));
#undef _min
ret = sizeof(inquiry_rsp);
memcpy(buffer, &inquiry_rsp, ret);