diff options
author | Tyrel Datwyler <tyreld@linux.vnet.ibm.com> | 2016-08-12 17:20:07 -0500 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2016-08-16 00:49:32 -0400 |
commit | a87eeb900dbb9f8202f96604d56e47e67c936b9d (patch) | |
tree | 504de8af767fbc32dcd8206a755b03544bd44690 /drivers/scsi/constants.c | |
parent | e120dcb6b2a11840b08f0fc0d2e90256b7b6e842 (diff) | |
download | linux-a87eeb900dbb9f8202f96604d56e47e67c936b9d.tar.gz linux-a87eeb900dbb9f8202f96604d56e47e67c936b9d.tar.bz2 linux-a87eeb900dbb9f8202f96604d56e47e67c936b9d.zip |
scsi: fix upper bounds check of sense key in scsi_sense_key_string()
Commit 655ee63cf371 ("scsi constants: command, sense key + additional
sense string") added a "Completed" sense string with key 0xF to
snstext[], but failed to updated the upper bounds check of the sense key
in scsi_sense_key_string().
Fixes: 655ee63cf371 ("[SCSI] scsi constants: command, sense key + additional sense strings")
Cc: <stable@vger.kernel.org> # v3.12+
Signed-off-by: Tyrel Datwyler <tyreld@linux.vnet.ibm.com>
Reviewed-by: Bart Van Assche <bart.vanassche@sandisk.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/constants.c')
-rw-r--r-- | drivers/scsi/constants.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/scsi/constants.c b/drivers/scsi/constants.c index 83458f7a2824..6dc96c8dfe75 100644 --- a/drivers/scsi/constants.c +++ b/drivers/scsi/constants.c @@ -361,8 +361,9 @@ static const char * const snstext[] = { /* Get sense key string or NULL if not available */ const char * -scsi_sense_key_string(unsigned char key) { - if (key <= 0xE) +scsi_sense_key_string(unsigned char key) +{ + if (key < ARRAY_SIZE(snstext)) return snstext[key]; return NULL; } |