crypt32: ComparePublicKeyInfo must ignore the leading zero (try 2)

Michael Karcher wine at mkarcher.dialup.fu-berlin.de
Sun Jun 29 05:33:48 CDT 2008


This re-send fixes a copy'n'pasto type of bug and adds one more test
that would have caught the bug.

As the notes for RSA_CSP_PUBLICKEYBLOB on MSDN describe, the modulus
of an RSA public key *might* have a leading zero in the ASN.1 encoding.
CertComparePublicKeyInfo must not treat public keys which differ only
in the presence of the leading zero different, if the dwCertEncodingType
indicates an ASN.1 encoded public key.

A test for the behaviour of CertComparePublicKeyInfo with X509_ASN_ENCODING
is included. The testcases pass with this patch in wine as well as
cross-compiled on Windows XP SP3.

This patch makes makecert.exe from the Microsoft SDK/DDK run.
---
 dlls/crypt32/cert.c       |   63 ++++++++++++++++++++++++++++++++++++++------
 dlls/crypt32/tests/cert.c |   32 +++++++++++++++++++++++
 2 files changed, 86 insertions(+), 9 deletions(-)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ab0c042be94ea56a065cce52ccaeca6f3010606d.diff
Type: text/x-patch
Size: 5947 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-patches/attachments/20080629/7ee80d45/attachment.bin 


More information about the wine-patches mailing list