[utils,smartcard] fix possible integer overflow

This commit is contained in:
akallabeth 2024-09-24 11:34:02 +02:00
parent 1f3e6decf2
commit 89e6f357b5
No known key found for this signature in database
GPG Key ID: A49454A3FC909FD5

View File

@ -227,6 +227,7 @@ static LONG smartcard_ListReaderGroupsW_Call(scard_call_context* smartcard, wStr
ret.msz = (BYTE*)mszGroups;
WINPR_ASSERT(cchGroups < SCARD_AUTOALLOCATE / sizeof(WCHAR));
const size_t blen = sizeof(WCHAR) * cchGroups;
WINPR_ASSERT(blen <= UINT32_MAX);
ret.cBytes = (UINT32)blen;
@ -1294,7 +1295,7 @@ static LONG smartcard_StatusW_Call(scard_call_context* smartcard, wStream* out,
}
/* SCardStatusW returns number of characters, we need number of bytes */
WINPR_ASSERT(ret.cBytes != SCARD_AUTOALLOCATE);
WINPR_ASSERT(ret.cBytes < SCARD_AUTOALLOCATE / sizeof(WCHAR));
const size_t blen = sizeof(WCHAR) * ret.cBytes;
WINPR_ASSERT(blen <= UINT32_MAX);
ret.cBytes = (UINT32)blen;