Juan Lang [Fri, 6 Nov 2009 20:35:49 +0000 (12:35 -0800)]
crypt32: Implement encoding cert policy constraints.
Juan Lang [Fri, 6 Nov 2009 20:28:43 +0000 (12:28 -0800)]
crypt32: Add tests for encoding/decoding cert policy constraints.
Juan Lang [Fri, 6 Nov 2009 20:26:59 +0000 (12:26 -0800)]
crypt32: Implement decoding cert policy mappings.
Juan Lang [Fri, 6 Nov 2009 19:52:19 +0000 (11:52 -0800)]
crypt32: Implement encoding cert policy mappings.
Juan Lang [Fri, 6 Nov 2009 19:33:52 +0000 (11:33 -0800)]
crypt32: Add tests for encoding/decoding cert policy mappings.
Juan Lang [Fri, 6 Nov 2009 19:23:17 +0000 (11:23 -0800)]
crypt32: Fix decoding cert issuer/subject unique ids.
Juan Lang [Fri, 6 Nov 2009 19:21:51 +0000 (11:21 -0800)]
crypt32: Fix encoding cert issuer/subject unique ids.
Juan Lang [Fri, 6 Nov 2009 19:19:55 +0000 (11:19 -0800)]
crypt32: Add more tests of cert encoding/decoding.
Paul Chitescu [Fri, 6 Nov 2009 12:18:14 +0000 (14:18 +0200)]
crypt32: Check the result of CryptAcquireContextW() when initializing default provider.
Juan Lang [Thu, 5 Nov 2009 21:15:43 +0000 (13:15 -0800)]
crypt32: Permit lack of basic constraints extension on root certificates.
Juan Lang [Thu, 5 Nov 2009 21:12:07 +0000 (13:12 -0800)]
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.
Juan Lang [Thu, 5 Nov 2009 00:46:13 +0000 (16:46 -0800)]
crypt32: Don't free a file store's mem store, it's already freed by the provider store.
Juan Lang [Thu, 5 Nov 2009 00:45:52 +0000 (16:45 -0800)]
crypt32: Add a warning if a store's ref count is invalid.
Juan Lang [Thu, 5 Nov 2009 00:29:33 +0000 (16:29 -0800)]
crypt32: Don't copy past end of buffer when removing the last string in a multistring.
Juan Lang [Wed, 4 Nov 2009 19:58:28 +0000 (11:58 -0800)]
crypt32: Fix a test failure on NT 4.
Juan Lang [Tue, 3 Nov 2009 19:02:03 +0000 (11:02 -0800)]
crypt32: Implement CertStoreControl for collection stores.
Juan Lang [Tue, 3 Nov 2009 18:59:50 +0000 (10:59 -0800)]
crypt32: Add an implementation of CertControlStore for memory stores.
Juan Lang [Tue, 3 Nov 2009 18:58:19 +0000 (10:58 -0800)]
crypt32: Add tests of committing a collection store.
Juan Lang [Wed, 4 Nov 2009 01:22:10 +0000 (17:22 -0800)]
crypt32: Eliminate a double free in the tests.
Juan Lang [Sat, 31 Oct 2009 02:06:44 +0000 (19:06 -0700)]
crypt32: Rename a function to reflect its behavior better, and return whether it succeeds.
Juan Lang [Sat, 31 Oct 2009 01:48:22 +0000 (18:48 -0700)]
crypt32: Release contexts when removing them from the mem store.
Juan Lang [Sat, 31 Oct 2009 01:19:39 +0000 (18:19 -0700)]
crypt32: Don't delete a context when removing it from a list.
Juan Lang [Wed, 4 Nov 2009 00:46:50 +0000 (16:46 -0800)]
crypt32: Add an error if the ref count is invalid when releasing a context.
Juan Lang [Wed, 4 Nov 2009 00:44:44 +0000 (16:44 -0800)]
crypt32: Trace whenever a reference count changes, and change default debug channel to quiet the main crypt channel.
Juan Lang [Sat, 31 Oct 2009 00:32:49 +0000 (17:32 -0700)]
crypt32: Release a link context's linked context on every release, not just when it reaches 0.
Juan Lang [Wed, 4 Nov 2009 01:05:29 +0000 (17:05 -0800)]
crypt32: When creating a link context, call Context_AddRef to add-ref it so its children get add-ref'd too.
Juan Lang [Sat, 31 Oct 2009 00:25:28 +0000 (17:25 -0700)]
crypt32: When add-ref'ing a context, add-ref its linked contexts too.
Juan Lang [Fri, 30 Oct 2009 23:43:24 +0000 (16:43 -0700)]
crypt32: When removing contexts from a list, make sure the context no longer references the list.
Juan Lang [Wed, 4 Nov 2009 01:04:32 +0000 (17:04 -0800)]
crypt32: Correct reference counting when deleting contexts from collections.
Juan Lang [Fri, 30 Oct 2009 22:18:53 +0000 (15:18 -0700)]
crypt32: Propagate errors from CertFree*Context to CertDelete*FromStore.
Juan Lang [Fri, 30 Oct 2009 22:06:39 +0000 (15:06 -0700)]
crypt32: Add return value to Context_Release to allow detecting reference counting errors.
Juan Lang [Tue, 3 Nov 2009 21:54:15 +0000 (13:54 -0800)]
crypt32: Implement CertAddEncodedCertificateToSystemStoreA/W.
Juan Lang [Tue, 3 Nov 2009 00:16:46 +0000 (16:16 -0800)]
crypt32: Add stub for CertAddCertificateLinkToStore.
Juan Lang [Tue, 3 Nov 2009 18:45:51 +0000 (10:45 -0800)]
crypt32: Implement CryptGetIntendedKeyUsage.
Juan Lang [Tue, 3 Nov 2009 18:44:41 +0000 (10:44 -0800)]
crypt32: Add tests for CertGetIntendedKeyUsage.
Juan Lang [Tue, 3 Nov 2009 00:16:29 +0000 (16:16 -0800)]
crypt32: Correct spec entries for certificate stores.
Juan Lang [Mon, 2 Nov 2009 23:41:58 +0000 (15:41 -0800)]
crypt32: Add stub for CryptGetIntendedKeyUsage.
Juan Lang [Mon, 2 Nov 2009 18:53:35 +0000 (10:53 -0800)]
crypt32: Fix a memory leak in a test.
Juan Lang [Mon, 2 Nov 2009 18:54:34 +0000 (10:54 -0800)]
crypt32: Fix a memory leak reading trusted root certs.
Juan Lang [Mon, 2 Nov 2009 18:27:25 +0000 (10:27 -0800)]
crypt32: Fix a memory leak querying a message object.
Juan Lang [Thu, 29 Oct 2009 23:48:52 +0000 (16:48 -0700)]
crypt32: Support reading a serialized store object from memory in CryptQueryObject.
Juan Lang [Mon, 2 Nov 2009 20:31:15 +0000 (12:31 -0800)]
crypt32: Abstract function used to read from reading a serialized store.
Juan Lang [Fri, 30 Oct 2009 21:09:57 +0000 (14:09 -0700)]
crypt32: Allow errors in locally installed root certs.
Juan Lang [Fri, 30 Oct 2009 19:46:38 +0000 (12:46 -0700)]
crypt32: Trace contents of CERT_CHAIN_PARA.
Juan Lang [Thu, 29 Oct 2009 22:43:37 +0000 (15:43 -0700)]
crypt32: Add support for the CRYPT_STRING_NOCRLF flag to CryptBinaryToStringA/W.
Juan Lang [Thu, 29 Oct 2009 22:13:29 +0000 (15:13 -0700)]
crypt32: Partially implement CryptBinaryToStringW.
Juan Lang [Fri, 30 Oct 2009 00:54:51 +0000 (17:54 -0700)]
crypt32: Trace policy error status in CertVerifyCertificateChainPolicy.
Juan Lang [Wed, 28 Oct 2009 17:48:02 +0000 (10:48 -0700)]
crypt32: Create a V1 certificate if it doesn't have extensions.
Juan Lang [Thu, 29 Oct 2009 00:33:24 +0000 (17:33 -0700)]
crypt32: Check CA certificates for the enhanced key usage extension.
Juan Lang [Thu, 29 Oct 2009 00:32:39 +0000 (17:32 -0700)]
crypt32: Only permit v1 or v2 CA certificates without a key usage extension if they're installed locally.
Juan Lang [Thu, 29 Oct 2009 00:30:50 +0000 (17:30 -0700)]
crypt32: Use a helper function to find an existing cert by hash.
Juan Lang [Wed, 28 Oct 2009 23:59:19 +0000 (16:59 -0700)]
crypt32: Add key usage extension to chain4_0.
Juan Lang [Thu, 29 Oct 2009 00:28:46 +0000 (17:28 -0700)]
crypt32: Only permit v1 or v2 CA certificates without a basic constraints extension if they're installed locally.
Juan Lang [Wed, 28 Oct 2009 23:50:33 +0000 (16:50 -0700)]
crypt32: Add basic constraints to chain quality selection algorithm.
Juan Lang [Wed, 28 Oct 2009 23:50:10 +0000 (16:50 -0700)]
crypt32: Remove redundant if clause.
Juan Lang [Wed, 28 Oct 2009 23:49:31 +0000 (16:49 -0700)]
crypt32: Add basic constraints to chain15_0.
Juan Lang [Wed, 28 Oct 2009 23:45:26 +0000 (16:45 -0700)]
crypt32: Add basic constraints to chain14_0.
Juan Lang [Wed, 28 Oct 2009 23:43:45 +0000 (16:43 -0700)]
crypt32: Add basic constraints and key usage to chain12_0.
Juan Lang [Wed, 28 Oct 2009 23:39:38 +0000 (16:39 -0700)]
crypt32: Add basic constraints and key usage to chain8_0.
Juan Lang [Wed, 28 Oct 2009 23:38:38 +0000 (16:38 -0700)]
crypt32: Add basic constraints and key usage to chain5_0.
Juan Lang [Wed, 28 Oct 2009 23:34:20 +0000 (16:34 -0700)]
crypt32: Add basic constraints and key usage to chain2_0.
Juan Lang [Wed, 28 Oct 2009 23:27:51 +0000 (16:27 -0700)]
crypt32: Add basic constraints and key usage to chain0_0.
Juan Lang [Wed, 28 Oct 2009 16:17:30 +0000 (09:17 -0700)]
crypt32: Implement CertVerifyCertificateChainPolicy for CERT_CHAIN_POLICY_SSL.
Juan Lang [Wed, 28 Oct 2009 16:10:29 +0000 (09:10 -0700)]
crypt32: Add some tests of the SSL policy.
Juan Lang [Wed, 28 Oct 2009 16:07:39 +0000 (09:07 -0700)]
crypt32: Allow the caller of checkChainPolicyStatus to specify the date to test with and additional policy parameters.
Juan Lang [Tue, 27 Oct 2009 22:11:22 +0000 (15:11 -0700)]
crypt32: Add the Google website's cert to tests.
Juan Lang [Fri, 23 Oct 2009 21:38:47 +0000 (14:38 -0700)]
crypt32: Support IPv6 addresses in name constraint comparison.
Juan Lang [Fri, 23 Oct 2009 21:11:27 +0000 (14:11 -0700)]
crypt32: Trace netscape cert type extension.
Juan Lang [Fri, 23 Oct 2009 20:53:26 +0000 (13:53 -0700)]
crypt32: Trace directory name of alt name entries.
Juan Lang [Fri, 23 Oct 2009 20:51:02 +0000 (13:51 -0700)]
crypt32: Correct a prototype.
Juan Lang [Fri, 23 Oct 2009 18:54:05 +0000 (11:54 -0700)]
crypt32: Accept either the subject alt name 2 or subject alt name extensions, and prefer the former when both are present.
Juan Lang [Fri, 23 Oct 2009 18:51:40 +0000 (11:51 -0700)]
crypt32: Trace the alt name extensions.
Juan Lang [Fri, 23 Oct 2009 18:38:03 +0000 (11:38 -0700)]
crypt32: Trace name constraints extension.
Juan Lang [Fri, 23 Oct 2009 18:09:20 +0000 (11:09 -0700)]
crypt32: Trace cert policies extension.
Juan Lang [Fri, 23 Oct 2009 17:59:30 +0000 (10:59 -0700)]
crypt32: Trace enhanced key usage extension.
Dan Kegel [Wed, 28 Oct 2009 01:40:31 +0000 (18:40 -0700)]
crypt32/tests: CryptUnprotectData: test zero-length payload.
Juan Lang [Thu, 22 Oct 2009 22:02:29 +0000 (15:02 -0700)]
crypt32: Fix a test failure on systems with no c: drive.
Juan Lang [Fri, 23 Oct 2009 16:57:04 +0000 (09:57 -0700)]
crypt32: Move tracing of key usage extension to common extension tracing location.
Juan Lang [Thu, 22 Oct 2009 20:31:00 +0000 (13:31 -0700)]
crypt32: Make sure item size is at least the min size, and only align sizes that are greater.
Juan Lang [Thu, 22 Oct 2009 14:38:56 +0000 (07:38 -0700)]
crypt32: Fix test failures on older versions of crypt32.
Juan Lang [Wed, 21 Oct 2009 01:25:06 +0000 (18:25 -0700)]
crypt32: Check key usage during chain validation.
Juan Lang [Wed, 21 Oct 2009 01:05:08 +0000 (18:05 -0700)]
crypt32: Add tests for key usage in the base policy.
Juan Lang [Wed, 21 Oct 2009 01:02:20 +0000 (18:02 -0700)]
crypt32: Add key usage extension to non-root CA certs.
Juan Lang [Mon, 19 Oct 2009 19:02:34 +0000 (12:02 -0700)]
crypt32: Get CA flag from basic constraints extension of every cert in the chain.
Juan Lang [Wed, 21 Oct 2009 01:00:45 +0000 (18:00 -0700)]
crypt32: Check basic constraints extension for end certs too.
Juan Lang [Tue, 20 Oct 2009 20:33:15 +0000 (13:33 -0700)]
crypt32: Encode public keys with NULL parameters if they're empty (and make tests more restrictive).
Juan Lang [Tue, 20 Oct 2009 20:29:03 +0000 (13:29 -0700)]
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.
Juan Lang [Tue, 20 Oct 2009 20:20:59 +0000 (13:20 -0700)]
crypt32: Add a helper function to encode a cert's public key.
Juan Lang [Tue, 20 Oct 2009 19:48:48 +0000 (12:48 -0700)]
crypt32: Set an output parameter on the success path.
Juan Lang [Tue, 20 Oct 2009 16:54:56 +0000 (09:54 -0700)]
crypt32: Fix duplicating a NULL CTL context.
Juan Lang [Tue, 20 Oct 2009 16:52:36 +0000 (09:52 -0700)]
crypt32: Fix duplicating a NULL CRL context.
Juan Lang [Fri, 16 Oct 2009 23:32:46 +0000 (16:32 -0700)]
crypt32: Implement CryptFindCertificateInStore for unicode strings.
Juan Lang [Fri, 16 Oct 2009 23:33:22 +0000 (16:33 -0700)]
crypt32: Test CertFindCertificateStore for finding Unicode strings.
Juan Lang [Mon, 19 Oct 2009 21:46:37 +0000 (14:46 -0700)]
crypt32/tests: Get rid of a couple of certs unneeded by a test.
Juan Lang [Mon, 19 Oct 2009 16:04:51 +0000 (09:04 -0700)]
crypt32: Add a safe default for unsupported critical extensions.
Francois Gouget [Sat, 17 Oct 2009 18:27:58 +0000 (20:27 +0200)]
crypt32: Fix compilation on systems that don't support nameless unions.
Juan Lang [Thu, 15 Oct 2009 18:52:25 +0000 (11:52 -0700)]
crypt32: Compare certificates in a consistent order.
Juan Lang [Thu, 15 Oct 2009 18:14:23 +0000 (11:14 -0700)]
crypt32: Avoid repeatedly decoding authority key id extensions when searching for a cert's issuer.
Juan Lang [Thu, 15 Oct 2009 17:54:09 +0000 (10:54 -0700)]
crypt32: Introduce a helper function to search for certificates that doesn't require recreating the search key for every certificate.
Juan Lang [Thu, 15 Oct 2009 17:46:44 +0000 (10:46 -0700)]
crypt32: Use helper function to search for certs.