summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStef Walter <stef@thewalter.net>2014-08-07 08:37:50 +0200
committerStef Walter <stef@thewalter.net>2014-08-07 08:37:50 +0200
commit08a017dbae88f6e57eee387b5984d0494e62d976 (patch)
treecce35aa0044c80fa703a84725956846266390c81
parentc61187f879395bb334edba39ee6dfb91f1a9e59b (diff)
downloadp11-kit-08a017dbae88f6e57eee387b5984d0494e62d976.tar.gz
p11-kit: Tweak last commit, handle the not-forked case
When we hadn't forked, but were just not initialized, still return CKR_CRYPTOKI_NOT_INITIALIZED from managed modules.
-rw-r--r--p11-kit/modules.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/p11-kit/modules.c b/p11-kit/modules.c
index 293ea4d..9eaff40 100644
--- a/p11-kit/modules.c
+++ b/p11-kit/modules.c
@@ -1590,7 +1590,10 @@ managed_C_Finalize (CK_X_FUNCTION_LIST *self,
p11_lock ();
pid = getpid ();
- if (managed->initialized != pid) {
+ if (managed->initialized == 0) {
+ rv = CKR_CRYPTOKI_NOT_INITIALIZED;
+
+ } else if (managed->initialized != pid) {
/*
* In theory we should be returning CKR_CRYPTOKI_NOT_INITIALIZED here
* but enough callers are not completely aware of their forking.