summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--security/nss/cmd/shlibsign/shlibsign.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/security/nss/cmd/shlibsign/shlibsign.c b/security/nss/cmd/shlibsign/shlibsign.c
index 28d7c7f8a..701803def 100644
--- a/security/nss/cmd/shlibsign/shlibsign.c
+++ b/security/nss/cmd/shlibsign/shlibsign.c
@@ -155,6 +155,7 @@ main (int argc, char **argv)
int keySize = 1024;
PQGParams *pqgParams = NULL;
PQGVerify *pqgVerify = NULL;
+ char* nssDir = NULL;
#ifdef USES_LINKS
int ret;
struct stat stat_buf;
@@ -187,7 +188,7 @@ main (int argc, char **argv)
#endif
case 'd':
- SECU_ConfigDirectory(optstate->value);
+ nssDir = optstate->value;
break;
case 'i':
@@ -214,10 +215,15 @@ main (int argc, char **argv)
*/
PK11_SetPasswordFunc(SECU_GetModulePassword);
- rv = NSS_Init(SECU_ConfigDirectory(NULL));
- if (rv != SECSuccess) {
- rv = NSS_NoDB_Init("");
+ if (nssDir) {
+ rv = NSS_Init(nssDir);
+ if (rv != SECSuccess) {
+ rv = NSS_NoDB_Init("");
+ }
+ } else {
+ rv = NSS_NoDB_Init("");
}
+
if (rv != SECSuccess) {
lperror("NSS_Init failed");
goto prdone;