Blob Blame History Raw
From e1f8d4e38f4ad08fb407691a3f59edc19a1f15e2 Mon Sep 17 00:00:00 2001
From: Peter Jones <pjones@redhat.com>
Date: Wed, 17 Oct 2012 14:41:18 -0400
Subject: [PATCH 14/42] Do register_oids() where we're doing NSS_Init()

Signed-off-by: Peter Jones <pjones@redhat.com>
---
 src/cms_common.c | 8 --------
 src/daemon.c     | 7 +++++++
 2 files changed, 7 insertions(+), 8 deletions(-)

diff --git a/src/cms_common.c b/src/cms_common.c
index a8e34dd..6188e6e 100644
--- a/src/cms_common.c
+++ b/src/cms_common.c
@@ -179,16 +179,8 @@ cms_common_log(cms_context *ctx, int priority, char *fmt, ...)
 int
 cms_context_init(cms_context *cms)
 {
-	static int first_time = 1;
 	memset(cms, '\0', sizeof (*cms));
 
-	if (first_time) {
-		SECStatus status = register_oids(cms);
-		if (status != SECSuccess)
-			return -1;
-		first_time = 0;
-	}
-
 	cms->log = cms_common_log;
 
 	cms->arena = PORT_NewArena(DER_DEFAULT_CHUNKSIZE);
diff --git a/src/daemon.c b/src/daemon.c
index f44f069..085cfec 100644
--- a/src/daemon.c
+++ b/src/daemon.c
@@ -917,6 +917,13 @@ daemonize(cms_context *cms_ctx, int do_fork)
 		exit(1);
 	}
 
+	status = register_oids(ctx.backup_cms);
+	if (status != SECSuccess) {
+		ctx.backup_cms->log(ctx.backup_cms, ctx.priority|LOG_NOTICE,
+			"Could not register OIDs\n");
+		exit(1);
+	}
+
 	if (do_fork) {
 		int fd = open("/dev/zero", O_RDONLY);
 		close(STDIN_FILENO);
-- 
1.7.12.1