Commit Graph

323 Commits

Author SHA1 Message Date
Francois Gouget e72b9f0e55 crypt32: Fix compilation with gcc 2.95. 2006-06-26 13:04:47 +02:00
Juan Lang 77ea583ab0 crypt32: Implement CertGetCRLFromStore.
- implement CertGetCRLFromStore, with tests
- update tests for CRL revocation functions to show name isn't checked
2006-06-22 12:29:04 +02:00
Juan Lang e8992af0fa crypt32: Implement some CRL verification functions. 2006-06-21 11:15:49 +02:00
Juan Lang aeb8036486 wincrypt.h: Add more definitions and prototypes. 2006-06-21 11:15:41 +02:00
Juan Lang 6f75b5e4ad crypt32: Rearrange functions a bit. 2006-06-20 20:37:02 +02:00
Juan Lang cb2e21ffb4 crypt32: Encode/decode CRL issuing dist points. 2006-06-20 11:28:22 +02:00
Juan Lang 13e006a715 crypt32: Simplify CRL creation.
Decoding already handles signed and unsigned CRLs, so don't duplicate
that in CertCreateCRLContext.
2006-06-20 11:05:26 +02:00
Juan Lang 661aecc761 crypt32: Simplify certificate creation.
Decoding already handles signed and unsigned certs, so don't duplicate
that in CertCreateCertificateContext.
2006-06-20 11:05:18 +02:00
Juan Lang 1811acc2fa crypt32: Fix decoding signed certs and CRLs. 2006-06-19 22:55:05 +02:00
Juan Lang bc2d4a71b4 crypt32: Correct CRL tests, and fix CRL encoding/decoding accordingly. 2006-06-16 11:30:10 +02:00
Mike McCormack 4dace74bd8 crypt32: Fix a cast for Win64. 2006-06-14 12:47:05 +02:00
Alexandre Julliard dbd473ff79 crypt32: Use unsigned int instead of size_t to avoid printf format warnings. 2006-06-13 14:14:00 +02:00
Alexandre Julliard 52d6077f8b crypt32/tests: Don't use sizeof in ok() to avoid printf format warnings. 2006-06-13 14:02:03 +02:00
Alexandre Julliard 93fd4524e4 crypt32/tests: Use lstrlenA instead of strlen in ok() to avoid printf format warnings. 2006-06-13 13:56:39 +02:00
Alexandre Julliard 11b9d02048 crypt32: Make some variables static and/or const. 2006-06-12 13:45:11 +02:00
Andrew Talbot 63efd7f8e6 crypt32: Write-strings warning fix. 2006-06-07 15:24:05 +02:00
Juan Lang dd4bd4ad28 crypt32: Implement X509_NAME_VALUE encoding/decoding. 2006-06-03 11:55:01 +02:00
Juan Lang 9879a47f9d crypt32: Add name value tests.
Add tests for name values, and move tests for different string
encodings to there.
2006-06-02 20:42:48 +02:00
Juan Lang a7f6a0128c crypt32: Remove exception handling from internal decoding functions. 2006-06-02 11:46:44 +02:00
Juan Lang 6d668d9d38 crypt32: Add a couple CRL encoding tests, one that shows a problem. 2006-06-02 11:46:23 +02:00
Juan Lang 3174806f86 crypt32: Make base64 tests loadable on win9x. 2006-06-02 11:20:41 +02:00
Andrew Talbot 9a1e6aae55 crypt32/tests: Write-strings warning fix. 2006-06-01 11:08:21 +02:00
Juan Lang 23791c2510 crypt32: Implement CryptBinaryToStringA and CryptStringToBinaryA.
Implement CryptBinaryToStringA and CryptStringToBinaryA based on Kai
Blin's base64 encoder/decoder.
2006-05-31 11:58:40 +02:00
Andrew Talbot 1523b8f19e crypt32: Write-strings warning fix. 2006-05-31 11:44:20 +02:00
Juan Lang b29c2335b8 crypt32: Implement CertVerifyCRLTimeValidity and partially implement CertVerifySubjectCertificateContext. 2006-05-26 20:20:50 +02:00
Juan Lang dc660a81ed crypt32: Combine redundant code. 2006-05-26 20:16:07 +02:00
Alexandre Julliard 52476a1124 Fixed a couple of instances of the old FSF address that crept back in. 2006-05-26 12:08:32 +02:00
Juan Lang f94d49dcd4 crypt32: Implement CertSerializeCRLStoreElement. 2006-05-26 11:56:45 +02:00
Juan Lang c4f2bcf3d1 crypt32: Add support for CRLs. 2006-05-25 20:19:12 +02:00
Juan Lang 3be75cebe8 crypt32: Use public functions when finding certificates. 2006-05-25 20:17:55 +02:00
Mike McCormack 136804de7e crypt32: Fix a integer to pointer cast. 2006-05-25 10:44:52 +02:00
Juan Lang d2fd034b85 crypt32: Add one more test of CertAddEncodedCertificateToStore. 2006-05-25 10:37:36 +02:00
Juan Lang 9f1dd10a48 crypt32: Move cert functions that don't depend on the implementation of stores to cert.c. 2006-05-25 10:37:28 +02:00
Juan Lang e1afe33ac7 crypt32: Test and fix a couple CertAddCertificateContextToStore corner cases. 2006-05-24 10:24:54 +02:00
Juan Lang e48a0a3c23 crypt32: Abstract contexts.
- create an abstract interface for contexts, and use it for certificates
- create a simple context list, and use it for memory stores
2006-05-23 17:52:40 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Juan Lang b564ef5b03 crypt32: Move CertFindCertificateInStore and related functions to cert.c. 2006-05-20 13:58:16 +02:00
Juan Lang d9a027952d crypt32: Move context interface definition to common header. 2006-05-20 13:57:43 +02:00
Juan Lang 0379d421e0 crypt32: Add stubs for CertDuplicateCRLContext and CertDuplicateCTLContext. 2006-05-18 10:47:35 +02:00
Juan Lang 06bc59cd53 crypt32: Get rid of CRYPT_CreateCertificateContext, it's not needed anymore. 2006-05-17 10:41:30 +02:00
Juan Lang f224b34e60 crypt32: Split the unwieldy encode.c into two files. 2006-05-16 20:28:39 +02:00
Juan Lang 50f9defece crypt32: Support CERT_ISSUER_SERIAL_NUMBER_MD5_HASH_PROP_ID implicit property. 2006-05-16 20:25:17 +02:00
Juan Lang 9b589c3556 crypt32: Use the caller-supplied encoding type when decoding certs. 2006-05-16 20:25:01 +02:00
Juan Lang 73e825fb37 crypt32: Add more tests for adding certs to a store. 2006-05-16 20:24:52 +02:00
Juan Lang d0505de674 crypt32: Implement CertCompare functions, with tests. 2006-05-16 20:24:12 +02:00
Juan Lang 24157e0f74 crypt32: Test importing public keys from a certificate. 2006-05-16 12:41:04 +02:00
Juan Lang 769a52f831 crypt32: Avoid a use-after-free bug in tests. 2006-05-16 12:40:55 +02:00
Juan Lang 7e9ba76da1 crypt32: Use the HRESULT synonyms for converted Win32 error codes. 2006-05-15 11:06:04 +02:00
Juan Lang ed66801d3a crypt32: Partially implement CertGetIssuerCertificateFromStore. 2006-05-10 11:21:20 +02:00
Juan Lang 9adcf560ae crypt32: Implement CRYPT_VERIFY_CERT_SIGN_ISSUER_CERT in CryptVerifyCertificateSignatureEx. 2006-05-10 11:20:26 +02:00
Juan Lang 2a378eff3b crypt32: Simplify OID decoding
Use a more direct function to decode OIDs, instead of the bizarre
wrapper.
2006-05-09 11:55:07 +02:00
Alexandre Julliard 4d574a41b5 crypt32: Fixed day/month mismatch in time encoding routines. 2006-04-13 11:45:12 +02:00
Alexandre Julliard ee05e245a4 crypt32: Avoid crash on NULL pointer in trace. 2006-04-13 11:44:52 +02:00
Juan Lang 95859a1d6a crypt32: Fix a typo caught by coverity. 2006-04-11 11:23:39 +02:00
Juan Lang 992a1af44b crypt32: Implement CertCreateSelfSignCertificate, with some tests. 2006-04-06 11:38:16 +02:00
Juan Lang 309b26801e crypt32: Add support for the CERT_KEY_PROV_INFO_PROP_ID certificate property. 2006-04-06 11:35:48 +02:00
Juan Lang 04ed9c2a57 crypt32: Tiny fixes. 2006-03-30 21:55:07 +02:00
Juan Lang 5eadd8c791 crypt32: Fix certificate adding
- Implement add disposition in CertAddCertificateContextToStore,
  rather than in each store.
- Add a few more tests.
2006-03-30 21:55:00 +02:00
Mike McCormack 32f6b71c76 crypt32: Fix a warning. 2006-03-18 18:04:14 +01:00
Juan Lang ae5823db3f crypt32: Implement CertGetSubjectCertificateFromStore. 2006-03-17 13:11:21 +01:00
Juan Lang b40a406dc3 crypt32: Tighten CertDuplicateCertificateContext test.
Test that the return from CertDuplicateCertificateContext is the same
as its parameter.
2006-03-16 16:21:59 +01:00
Juan Lang 0811851b94 crypt32: Abstract contexts.
- create a base cert context, and make functions unaware whether
  they're dealing with the base or derived type
- simplify stores as a result
2006-03-13 14:19:31 +01:00
Juan Lang 91b80fc8e2 crypt32: Move context properties to a separate file. 2006-03-10 21:41:38 +01:00
Juan Lang 89b3191c7c crypt32: Implement CertGetValidUsages. 2006-03-08 11:33:53 +01:00
Juan Lang 78872852fd crypt32: Simplify stores.
Ref count cert context references, and eliminate the DupCert function
from stores.
2006-03-07 10:40:18 +01:00
Juan Lang c3a125179d crypt32: Move serialization functions to serialize.c. 2006-03-04 16:12:28 +01:00
Juan Lang 8949d29de2 crypt32: Implement CertDuplicateStore. 2006-03-03 13:17:34 +01:00
Jeremy White efccbbfbea crypt32: More gcc 2.95 adjustments. 2006-03-01 20:05:26 +01:00
Juan Lang 661d80708b crypt32: Use CertFindCertificateInStore to simplify adding certificates. 2006-03-01 19:53:24 +01:00
Juan Lang ba2c1e5116 crypt32: Eliminate an unnecessary function pointer from stores. 2006-03-01 11:05:28 +01:00
Eric Pouech d6201e2375 crypt32: Don't access a blob after freeing it. 2006-02-28 12:13:45 +01:00
Juan Lang c109e2a33e crypt32: Correct compile problem on gcc 2.95. 2006-02-28 12:02:41 +01:00
YunSong Hwang b97c880cb5 crypt32: Add Korean translation. 2006-02-28 12:02:26 +01:00
Henning Gerhardt 39be679a45 crypt32: Add German resource file. 2006-02-27 12:19:03 +01:00
Alexander N. Sørnes 46a96312e5 Updated/new Norwegian Bokmål resources. 2006-02-24 21:11:03 +01:00
Juan Lang b48f865f7d crypt32: Use public functions during serialization rather than relying
on the internal format of a certificate.
2006-02-24 11:26:20 +01:00
Juan Lang 690f98408b crypt32: implement CryptEnumOIDInfo and CryptFindOIDInfo.
- implement CryptEnumOIDInfo and CryptFindOIDInfo
- implement CertOIDToAlgId and CertAlgIdToOID using CryptFindOIDInfo
2006-02-24 11:26:01 +01:00
Juan Lang 6da92ded75 crypt32: Move OIDToAlgID and AlgIDToOID to oid.c. 2006-02-23 11:14:13 +01:00
Juan Lang aa6dc003a4 crypt32: Implement CertFindCertificateInStore, with tests. 2006-02-23 11:13:45 +01:00
Juan Lang 5d3889412d crypt32: Tidy up tests.
Fix up encoded data to use BYTE arrays rather than strings, and remove
extraneous NULL bytes from the end of some of them
2006-02-22 18:20:03 +01:00
Juan Lang d740f342b9 crypt32: Add stubs for CryptFindOIDInfo and I_CryptInstallAsn1Module.
Move CryptVerifyMessageSignature stub to main.c.
2006-02-22 18:19:49 +01:00
Juan Lang 079afa21de crypt32: Implement enhanced key usage.
Implement CertGetEnhancedKeyUsage, CertSetEnhancedKeyUsage,
CertAddEnhancedKeyUsageIdentifier, and
CertRemoveEnhancedKeyUsageIdentifier.
2006-02-18 15:49:54 +01:00
Juan Lang 2002e227cf crypt32: Move certificate store functions to their own file. 2006-02-17 17:36:52 +01:00
Juan Lang 11fe62de8f crypt32: More encoding/decoding.
Add support for encoding/decoding basic constraints and enhanced key
usage, with tests.
2006-02-16 19:39:27 +01:00
Juan Lang 15e5dc29c1 crypt32: Simplify CertOpenSystemStore, fix CertDuplicateCertificateContext.
- now that CertOpenStore is correct for system stores, simplify
  CertOpenSystemStore
- correct CertDuplicateCertificateStore, with a test
2006-02-16 19:38:45 +01:00
Juan Lang e9c44cc0c4 crypt32: Fix system stores and a memory leak.
- system stores open both HKLM and HKCU for "current user" locations
- fix a memory leak in certificate properties
2006-02-16 12:18:37 +01:00
Juan Lang 8e7f30ef11 crypt32: Partially implement CertGetNameString. 2006-02-16 12:08:19 +01:00
Juan Lang db73ae9e3d crypt32: Rename a variable for clarity. 2006-02-15 11:51:24 +01:00
Juan Lang 09b6cf971f crypt32: Output string type in trace. 2006-02-15 11:51:16 +01:00
Hans Leidekker c27526743b crypt32: Add a stub for CryptQueryObject. 2006-02-13 13:22:25 +01:00
Juan Lang 4b689fbbb5 crypt32: Move break statement to the correct spot. 2006-02-10 14:50:00 +01:00
Juan Lang 69698f9b44 crypt32: Fix up decoding.
- don't use the no copy flag when decoding, the lifetime of the buffer
  to decode isn't guaranteed
- remove some extraneous ternary comparisons
- fix a comment
2006-02-09 12:09:28 +01:00
Juan Lang 02c4956157 crypt32: Fix a fixme, and remove an old comment. 2006-02-09 12:09:01 +01:00
Alexandre Julliard be22a96847 Include wine/port.h in files that use exceptions. 2006-02-07 16:31:21 +01:00
Francois Gouget 379b62c04e Assorted spelling fixes. 2006-02-06 20:58:36 +01:00
Juan Lang d17b730611 crypt32: Fix Mingw compile. 2006-02-05 12:18:39 +01:00
Juan Lang b489f38193 crypt32: Add stub for CryptEnumOIDInfo. 2006-02-03 12:28:33 +01:00
Juan Lang 66a303d107 crypt32: Support external providers.
- add support for external store providers
- rewrite registry stores as a provider
- fix a memory leak
2006-02-02 13:19:39 +01:00
Juan Lang ede2e24a6a crypt32: Implement CertRDNValueToStrW and CertNameToStrW, with tests. 2006-02-02 13:19:30 +01:00
Juan Lang 6a3b3f8635 crypt32: Implement CertRDNValueToStrA and CertNameToStrA, with tests. 2006-02-01 13:50:18 +01:00
Juan Lang faeac96770 crypt32: Correct X509_NAME decoding, and more stringent tests. 2006-01-31 12:22:15 +01:00
Mike McCormack e2020e1b7e crypt32: Add stub implementations of some crypto functions used by IE6 install. 2006-01-23 11:54:58 +01:00
Jeremy White 2c79ae4746 crypt32: Preserve gcc 2.95 compatibility. 2006-01-13 13:53:05 +01:00
Juan Lang 79575a8aff crypt32: Fix a test that fails on Windows. 2006-01-11 20:57:41 +01:00
Robert Shearman 811fb7614c Call DisableThreadLibraryCalls for DLLs that don't need thread
creation/destruction notifications.
2006-01-09 17:17:37 +01:00
Juan Lang a67b6f49ec crypt32: Implement more implicit properties, with tests. 2005-12-17 12:24:59 +01:00
Alexandre Julliard ae964ac801 Take advantage of the __EXCEPT_PAGE_FAULT macro. 2005-12-16 17:17:57 +01:00
Juan Lang 628ede4783 crypt32: Implement CRLDistPoints encoding/decoding.
- rewrite sequence decoding to support context-specific tags, and
  eliminate duplicated code
- implement encoding and decoding of CRLDistPoints
2005-12-16 12:41:28 +01:00
Juan Lang 07dfb1ae27 crypt32: Decode cleanups.
- implement a helper to decode sequences of like types
- use helper functions wherever applicable when decoding
- correct "expected" vs. "got" usage in tests
- fix a few other small bugs
2005-12-13 11:11:25 +01:00
Juan Lang f702794f35 Implement more OID support functions.
Use the exported OID support functions internally.
Move OID support functions and stubs to a separate file.
2005-12-02 11:28:09 +01:00
Stefan Leichter a03d64b1e5 Added stub for CryptVerifyMessageSignature. 2005-11-30 12:48:51 +01:00
Juan Lang 43d855530b Fix parameter count on some stubs (thanks to Marcus Meissner for
spotting that.)  Add a few more stubs.
2005-11-28 20:52:13 +01:00
Alexandre Julliard 0ec7e1a591 Renamed all .cvsignore files to .gitignore. 2005-11-26 13:10:33 +01:00
Juan Lang fd7a60bc8d Fix some memory leaks. 2005-11-23 15:12:56 +01:00
Ge van Geldorp 461fe11243 Don't redefine ASN_OCTETSTRING, it's already defined in snmp.h. 2005-11-21 13:35:26 +00:00
Saulius Krasuckas 9d2c6a9ce9 Don't call missing API function. 2005-11-14 11:22:34 +00:00
Saulius Krasuckas 1d8d0dd0da Make Crypt32 tests loadable on Win98. 2005-11-08 10:57:28 +00:00
Juan Lang 7e5a079d25 Implement CertSignSignature and CertVerifySignature(Ex). 2005-10-31 10:04:06 +00:00
Juan Lang 2d6d002b44 Use CryptMem functions for internal memory allocation. 2005-10-28 10:09:26 +00:00
Juan Lang c534fa1e82 Implement CryptMem and undocumented I_Crypt*Tls functions, with tests. 2005-10-27 10:24:20 +00:00
Juan Lang f52d0a6c80 Use correct names when loading registered OID functions. 2005-10-04 11:29:19 +00:00
Juan Lang 5b0812fbcf Make CryptImport/ExportPublicKeyInfoEx behave the way MSDN describes
them, and a couple of tests.
2005-09-30 10:35:31 +00:00
Alexandre Julliard 7e22be4d84 We are no longer generating .dbg.c files. 2005-09-29 10:35:58 +00:00
Juan Lang 69dfea8f44 Encode RSA public key modulus as unsigned integer, with tests. 2005-09-28 18:12:29 +00:00
Juan Lang d6a89fbae3 Implement CryptImport/ExportPublicKeyInfo. 2005-09-28 10:15:37 +00:00
Stefan Leichter 443910ba27 Added stubs for CryptInitOIDFunctionSet and
CryptUnregisterDefaultOIDFunction.
2005-09-15 09:31:20 +00:00
Mike McCormack b5f878936f Fix gcc 4.0 warnings. 2005-09-14 10:07:15 +00:00
Mike McCormack bfb04ad7c0 Fix gcc 4.0 warnings. 2005-09-13 10:33:39 +00:00
Mike McCormack 35c20561a7 Fix gcc 4.0 warnings. 2005-09-12 15:28:15 +00:00
Juan Lang 807b11b363 When decoding a signed cert, make sure it's really a cert. 2005-09-12 10:08:34 +00:00
Juan Lang 25cb6e081f - call CertFreeCertificateContext from CertDeleteCertificateFromStore
- fix some ref counting problems
2005-09-09 09:09:45 +00:00
Juan Lang 300c10a3b7 - implement system stores
- remove an intermittently failing registry test
2005-09-08 18:56:14 +00:00
Alexandre Julliard 38673cc01d Avoid a couple of 'clobbered by longjmp' warnings. 2005-09-08 11:27:26 +00:00
Juan Lang 1cf56599bd Implement system registry stores. 2005-09-08 11:00:51 +00:00
Juan Lang e385fc5c99 Convert a few more constants from strings to byte arrays. 2005-09-08 11:00:24 +00:00
Juan Lang 5ef9d88cab Implement registry stores. 2005-09-07 13:25:56 +00:00
Mike McCormack dc1c62a592 Fix gcc 4.0 warnings. 2005-09-07 11:31:17 +00:00
Mike McCormack d168219849 Fix gcc 4.0 warnings. 2005-09-06 10:26:13 +00:00
Juan Lang 3bf9c165fa Correct a test that incorrectly showed signed certs couldn't be added
to a mem store.
Support signed certs in mem stores.
Correct use of a freed pointer.
2005-09-03 15:02:57 +00:00
Juan Lang 160b9149a1 Improve CryptAlgIdToOID/CryptOIDToAlgId tests, and prevent a crash in
CryptOIDToAlgId.
2005-09-03 09:36:55 +00:00
Juan Lang a5082b2544 Correct a bunch of lurking asn.1 decode bugs. 2005-09-03 09:36:02 +00:00
Juan Lang 8c08dbfd12 Implement encoding/decoding RSA public keys. 2005-09-02 14:38:39 +00:00
Juan Lang 6389dbc979 Implement CertAddSerializedElementToStore. 2005-09-02 14:38:05 +00:00
Kevin Koltzau 95a173a52b Fix warnings in 64bit. 2005-09-02 11:32:17 +00:00
Juan Lang 9e8c0bbdb3 Implement collection stores. 2005-08-30 09:59:03 +00:00
Juan Lang 7fe3f50848 Implement encoding/decoding of CERT_ALT_NAME_INFOs and CRL_INFOs. 2005-08-29 14:12:44 +00:00
Juan Lang 8d1cf4ebec Implemented memory cert stores. 2005-08-29 12:18:00 +00:00
Mike McCormack a107234dcd gcc 4.0 warning fixes. 2005-08-29 09:38:19 +00:00
Alexandre Julliard cc4da88563 Explicitly import kernel32 in tests that use it. 2005-08-27 09:27:09 +00:00
Juan Lang 390d502887 Added a bunch of stubs. 2005-08-26 08:46:48 +00:00