diff options
Diffstat (limited to 'ckcapi-session.c')
-rw-r--r-- | ckcapi-session.c | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/ckcapi-session.c b/ckcapi-session.c index e54fcdf..46de60a 100644 --- a/ckcapi-session.c +++ b/ckcapi-session.c @@ -20,6 +20,12 @@ #include <stdlib.h> #include "ckcapi.h" +#include "ckcapi-builtin.h" +#include "ckcapi-cert.h" +#include "ckcapi-object.h" +#include "ckcapi-session.h" +#include "ckcapi-token.h" +#include "ckcapi-trust.h" static CkCapiArray* all_sessions = NULL; @@ -573,7 +579,18 @@ gather_objects(CkCapiSession* sess, CK_ATTRIBUTE_PTR match, if(ret != CKR_OK) return ret; - /* Search for certificates */ + /* + * Search through certificates. + * + * We always do this search first. In Windows a lots hangs off + * the certificates. For example private keys are not contained + * in the same stores that certificates are in. There are a different + * set of key containers many of which can be used together + * with a certificate stored in any store. + * + * The trust objects we expose also depend on the certificates + * loaded. + */ ret = ckcapi_cert_find(sess, ocls, match, count, arr); if(ret != CKR_OK) return ret; |