Re: [PATCHv2 2/2] scsi: ibmvscsis: Ensure partition name is properly NUL terminated

From: Kees Cook
Date: Tue Sep 11 2018 - 15:33:20 EST


On Tue, Sep 11, 2018 at 12:22 PM, Laura Abbott <labbott@xxxxxxxxxx> wrote:
>
> While reviewing another part of the code, Kees noticed that the
> strncpy of the partition name might not always be NUL terminated. Switch
> to using strscpy which does this safely.
>
> Reported-by: Kees Cook <keescook@xxxxxxxxxxxx>
> Signed-off-by: Laura Abbott <labbott@xxxxxxxxxx>

Reviewed-by: Kees Cook <keescook@xxxxxxxxxxxx>

-Kees

> ---
> v2: Switch to strscpy instead of just strlcpy
> ---
> drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c b/drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c
> index b3a029ad07cd..f42a619198c4 100644
> --- a/drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c
> +++ b/drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c
> @@ -3477,7 +3477,7 @@ static int ibmvscsis_probe(struct vio_dev *vdev,
> snprintf(vscsi->eye, sizeof(vscsi->eye), "VSCSI %s", vdev->name);
>
> vscsi->dds.unit_id = vdev->unit_address;
> - strncpy(vscsi->dds.partition_name, partition_name,
> + strscpy(vscsi->dds.partition_name, partition_name,
> sizeof(vscsi->dds.partition_name));
> vscsi->dds.partition_num = partition_number;
>
> --
> 2.17.1
>



--
Kees Cook
Pixel Security