scsi-generic (pass through) devices are able to inject an artificial Block
Limits VPD page in order to communicate host HBA limits to the guest.
However, Max Reitz found a few issues with the implementation of this
feature; this series should fix them all.
Paolo
Paolo Bonzini (4):
scsi-generic: keep VPD page list sorted
scsi-generic: avoid out-of-bounds access to VPD page list
scsi-generic: avoid invalid access to struct when emulating block
limits
scsi-generic: do not do VPD emulation for sense other than
ILLEGAL_REQUEST
hw/scsi/Makefile.objs | 2 +-
hw/scsi/emulation.c | 42 +++++++++++++++++
hw/scsi/scsi-disk.c | 92 ++++++++-----------------------------
hw/scsi/scsi-generic.c | 51 +++++++++++++++-----
include/hw/scsi/emulation.h | 16 +++++++
include/hw/scsi/scsi.h | 1 -
6 files changed, 119 insertions(+), 85 deletions(-)
create mode 100644 hw/scsi/emulation.c
create mode 100644 include/hw/scsi/emulation.h