Commit Graph
98 Commits
Author SHA1 Message Date
Martin Willi 8bd6a30af1 Add a return value to hasher_t.get_hash() 2012-07-16 14:55:06 +02:00
Tobias Brunner 39e807728e RNGs' get_bytes and allocate_bytes return boolean 2012-07-16 14:53:34 +02:00
Tobias Brunner 26d77eb3e6 Centralized thread cancellation in processor_t
This ensures that no threads are active when plugins and the rest of the
daemon are unloaded.

callback_job_t was simplified a lot in the process as its main
functionality is now contained in processor_t.  The parent-child
relationships were abandoned as these were only needed to simplify job
cancellation.
2012-06-25 17:38:59 +02:00
Tobias Brunner a190ec0ac5 Compiler warnings fixed. 2012-02-14 16:09:44 +01:00
Tobias Brunner 4de8f280e1 pkcs11: Fixed a bug when creating public keys. 2011-11-09 17:39:24 +01:00
Tobias Brunner f3eef176f4 Common spelling errors fixed. 2011-11-03 19:30:17 +01:00
Tobias Brunner 1bdd255ed3 pkcs11: Make public key operations on tokens optional. 2011-11-03 17:56:40 +01:00
Tobias Brunner 5b85b94e27 pkcs11: Make sure a key can be used for a given signature scheme. 2011-11-02 20:27:55 +01:00
Tobias Brunner 58d0a8d49b pkcs11: Register ECDSA feature. 2011-11-02 20:27:55 +01:00
Tobias Brunner fd48b220ed pkcs11: We have to create our own hashes for some signature schemes. 2011-11-02 20:27:55 +01:00
Tobias Brunner 30a3ede8ce pkcs11: Lookup the public key of a private key by CKA_ID.
Currently this only works if a public key object with the same ID is
available, if there isn't one we could search for a certificate with the
same ID and extract the key from there.
2011-11-02 20:27:55 +01:00
Tobias Brunner 5d2fccf439 pkcs11: Search for private keys in a more generic way.
Also, don't extract the public key directly from the private key. Some
tokens actually do not return the public exponent (it's not required).
We have to find a different way to get the public key.
2011-11-02 20:27:55 +01:00
Tobias Brunner 9e3b1e1495 pkcs11: Added support to encode ECDSA public keys. 2011-11-02 20:27:55 +01:00
Tobias Brunner 36d1627f6e pkcs11: Parse ECDSA public keys and find/create them on tokens. 2011-11-02 20:27:55 +01:00
Tobias Brunner 574261163f pkcs11: Added generic functions to find/create public keys on tokens. 2011-11-02 20:27:55 +01:00
Tobias Brunner a8084ee011 pkcs11: Store public key length in bits. 2011-11-02 20:27:55 +01:00
Tobias Brunner 8859c1f26b pkcs11: Fix encoding of RSA public keys. 2011-11-02 20:27:55 +01:00
Tobias Brunner dae19d448d pkcs11: Use create_object_attr_enumerator to encode RSA public key. 2011-11-02 20:27:54 +01:00
Tobias Brunner b0319fe860 pkcs11: Instead of a mutex use a new session to do multipart operations. 2011-11-02 20:27:54 +01:00
Tobias Brunner c198525104 pkcs11: Function added to retrieve multiple attributes from a single object. 2011-11-02 20:27:54 +01:00
Tobias Brunner 817d165cbc pkcs11: Memory leak fixed in DH/ECDH implementation. 2011-11-02 20:27:54 +01:00
Tobias Brunner 43cd036a77 pkcs11: Invalid free fixed in DH/ECDH implementation. 2011-11-02 20:27:54 +01:00
Tobias Brunner 50ad6eacb6 pkcs11: Changed how pkcs11-manager is initialized.
The manager is now created directly, but events and certificate loading
is deferred.
2011-11-02 20:27:54 +01:00
Tobias Brunner cf9d45ea08 pkcs11: Add attributes to specify what we use the DH/ECDH keys for. 2011-11-02 20:27:54 +01:00
Tobias Brunner 23b50b776b pkcs11: Use callback registration for pkcs11-manager.
Otherwise a plugin providing X509 decoding capabilities might be unloaded
before the manager which will result in a segmentation fault when
certificates in the manager's credential sets are to be destroyed.
2011-10-31 18:45:37 +01:00
Tobias Brunner 10b82be61f pkcs11: Merged the ECDH into the DH implementation. 2011-10-31 18:45:37 +01:00
Tobias Brunner 89de89be57 pkcs11: Use get_ck_attribute for ECDH. 2011-10-31 18:45:37 +01:00
Tobias Brunner cac6853180 pkcs11: Use get_ck_attribute for DH. 2011-10-31 18:45:37 +01:00
Tobias Brunner 8531106578 pkcs11: Method added to library to extract a single attribute from an object. 2011-10-31 18:45:36 +01:00
Tobias Brunner 6a5020fc67 pkcs11: Added names for CKA_* constants. 2011-10-31 18:45:36 +01:00
Tobias Brunner 4e346b1f97 pkcs11: Added support for ECDH. 2011-10-31 18:45:36 +01:00
Tobias Brunner 612e431305 pkcs11: Added definitions needed for ECDH to pkcs11.h. 2011-10-31 18:45:36 +01:00
Tobias Brunner 7c78a6e631 pkcs11: Specify object class and key type when deriving DH secrets.
pkcs11_softtoken on OpenSolaris requires this (probably others too).
2011-10-31 18:45:36 +01:00
Tobias Brunner b730fd6fbd pkcs11: Add features support. 2011-10-31 18:45:36 +01:00
Tobias Brunner 1bb5d7c3cb pkcs11: Added support for DH. 2011-10-31 18:45:36 +01:00
Tobias Brunner df241121fd pkcs11: Error message fixed. 2011-10-31 18:45:35 +01:00
Tobias Brunner 1bb522bc34 pkcs11: Added support to generate random numbers on a token. 2011-10-31 18:45:35 +01:00
Tobias Brunner deba3da5b0 pkcs11: Properly destroy mutex in pkcs11_hasher if no token found. 2011-10-31 18:45:29 +01:00
Martin Willi 071903235a Register manager of pkcs11 plugin as library object 2011-08-24 15:45:59 +02:00
Tobias Brunner f3bb1bd039 Fixed common misspellings.
Mostly found by 'codespell'.
2011-07-20 16:14:10 +02:00
Martin Willi ea90042233 Provide recursive mutex' just in case the PKCS#11 library requires it 2011-06-01 12:03:44 +02:00
Martin Willi 14bf2f689d Use CRITICAL job priority class for long running dispatcher jobs 2011-05-16 15:24:15 +02:00
Martin Willi 5b0bcfb1fc Revert alloc_str changes
This reverts commit fdead26ffe.
This reverts commit 3e2419ebe3.
This reverts commit 17ce69b47a.
2011-04-21 13:35:31 +02:00
Martin Willi 3e2419ebe3 Use thread save settings alloc_str function where appropriate 2011-04-21 10:48:16 +02:00
Martin Willi c55818ebb0 Added a (not yet implemented) plugin_t method to reload plugin configuration 2011-04-15 10:07:13 +02:00
Martin Willi 787b5884aa Added a get_name() function to plugin_t, create_plugin_enumerator enumerates over plugin_t 2011-04-15 10:07:12 +02:00
Andreas Steffen a79eba2e9c corrected pkcs11 error message 2011-03-01 22:19:58 +01:00
Martin Willi 33bfdf6f37 Fixed public key construction from PKCS#11 private key 2010-12-23 10:29:01 +01:00
Andreas Steffen 5932f41fcc trace back crypto algorithms to the plugins that registered them 2010-12-18 16:31:12 +01:00
Martin Willi b78ca4b04c Do not query for CKA_ALWAYS_AUTHENTICATE if PKCS#11 Cryptoki version < 2.20 2010-11-18 08:56:12 +01:00