From acf8ab9a85bfd6ead185a59c4cfe26b25d5a082f Mon Sep 17 00:00:00 2001 From: Hannes Reinecke Date: Tue, 15 Aug 2017 10:21:41 +0200 Subject: [PATCH] scsi: ses: check return code from ses_recv_diag() We should be checking the return code from ses_recv_diag() to avoid accessing invalid data. Signed-off-by: Hannes Reinecke Signed-off-by: Martin K. Petersen --- drivers/scsi/ses.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/scsi/ses.c b/drivers/scsi/ses.c index f1cdf32d7514..2a651b2063a2 100644 --- a/drivers/scsi/ses.c +++ b/drivers/scsi/ses.c @@ -179,7 +179,8 @@ static unsigned char *ses_get_page2_descriptor(struct enclosure_device *edev, unsigned char *type_ptr = ses_dev->page1_types; unsigned char *desc_ptr = ses_dev->page2 + 8; - ses_recv_diag(sdev, 2, ses_dev->page2, ses_dev->page2_len); + if (ses_recv_diag(sdev, 2, ses_dev->page2, ses_dev->page2_len) < 0) + return NULL; for (i = 0; i < ses_dev->page1_num_types; i++, type_ptr += 4) { for (j = 0; j < type_ptr[1]; j++) { -- GitLab