diff options
author | alexei.volkov.bugs%sun.com <devnull@localhost> | 2008-06-27 00:16:15 +0000 |
---|---|---|
committer | alexei.volkov.bugs%sun.com <devnull@localhost> | 2008-06-27 00:16:15 +0000 |
commit | e49d958135e0448dd0a7cfd9acf72917b8167024 (patch) | |
tree | de637a252653c911c87f46e10177db0147b4e5be /security | |
parent | 4c9c388a7829d061549dceeb10b8024446539b83 (diff) | |
download | nss-hg-e49d958135e0448dd0a7cfd9acf72917b8167024.tar.gz |
Bug 430859 ? PKIX: Policy mapping fails verification with error "invalid arguments". Initial fix. r=nelson
Diffstat (limited to 'security')
-rwxr-xr-x | security/nss/lib/libpkix/pkix/top/pkix_build.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/security/nss/lib/libpkix/pkix/top/pkix_build.c b/security/nss/lib/libpkix/pkix/top/pkix_build.c index 7ed48c4ee..9d5cda612 100755 --- a/security/nss/lib/libpkix/pkix/top/pkix_build.c +++ b/security/nss/lib/libpkix/pkix/top/pkix_build.c @@ -2711,6 +2711,7 @@ pkix_BuildForwardDepthFirstSearch( PKIX_VERIFYNODEADDTOTREEFAILED); PKIX_DECREF(verifyNode); } + pkixTempErrorReceived = PKIX_FALSE; PKIX_DECREF(finalError); finalError = verifyError; verifyError = NULL; @@ -2792,6 +2793,7 @@ pkix_BuildForwardDepthFirstSearch( PKIX_VERIFYNODEADDTOTREEFAILED); PKIX_DECREF(verifyNode); } + pkixTempErrorReceived = PKIX_FALSE; PKIX_DECREF(finalError); finalError = verifyError; verifyError = NULL; @@ -2876,6 +2878,9 @@ pkix_BuildForwardDepthFirstSearch( state->status = BUILD_CHECKTRUSTED; goto cleanup; } + /* Reset temp error that was set by + * PKIX_CHECK_ONLY_FATAL and continue */ + pkixTempErrorReceived = PKIX_FALSE; PKIX_DECREF(trustAnchor); } @@ -3013,6 +3018,7 @@ pkix_BuildForwardDepthFirstSearch( plContext), PKIX_VERIFYNODESETERRORFAILED); } + pkixTempErrorReceived = PKIX_FALSE; PKIX_DECREF(finalError); finalError = verifyError; verifyError = NULL; @@ -3070,6 +3076,9 @@ pkix_BuildForwardDepthFirstSearch( state->status = BUILD_VALCHAIN; goto cleanup; } + /* Reset temp error that was set by + * PKIX_CHECK_ONLY_FATAL and continue */ + pkixTempErrorReceived = PKIX_FALSE; } state->status = BUILD_CHECKWITHANCHORS; @@ -3543,7 +3552,7 @@ pkix_Build_TryShortcut( /* Exit loop with anchor set */ break; } - + pkixTempErrorReceived = PKIX_FALSE; } /* if (passed == PKIX_FALSE) ... else ... */ PKIX_DECREF(trustedPubKey); PKIX_DECREF(anchor); |