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