Module: wine Branch: master Commit: fa65c3f6342ccbeef0715244bd16b2ca7fa54c23 URL: http://source.winehq.org/git/wine.git/?a=commit;h=fa65c3f6342ccbeef0715244bd...
Author: Juan Lang juan.lang@gmail.com Date: Fri Dec 19 15:37:35 2008 -0800
crypt32: Don't check for the TLV after indefinite-length sequence items, the item's decoder has already done so.
---
dlls/crypt32/decode.c | 24 ++++-------------------- 1 files changed, 4 insertions(+), 20 deletions(-)
diff --git a/dlls/crypt32/decode.c b/dlls/crypt32/decode.c index 632369f..fa06510 100644 --- a/dlls/crypt32/decode.c +++ b/dlls/crypt32/decode.c @@ -376,26 +376,10 @@ static BOOL CRYPT_AsnDecodeSequenceItems(struct AsnDecodeSequenceItem items[], } else { - if (itemLen == CMSG_INDEFINITE_LENGTH) - { - if (itemDecoded > itemEncodedLen - 2 || - *(ptr + itemDecoded) != 0 || - *(ptr + itemDecoded + 1) != 0) - { - TRACE("expected 0 TLV\n"); - SetLastError(CRYPT_E_ASN1_CORRUPT); - ret = FALSE; - } - else - itemDecoded += 2; - } - if (ret) - { - ptr += itemDecoded; - decoded += itemDecoded; - TRACE("item %d: decoded %d bytes\n", i, - itemDecoded); - } + ptr += itemDecoded; + decoded += itemDecoded; + TRACE("item %d: decoded %d bytes\n", i, + itemDecoded); } } else if (items[i].optional &&