The field is never used, it could potentially do break on malicious
migration stream.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
hw/usb/dev-smartcard-reader.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/hw/usb/dev-smartcard-reader.c b/hw/usb/dev-smartcard-reader.c
index 1b8f0e10e172..c6a9faf00d6f 100644
--- a/hw/usb/dev-smartcard-reader.c
+++ b/hw/usb/dev-smartcard-reader.c
@@ -308,7 +308,6 @@ struct USBCCIDState {
uint8_t bmCommandStatus;
uint8_t bProtocolNum;
CCID_ProtocolDataStructure abProtocolDataStructure;
- uint32_t ulProtocolDataStructureSize;
uint32_t state_vmstate;
uint8_t bmSlotICCState;
uint8_t powered;
@@ -762,9 +761,8 @@ static void ccid_write_slot_status(USBCCIDState *s, CCID_Header *recv)
static void ccid_write_parameters(USBCCIDState *s, CCID_Header *recv)
{
CCID_Parameter *h;
- uint32_t len = s->ulProtocolDataStructureSize;
- h = ccid_reserve_recv_buf(s, sizeof(CCID_Parameter) + len);
+ h = ccid_reserve_recv_buf(s, sizeof(CCID_Parameter));
if (h == NULL) {
return;
}
@@ -1447,7 +1445,7 @@ static const VMStateDescription ccid_vmstate = {
VMSTATE_UINT8(bmCommandStatus, USBCCIDState),
VMSTATE_UINT8(bProtocolNum, USBCCIDState),
VMSTATE_BUFFER(abProtocolDataStructure.data, USBCCIDState),
- VMSTATE_UINT32(ulProtocolDataStructureSize, USBCCIDState),
+ VMSTATE_UNUSED(4), /* was ulProtocolDataStructureSize */
VMSTATE_STRUCT_ARRAY(bulk_in_pending, USBCCIDState,
BULK_IN_PENDING_NUM, 1, bulk_in_vmstate, BulkIn),
VMSTATE_UINT32(bulk_in_pending_start, USBCCIDState),
--
2.55.0