| From foo@baz Thu Oct 18 11:08:35 CEST 2018 |
| From: Laura Abbott <labbott@redhat.com> |
| Date: Tue, 11 Sep 2018 12:22:25 -0700 |
| Subject: scsi: ibmvscsis: Fix a stringop-overflow warning |
| |
| From: Laura Abbott <labbott@redhat.com> |
| |
| [ Upstream commit d792d4c4fc866ae224b0b0ca2aabd87d23b4d6cc ] |
| |
| There's currently a warning about string overflow with strncat: |
| |
| drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c: In function 'ibmvscsis_probe': |
| drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c:3479:2: error: 'strncat' specified |
| bound 64 equals destination size [-Werror=stringop-overflow=] |
| strncat(vscsi->eye, vdev->name, MAX_EYE); |
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| |
| Switch to a single snprintf instead of a strcpy + strcat to handle this |
| cleanly. |
| |
| Signed-off-by: Laura Abbott <labbott@redhat.com> |
| Suggested-by: Kees Cook <keescook@chromium.org> |
| Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> |
| Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c | 3 +-- |
| 1 file changed, 1 insertion(+), 2 deletions(-) |
| |
| --- a/drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c |
| +++ b/drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c |
| @@ -3475,8 +3475,7 @@ static int ibmvscsis_probe(struct vio_de |
| vscsi->dds.window[LOCAL].liobn, |
| vscsi->dds.window[REMOTE].liobn); |
| |
| - strcpy(vscsi->eye, "VSCSI "); |
| - strncat(vscsi->eye, vdev->name, MAX_EYE); |
| + snprintf(vscsi->eye, sizeof(vscsi->eye), "VSCSI %s", vdev->name); |
| |
| vscsi->dds.unit_id = vdev->unit_address; |
| strncpy(vscsi->dds.partition_name, partition_name, |