Commit Graph

1321 Commits

Author SHA1 Message Date
Juan Lang 7fa618aa8e crypt32: Check key usage during chain validation. 2009-10-21 16:21:53 +02:00
Juan Lang f2057592bf crypt32: Add tests for key usage in the base policy. 2009-10-21 16:21:49 +02:00
Juan Lang a700e0556f crypt32: Add key usage extension to non-root CA certs. 2009-10-21 16:21:44 +02:00
Juan Lang cbabc9d689 crypt32: Get CA flag from basic constraints extension of every cert in the chain. 2009-10-21 16:21:40 +02:00
Juan Lang f348e3feb7 crypt32: Check basic constraints extension for end certs too. 2009-10-21 16:21:36 +02:00
Juan Lang e1903dc6e0 crypt32: Encode public keys with NULL parameters if they're empty (and make tests more restrictive). 2009-10-21 16:05:56 +02:00
Juan Lang d8ca5bc348 crypt32: Use helper function to encode public keys for hashing.
This is necessary because the publicly callable form embeds the asn.1
NULL value when the parameters are empty, whereas the hash value
expects that it's missing.
2009-10-21 16:05:56 +02:00
Juan Lang c97e442a28 crypt32: Add a helper function to encode a cert's public key. 2009-10-21 16:05:55 +02:00
Juan Lang 43182842cd crypt32: Set an output parameter on the success path. 2009-10-21 16:05:55 +02:00
Juan Lang dd26bee14c crypt32: Fix duplicating a NULL CTL context. 2009-10-21 16:05:55 +02:00
Juan Lang acc9d81f26 crypt32: Fix duplicating a NULL CRL context. 2009-10-21 16:05:54 +02:00
Juan Lang 1e424138fe crypt32: Implement CryptFindCertificateInStore for unicode strings. 2009-10-20 14:00:35 +02:00
Juan Lang af4b5303ba crypt32: Test CertFindCertificateStore for finding Unicode strings. 2009-10-20 14:00:35 +02:00
Juan Lang c0872b218c crypt32/tests: Get rid of a couple of certs unneeded by a test. 2009-10-20 14:00:35 +02:00
Juan Lang 87405ade02 crypt32: Add a safe default for unsupported critical extensions. 2009-10-20 13:46:55 +02:00
Francois Gouget d2cc5380db crypt32: Fix compilation on systems that don't support nameless unions. 2009-10-19 14:45:10 +02:00
Juan Lang 60140610e3 crypt32: Compare certificates in a consistent order. 2009-10-19 11:35:55 +02:00
Juan Lang 3740e4150b crypt32: Avoid repeatedly decoding authority key id extensions when searching for a cert's issuer. 2009-10-19 11:35:46 +02:00
Juan Lang b2d27097b5 crypt32: Introduce a helper function to search for certificates that doesn't require recreating the search key for every certificate. 2009-10-19 11:35:38 +02:00
Juan Lang e0a4404831 crypt32: Use helper function to search for certs. 2009-10-19 11:35:32 +02:00
Juan Lang 1437d7ccc2 crypt32: Explicitly pass pointers to blob arrays rather than relying on an invalid alignment assumption. 2009-10-19 11:35:23 +02:00
Juan Lang 3000bc200a crypt32: Explicitly pass pointers to blob arrays rather than relying on an invalid alignment assumption. 2009-10-19 11:35:14 +02:00
Juan Lang 5f317d702a crypt32: Fix an invalid alignment assumption decoding a subtree's maximum. 2009-10-19 11:35:04 +02:00
Juan Lang 4e300b6def crypt32: Simplify CRYPT_AsnDecodeIntInternal. 2009-10-19 11:34:51 +02:00
Juan Lang 7a33b61f34 crypt32: Don't pass CRYPT_DECODE_ALLOC_FLAG to array item decoders. 2009-10-16 13:40:08 +02:00
Juan Lang faa451628a crypt32: Let CRYPT_AsnDecodeArray allocate memory for its callers. 2009-10-15 12:06:21 +02:00
Juan Lang c5699e736f crypt32: Allocate memory if requested in CRYPT_AsnDecodeArray. 2009-10-15 12:06:21 +02:00
Juan Lang 3c25d7540f crypt32: Rename CRYPT_AsnDecodeArrayNoAlloc to CRYPT_AsnDecodeArray, and pass a CRYPT_DECODE_PARA * to it so that it can allocate memory if requested. 2009-10-15 12:06:21 +02:00
Juan Lang b1a1b32b59 crypt32: Decode enhanced key usages using CRYPT_AsnDecodeArrayNoAlloc. 2009-10-15 12:06:21 +02:00
Juan Lang 36fc7b06b1 crypt32: Decode CRL dist points using CRYPT_AsnDecodeArrayNoAlloc. 2009-10-15 12:06:21 +02:00
Juan Lang 155aa41d7c crypt32: Decode cert policies info using CRYPT_AsnDecodeArrayNoAlloc. 2009-10-15 12:06:21 +02:00
Juan Lang bba695cc3f crypt32: Decode authority info access with CRYPT_AsnDecodeArrayNoAlloc. 2009-10-15 12:06:21 +02:00
Juan Lang 1b1626ac81 crypt32: Decode unicode names using CRYPT_AsnDecodeArrayNoAlloc. 2009-10-15 12:06:21 +02:00
Juan Lang 67ee87664e crypt32: Decode names using CRYPT_AsnDecodeArrayNoAlloc. 2009-10-15 12:06:21 +02:00
Juan Lang fd2a4c4330 crypt32: Correct a sequence item size. 2009-10-15 12:06:21 +02:00
Juan Lang 4f815c7d03 crypt32: Convert internal callers of CRYPT_AsnDecodeArray to call CRYPT_AsnDecodeArrayNoAlloc. 2009-10-15 12:06:21 +02:00
Juan Lang a8f5934f44 crypt32: Pass decode flags to CRYPT_AsnDecodeArrayNoAlloc. 2009-10-15 12:06:21 +02:00
Juan Lang 136eedb9af crypt32: Further simplify calling CRYPT_AsnDecodeArrayNoAlloc. 2009-10-15 12:06:20 +02:00
Juan Lang 271b477171 crypt32: Let CRYPT_AsnDecodeArrayNoAlloc calculate array size rather than requiring every caller to do so. 2009-10-15 12:06:20 +02:00
Juan Lang c64f31087f crypt32: Simplify calling CRYPT_AsnDecodeArrayNoAlloc. 2009-10-15 12:06:20 +02:00
Juan Lang 3c14587e18 crypt32: Add array descriptor members describing offsets of outer structure. 2009-10-15 12:06:20 +02:00
Juan Lang 77cfb32360 crypt32: Simplify CRYPT_AsnDecodePKCSAttributes. 2009-10-15 12:06:20 +02:00
Juan Lang c7e3ea1484 crypt32: Explicitly pass array pointer when decoding CTL entry attributes rather than assuming a particular alignment. 2009-10-15 12:06:20 +02:00
Juan Lang f5946e4acb crypt32: Explicitly pass array pointer when decoding cert policy qualifiers rather than assuming a particular alignment. 2009-10-15 12:06:20 +02:00
Juan Lang 117ea9ee91 crypt32: Explicitly pass array pointer when decoding basic constraints' subtrees rather than assuming a particular alignment. 2009-10-15 12:06:20 +02:00
Juan Lang 6d74aac002 crypt32: Explicitly pass array pointer when decoding policy qualifier notice numbers rather than assuming a particular alignment. 2009-10-15 12:06:20 +02:00
Juan Lang 362abb6fa9 crypt32: Remove a redundant trace. 2009-10-15 12:06:20 +02:00
Juan Lang 3270451ec0 crypt32: Explicitly pass array pointer when decoding CTL extensions rather than assuming a particular alignment. 2009-10-15 12:06:20 +02:00
Juan Lang 8aefb32523 crypt32: Explicitly pass array pointer when decoding CTL entries rather than assuming a particular alignment. 2009-10-15 12:06:20 +02:00
Juan Lang 030cd8f594 crypt32: Explicitly pass array pointer when decoding CMS message signers rather than assuming a particular alignment. 2009-10-15 12:06:20 +02:00