Juan Lang
c79aad51cd
crypt32: Implement wildcard domain name matching in subject alternative names.
2010-05-21 14:37:52 +02:00
Juan Lang
d298e1e614
crypt32: Support hExclusiveRoot when creating a certificate chain engine.
2010-05-20 13:47:53 +02:00
Juan Lang
d3db308853
crypt32: Update definition of CERT_CHAIN_ENGINE_CONFIG.
2010-05-20 13:47:53 +02:00
Juan Lang
51ab77a90a
crypt32: Add support for the anyPolicy certificate policy.
2010-03-16 11:30:12 +01:00
Michael Stefaniuc
0a866d0e45
crypt32: Avoid using HIWORD() on a string pointer.
...
The stray IS_INTRESOURCE() is applied to a true resource. The other
strings are OIDs and not resources.
2010-01-29 14:59:02 +01:00
Juan Lang
4e18ac601f
crypt32: Don't get confused matching URLs with a colon in the userinfo portion (e.g. user:password@domain).
2009-12-21 15:01:22 +01:00
Juan Lang
048594854a
crypt32: Check authority key identifer extension to determine if a certificate is self-signed.
2009-12-18 11:39:58 +01:00
Amine Khaldi
e402260db4
crypt32: Remove an unneeded assignment.
2009-12-17 12:42:39 +01:00
Juan Lang
01a7cbf843
crypt32: Accept end certificates with no extended key usage extension if a particular key usage is requested.
2009-12-11 17:47:30 +01:00
Juan Lang
1740d9fe44
crypt32: Trace chain final error status.
2009-12-11 11:49:56 +01:00
Juan Lang
596cd16fc4
crypt32: Only check revocation on a chain without other errors.
2009-12-03 10:11:33 +01:00
Juan Lang
1a392e1a30
crypt32: Support checking the requested usage for a chain.
2009-11-21 14:31:44 +01:00
Juan Lang
30de103485
crypt32: Only trace a usage match if it's not empty.
2009-11-21 14:31:44 +01:00
Juan Lang
a3c6bc68c8
crypt32: Assume revocation server is offline if revocation status isn't known.
2009-11-20 11:14:52 +01:00
Juan Lang
9e1d31e5e5
crypt32: Fix a typo.
2009-11-20 11:14:47 +01:00
Juan Lang
96073d5129
crypt32: Remove an unnecessary test for the extended key usage extension in CA certificates.
2009-11-18 11:09:20 +01:00
Juan Lang
d6958d7660
crypt32: Trace reasons for name constraint failure.
2009-11-18 11:09:08 +01:00
Juan Lang
1db8a6abda
crypt32: Only fail directory name comparison if a directory name constraint is present and doesn't match.
2009-11-18 11:09:02 +01:00
Juan Lang
a63affe5e0
crypt32: Don't apply directory name constraints to an empty subject name.
2009-11-18 11:08:55 +01:00
Juan Lang
c464875a6d
crypt32: Accept a certificate if its name matches any permitted subtree of a name constraint.
2009-11-18 11:08:49 +01:00
Juan Lang
d6f7d06cad
crypt32: Check email address in subject name against rfc822 name constraints.
2009-11-18 11:08:44 +01:00
Juan Lang
e4c03521ac
crypt32: Apply name constraints to subject name.
2009-11-18 11:08:37 +01:00
Juan Lang
6f35ae25b8
crypt32: Use helper function to compare a subject alternate name with name constraints.
2009-11-18 11:08:32 +01:00
Juan Lang
a98dad4f93
crypt32: Only apply a name constraint if the name form is present.
2009-11-18 11:08:25 +01:00
Juan Lang
f6d3348b7c
crypt32: Partially implement checking name constraints with directory names.
2009-11-18 11:08:20 +01:00
Juan Lang
7c44544a6d
crypt32: Use helper functions to match excluded and permitted subtrees of name constraints.
2009-11-18 11:08:14 +01:00
Juan Lang
9a40de08de
crypt32: Let caller set error codes when name constraints aren't met.
2009-11-18 11:08:08 +01:00
Juan Lang
f8044948ba
crypt32: Remove an unnecessary if.
2009-11-18 11:08:01 +01:00
Juan Lang
8585203103
crypt32: Prohibit name constraints that contain neither an excluded nor a permitted subtree.
2009-11-18 11:07:53 +01:00
Juan Lang
1974e61b59
crypt32: Correctly match subdomains with dns name constraints.
2009-11-17 12:05:11 +01:00
Juan Lang
b74ef17efc
crypt32: If a hostname in a URI or rfc822 name constraint doesn't begin with '.', a match must be exact.
2009-11-17 12:05:04 +01:00
Juan Lang
e82005fe2d
crypt32: Only compare the hostname portion of a URL when checking against a name constraint.
2009-11-17 12:04:58 +01:00
Juan Lang
3c8a04f12f
crypt32: Include name constraints errors in the chain's error status.
2009-11-17 12:04:52 +01:00
Juan Lang
f9ad32f0ad
crypt32: Trace method used to find an issuer.
2009-11-17 12:04:46 +01:00
Juan Lang
f6c4824675
crypt32: Update a comment.
2009-11-16 11:34:04 +01:00
Juan Lang
c4b997bab3
crypt32: Set CERT_TRUST_HAS_VALID_NAME_CONSTRAINTS when a certificate's name constraints are met.
2009-11-16 11:33:58 +01:00
Juan Lang
21ecc84620
crypt32: Accept any matching dNSName in a subject alternate name.
2009-11-13 11:52:25 +01:00
Juan Lang
b91d0c8bde
crypt32: Implement matching a certificate with a wildcard in its name.
2009-11-13 11:52:24 +01:00
Juan Lang
300d5fe5c4
crypt32: Correct error when a matching name constraint is found.
2009-11-11 10:55:44 +01:00
Juan Lang
bdbee82c42
crypt32: Trace cert version.
2009-11-11 10:54:38 +01:00
Juan Lang
7eb33b18da
crypt32: Update a comment to reflect a fixed vulnerability.
2009-11-11 10:53:56 +01:00
Juan Lang
ee02d43731
crypt32: Correct error when a constrained, permitted name type isn't found in the subject name.
2009-11-10 13:08:31 +01:00
Juan Lang
2503e9ec73
crypt32: Use helper function to find the subject alternate name extension wherever it's needed.
2009-11-10 13:08:26 +01:00
Juan Lang
ae6e884142
crypt32: Correct error when the subject alternate name can't be decoded.
2009-11-10 13:08:20 +01:00
Juan Lang
865f3df35b
crypt32: Check the issued certificate for name constraint violations, not the issuing certificate.
2009-11-10 13:08:14 +01:00
Juan Lang
216df7a714
crypt32: Reject certificates whose fields don't match their versions.
2009-11-10 13:07:07 +01:00
Juan Lang
9fe6be454f
crypt32: Forbid minimum or maximum fields in name constraints.
2009-11-10 13:07:00 +01:00
Juan Lang
5274777b1c
crypt32: Permit lack of basic constraints extension on root certificates.
2009-11-09 19:34:36 +01:00
Juan Lang
d94e4d315a
crypt32: Permit lack of key usage extension on root certificates.
...
This reverts 60770fb011b0a60d7862e7fe9c7a6d24d68ac0ad, although it
updates the comments to give a reason. Thanks to Matt Van Gundy for
pointing it out to me.
2009-11-09 19:34:32 +01:00
Juan Lang
d6795bd908
crypt32: Trace contents of CERT_CHAIN_PARA.
2009-11-03 21:17:34 +01:00