Commit Graph

348 Commits

Author SHA1 Message Date
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
Juan Lang 02cb0c77d7 Implemented CryptHashCertificate. 2005-08-25 09:51:59 +00:00
Alexandre Julliard 702c959c7b Added missing ntdll imports. 2005-08-18 10:59:47 +00:00
Juan Lang 512e50ea1e Remove a test that fails under WinME. Reported and helpfully debugged
by Saulius Krasuckas.
2005-08-16 11:13:50 +00:00
Juan Lang 13766712f9 Encode/decode certs, with tests. 2005-07-14 10:14:22 +00:00
Juan Lang 307b2cd92e - encode/decode CERT_INFO, with tests
- a few more tests and bugfixes
2005-07-12 17:00:23 +00:00
Juan Lang 5701a0f0b8 Implement a few utility functions, with tests. 2005-07-07 20:27:55 +00:00
Juan Lang 417edaadcf Encode/decode CERT_PUBLIC_KEY_INFO, with tests. 2005-07-07 11:26:50 +00:00
Juan Lang 623e272c06 - implement encoding/decoding of cert extensions
- remove some unnecessary parameters to internal functions
- tests for cert extensions
2005-07-01 15:40:45 +00:00
Juan Lang d494c3ab21 - fix decoding of long-form data lengths
- use exception handling in decoding
- tests for these changes
2005-06-29 11:00:31 +00:00
Juan Lang 4e99be5baa - use exception handling in encoding
- consolidate integer encoders
2005-06-27 19:48:24 +00:00
Juan Lang 94bd145865 - implement encode and decode of BasicConstraints2, sequence of any
- fix encoding of integer value 0
- more tests
2005-06-27 09:42:15 +00:00
Alexandre Julliard aa0b9aac0d Sort entry points alphabetically. 2005-06-22 18:38:23 +00:00
Francois Gouget a1f4fac03c Fix the CryptEncodeObjectEx() prototype.
Fixes winapi_check warnings.
2005-06-17 21:26:53 +00:00
Juan Lang 2aa7f3c276 Add a few traces and comments. 2005-06-17 09:50:37 +00:00
Juan Lang 7f811b71ee - implement encoding and decoding of enumerated types, unsigned
integers, octet strings, and bit strings
- correct length handling
- the usual tests
2005-06-16 16:08:50 +00:00
Mike McCormack 65ad7da1f7 Fix some declaration and write string warnings. 2005-06-16 10:45:25 +00:00
Juan Lang 12a9ec138d Add encode/decode support for multi-byte integers. 2005-06-15 10:21:32 +00:00
Juan Lang 4b10986670 Add CertAlgIdToOID and CertOIDToAlgId, with tests. 2005-06-14 11:38:36 +00:00
Juan Lang 4d7e1e4baa - encode/decode X509_NAMEs for simple string encodings, with tests
- more tests and some fixes to other types
2005-06-13 11:39:35 +00:00
Juan Lang b06e8c5973 Cryp{En|De}codeObjectEx should return success if the input buffer is
NULL, some MS sample programs depend on that.  Fix functions and
tests.
2005-06-10 19:28:58 +00:00
Juan Lang cdc6772017 Implement asn.1 encoding/decoding of times, with tests. 2005-06-08 18:31:21 +00:00
Juan Lang 054a8fb604 Implement asn.1 decoding of integers, with tests. 2005-06-04 09:49:33 +00:00
Juan Lang 5b3499de68 Get rid of a magic number, and improve stubs of
CertOpenSystemStoreA/W.
2005-06-03 11:25:38 +00:00
Juan Lang 5af64e4869 Rearrange Crypt{De|En}codeObjectEx to make error handling more
natural.
2005-06-03 11:25:24 +00:00
Juan Lang 46185a9f8e - add some tests for OID functions
- implement encoding integers
2005-06-02 10:34:03 +00:00
Juan Lang 3abb8e63bf - implement Crypt{Get|Set}OIDFunctionValue
- fix bug and memory leak in last patch
2005-05-31 09:31:49 +00:00
Francois Gouget 62253b752f Assorted spelling fixes. 2005-05-30 09:56:56 +00:00
Juan Lang f8b2561488 Use registered DLLs for encode/decode. 2005-05-29 19:59:33 +00:00
Michael Jung 2d18c3aad3 It's sufficienct for Crypt[Un]ProtectData to acquire the crypto
context with the CRYPT_VERIFY_CONTEXT flag set.
2005-05-27 19:22:57 +00:00
Kees Cook 255541a16e Create basic test suite for CryptProtectData/CryptUnprotectData. 2005-05-24 09:58:26 +00:00
Kees Cook 5eb460953f Correct crypt context init in CryptProtectData/CryptUnprotectData. 2005-05-23 09:50:26 +00:00
Juan Lang b721153150 - more fully implement CryptRegisterOIDFunction
- implement CryptUnregisterOIDFunction
- add stubs for CryptEncodeObject(Ex)/CryptDecodeObject(Ex)
2005-05-20 19:37:26 +00:00
Kees Cook dc54dd1439 Implement CryptUnprotectData counterpart to CryptProtectData. 2005-05-20 19:23:48 +00:00
Kees Cook 146be8071f Implement CryptProtectData with best-guess encryption. 2005-05-20 19:15:55 +00:00
Kees Cook 0371d86cc1 Implement serialization and helper functions for CryptProtectData. 2005-05-20 18:57:31 +00:00
Kees Cook 919d53f22d Define structures for CryptProtectData/CryptUnprotectData calls. 2005-05-18 15:33:50 +00:00
Alexandre Julliard 34fa35dc99 Added rules for building import libraries in the individual dll
makefiles, and added support for building a .def.a static import
library too.
2005-05-09 14:42:30 +00:00
Alexandre Julliard d62356aa1e Added rules to build import libraries in the individual dll makefiles.
Generate import libraries with the right name right away instead of
using an intermediate .spec.def file.
2005-05-07 12:39:52 +00:00
Eric Pouech 0a258964c2 Const correctness fixes. 2004-11-30 21:38:57 +00:00
Mike McCormack 674e237231 Improve the CertStore code a little. 2004-11-10 01:31:50 +00:00
Stefan Leichter 727a596e9b Added missing line break. 2004-08-26 00:30:23 +00:00
Stefan Leichter 1550f5ef13 Added stub for CertFindCertificateInStore. 2004-08-09 22:55:35 +00:00
Francois Gouget 6a6c85c6d8 Make Unicode const strings static so they are not copied to the stack
each time we enter the function.
2004-04-19 20:12:14 +00:00
Alexandre Julliard 9e4ed6460c .spec.c files are no longer used for 32-bit dlls. 2004-03-24 03:36:44 +00:00
Juan Lang 1795994d53 - correct some prototypes, add some defines
- stub a couple more functions
2004-03-01 21:19:37 +00:00
Robert Shearman 8cea7b64c4 Added stub for CertFreeCertificateContext. 2004-01-02 03:56:43 +00:00
Mike McCormack f3eff5232e Implement CryptRegisterOIDFunction and CryptSIPAddProvider. 2003-12-11 04:26:05 +00:00
Mike McCormack 8b0d2891bf Stub implementations for CertCreateCRLContext and CertCloseStore. 2003-12-08 21:51:40 +00:00
Thomas Brix Larsen 16c1bf123d Added stub for CryptProtectData, so programs like Skype can start. 2003-12-02 03:47:44 +00:00
Dimitrie O. Paun fbdfd910c1 Remove SYMBOLFILE and LDDLLFLAGS from Makefiles. 2003-10-11 01:09:15 +00:00
Francois Gouget ae50013017 Fix the case of product and company names. 2003-09-08 19:38:45 +00:00
Alexandre Julliard e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Mike McCormack 6d3b14b581 Added stubs for CertSaveStore and CertEnumCertificatesInStore. 2003-05-12 03:21:45 +00:00
Alexandre Julliard 114a31a2a8 Take advantage of new winebuild syntax to remove redundant function
names in spec files.
2003-03-20 03:53:12 +00:00
Alberto Massari 3ea0cb3e86 Added stub for CryptUnprotectData. 2003-02-18 23:23:52 +00:00
Alexandre Julliard dbf8b78acd Added .spec.def files. 2002-12-12 22:04:04 +00:00
Andreas Mohr be163bf73b Added CertOpenStore stub. 2002-10-25 03:48:49 +00:00
Christian Neumair 0ee7073d4e Stub for the CryptRegisterOIDFunction function. 2002-10-15 02:14:30 +00:00
Patrik Stridvall 1b32e5eca9 Add and use the header files mssip.h and sipbase.h. 2002-09-09 19:35:42 +00:00
Dmitry Timoshkov d34bd643fe Added some more stubs. 2002-08-16 01:36:53 +00:00
Alexandre Julliard 77afd6c47e Made some more spec file entries optional or unnecessary.
Fixed a few DLLName/DLLFileName mismatches.
2002-06-21 19:15:45 +00:00
Mike McCormack 29853a9025 Added a few stubs. 2002-06-13 22:02:17 +00:00
Alexandre Julliard 2ab7625934 Removed most imports of ntdll since we no longer import Wine internal
functions from there.
2002-05-17 03:37:12 +00:00
Alexandre Julliard ad53383f9b Added winebuild support for generating a .dbg.c file containing the
debug channels definitions.
Made win32 the default type for spec files.
Ignore C compiler in winebuild so we can simply pass it $(DEFS).
Removed type win32 and debug_channels from spec files.
Fixed winebuild to always generate correct C identifiers (reported by
Vincent Béron).
2002-05-14 20:54:58 +00:00
Alexandre Julliard 67371bcc8d Added -res option to specify resources on winebuild command-line.
Added -exe mode to generate a .spec.c for an exe without having to
provide a .spec.
Removed some no longer needed spec files.
Removed .dll extension in makefiles import specifications.
2002-05-11 23:06:32 +00:00
Alexandre Julliard 32459912dc Moved imports specification from the .spec into the Makefile so that
it can be used on platforms that don't build a .spec.c file.
2002-05-09 00:05:48 +00:00
Patrik Stridvall fc2be7edcc Fixed some issues found by winapi_check. 2002-04-29 18:48:56 +00:00
Stefan Leichter f25efa0660 Compile fixes for gcc 2.7.2.3. 2002-04-11 17:34:46 +00:00
Mike McCormack 0bb784f69c Added some stubs. 2002-04-03 19:55:13 +00:00
Dimitrie O. Paun 00df897119 Fix two compilation warnings. 2002-04-02 19:16:08 +00:00
Alexandre Julliard c1bfca04e1 Changed builtin dlls file names to make it clear they are not normal
Unix libraries, and install them in $libdir/wine instead of $libdir to
avoid name conflicts in /usr/lib.
2002-03-20 22:19:06 +00:00
Patrik Stridvall 651a8ba880 Added some defines for compatibility with Windows headers. 2002-02-15 19:12:35 +00:00
Travis Michielsen 0f21ee8e0a Added crypt32.dll stub. 2002-01-10 19:41:11 +00:00