diff options
author | Kai Engert <kaie@kuix.de> | 2018-07-23 13:08:13 +0200 |
---|---|---|
committer | Kai Engert <kaie@kuix.de> | 2018-07-23 13:08:13 +0200 |
commit | d5b6600ef8310915398f2062c2a4ff793024fcad (patch) | |
tree | dc9ef55313af224531220463bcd036c7534e9948 | |
parent | 6353307e1c57627c135f9ca44ba5fa4251f84574 (diff) | |
download | nss-hg-d5b6600ef8310915398f2062c2a4ff793024fcad.tar.gz |
Bug 1474887, skip NSS shutdown in error path, r=rrelyea
-rw-r--r-- | cmd/nss-policy-check/nss-policy-check.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/cmd/nss-policy-check/nss-policy-check.c b/cmd/nss-policy-check/nss-policy-check.c index 6b4e2bdaf..b83003874 100644 --- a/cmd/nss-policy-check/nss-policy-check.c +++ b/cmd/nss-policy-check/nss-policy-check.c @@ -85,7 +85,7 @@ main(int argc, char **argv) if (argc != 2) { fprintf(stderr, "Syntax: nss-policy-check <path-to-policy-file>\n"); result = 2; - goto loser; + goto loser_no_shutdown; } fullPathLen = strlen(argv[1]); @@ -93,13 +93,13 @@ main(int argc, char **argv) if (!fullPathLen || PR_Access(argv[1], PR_ACCESS_READ_OK) != PR_SUCCESS) { fprintf(stderr, "Error: cannot read file %s\n", argv[1]); result = 2; - goto loser; + goto loser_no_shutdown; } if (fullPathLen >= PATH_MAX) { fprintf(stderr, "Error: filename parameter is too long\n"); result = 2; - goto loser; + goto loser_no_shutdown; } path[0] = 0; @@ -120,7 +120,7 @@ main(int argc, char **argv) if (rv != SECSuccess) { fprintf(stderr, "NSS_Init failed: %s\n", PORT_ErrorToString(PR_GetError())); result = 2; - goto loser; + goto loser_no_shutdown; } PR_SetEnv("NSS_POLICY_LOADED=0"); @@ -196,6 +196,7 @@ loser: fprintf(stderr, "NSS_Shutdown failed: %s\n", PORT_ErrorToString(PR_GetError())); result = 2; } +loser_no_shutdown: if (result == 2) { fprintf(stderr, "NSS-POLICY-FAIL\n"); } else if (result == 1) { |