summaryrefslogtreecommitdiffstats
path: root/sys/scsi/scsi_base.c
diff options
context:
space:
mode:
authorkrw <krw@openbsd.org>2019-12-02 15:10:27 +0000
committerkrw <krw@openbsd.org>2019-12-02 15:10:27 +0000
commit4213291d73436ed7b79658e0e965fd3deb05a85b (patch)
treefc11e042ca2f0a61c25fa75848f03fa3dbbbeb12 /sys/scsi/scsi_base.c
parentReplace rwsleep(9) with rwsleep_nsec(9) in vfs_lockf.c. (diff)
downloadwireguard-openbsd-4213291d73436ed7b79658e0e965fd3deb05a85b.tar.xz
wireguard-openbsd-4213291d73436ed7b79658e0e965fd3deb05a85b.zip
Don't forget the scsi_vpd_header when calculating the number of bytes
obtained by scsi_inquire_vpd().
Diffstat (limited to 'sys/scsi/scsi_base.c')
-rw-r--r--sys/scsi/scsi_base.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/scsi/scsi_base.c b/sys/scsi/scsi_base.c
index 955c32e9e73..afec7caabe2 100644
--- a/sys/scsi/scsi_base.c
+++ b/sys/scsi/scsi_base.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: scsi_base.c,v 1.250 2019/12/01 16:56:26 krw Exp $ */
+/* $OpenBSD: scsi_base.c,v 1.251 2019/12/02 15:10:27 krw Exp $ */
/* $NetBSD: scsi_base.c,v 1.43 1997/04/02 02:29:36 mycroft Exp $ */
/*
@@ -907,7 +907,8 @@ scsi_inquire_vpd(struct scsi_link *link, void *buf, u_int buflen,
#ifdef SCSIDEBUG
sc_print_addr(link);
if (error == 0) {
- bytes = _2btol(((struct scsi_vpd_hdr *)buf)->page_length);
+ bytes = sizeof(struct scsi_vpd_hdr) +
+ _2btol(((struct scsi_vpd_hdr *)buf)->page_length);
printf("got %u of %u bytes of VPD inquiry page %u data:\n", buflen,
bytes, page);
scsi_show_mem(buf, buflen);