crypt32: Re: exception handling, part 2
Saulius Krasuckas
saulius2 at ar.fi.lt
Fri Jul 22 10:00:17 CDT 2005
* On Fri, 22 Jul 2005, Juan Lang wrote:
>
> > But the bad thing is that after running small code chunk another calls
> > to CryptEncodeObjectEx() starts generating exceptions here.
>
> the error handling on Win9x wasn't as good as on XP.
Hmm. I don't understand the code, but if I change (+) BYTE tooBig
definition, then exceptions are gone, but return codes still differs in
the output (|):
+ tooBig[] = { 0x00, 0x84, 0xff, 0xff, 0xff, 0xfc };
| encode.c:313: Test failed: Expected CRYPT_E_ASN1_LARGE, got 8009310b
+ tooBig[] = { 0x02, 0x84, 0xf0, 0xff, 0xff, 0xfc };
+ tooBig[] = { 0x02, 0x84, 0xff, 0x0f, 0xff, 0xfc };
| encode.c:313: Test failed: Expected CRYPT_E_ASN1_LARGE, got 80093102
+ tooBig[] = { 0x02, 0x04, 0xff, 0xff, 0xff, 0xfc };
| encode.c:313: Test failed: Expected CRYPT_E_ASN1_LARGE, got 00000000
+ tooBig[] = { 0x02, 0x80, 0xff, 0xff, 0xff, 0xfc };
| encode.c:313: Test failed: Expected CRYPT_E_ASN1_LARGE, got 80093103
+ tooBig[] = { 0x02, 0x83, 0xff, 0xff, 0xff, 0xfc };
| encode.c:313: Test failed: Expected CRYPT_E_ASN1_LARGE, got c0000005
+ tooBig[] = { 0x02, 0x84, 0x0f, 0xff, 0xff, 0xfc };
+ tooBig[] = { 0x02, 0x84, 0xff, 0xff, 0xff, 0xfc };
| encode.c:313: Test failed: Expected CRYPT_E_ASN1_LARGE, got 80093106
+ tooBig[] = { 0x02, 0x84, 0xff, 0xff, 0xff, 0xfd };
| encode.c:313: Test failed: Expected CRYPT_E_ASN1_LARGE, got c0000005
| (plus further exceptions)
For me it is strange that "{0x02, 0x83, ..." gives same GLE (c0000005) as
original tooBig value, but exceptions aren't being catched in debugger.
I thought if there may be some sense in tuning tooBig value, then could it
be done? If not, then sorry for the noise.
More information about the wine-devel
mailing list