[PATCH 08/27] hw/usb/dev-smartcard-reader: drop needless state fields
Marc-André Lureau <[email protected]> Wed, 05 Aug 2026 15:50:58 +0400
| Newsgroups | gmane.comp.emulators.qemu |
|---|---|
| Message-ID | <[email protected]> |
The field is never used, it could potentially do break on malicious migration stream. Signed-off-by: Marc-André Lureau <[email protected]> --- 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