summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoralexei.volkov.bugs%sun.com <devnull@localhost>2008-04-16 18:47:03 +0000
committeralexei.volkov.bugs%sun.com <devnull@localhost>2008-04-16 18:47:03 +0000
commit1a89a8ba661f8d55872a8d660fb5d9291b36fcbf (patch)
treee2c5c92896070f2f5d99ceef78542094e81ca0a9
parent0c69d1ffaed134d7c51cdf36fb80b5af45a138f9 (diff)
downloadnss-hg-1a89a8ba661f8d55872a8d660fb5d9291b36fcbf.tar.gz
429230 - memory leak in pkix_CheckCert function. r=nelson
-rwxr-xr-xsecurity/nss/lib/libpkix/pkix/top/pkix_validate.c35
1 files changed, 3 insertions, 32 deletions
diff --git a/security/nss/lib/libpkix/pkix/top/pkix_validate.c b/security/nss/lib/libpkix/pkix/top/pkix_validate.c
index 1638626c0..b9b771f49 100755
--- a/security/nss/lib/libpkix/pkix/top/pkix_validate.c
+++ b/security/nss/lib/libpkix/pkix/top/pkix_validate.c
@@ -173,7 +173,6 @@ pkix_CheckCert(
PKIX_UInt32 numCheckers;
PKIX_UInt32 numUnresCritExtOIDs = 0;
PKIX_UInt32 checkerIndex = 0;
- PKIX_Error *checkerError = NULL;
void *nbioContext = NULL;
PKIX_ENTER(VALIDATE, "pkix_CheckCert");
@@ -204,16 +203,9 @@ pkix_CheckCert(
(checker, &checkerCheck, plContext),
PKIX_CERTCHAINCHECKERGETCHECKCALLBACKFAILED);
- checkerError = checkerCheck
- (checker,
- cert,
- unresCritExtOIDs,
- &nbioContext,
- plContext);
-
- if (checkerError) {
- goto cleanup;
- }
+ PKIX_CHECK(checkerCheck(checker, cert, unresCritExtOIDs,
+ &nbioContext, plContext),
+ PKIX_CERTCHAINCHECKERCHECKFAILED);
if (nbioContext != NULL) {
*pCheckerIndex = checkerIndex;
@@ -272,27 +264,6 @@ cleanup:
PKIX_DECREF(checker);
PKIX_DECREF(unresCritExtOIDs);
- if (checkerError) {
- PKIX_PL_String *errorDesc = NULL;
- void *enc = NULL;
- PKIX_UInt32 len = 0;
- (void)PKIX_Error_GetDescription
- (checkerError, &errorDesc, plContext);
- (void)PKIX_PL_String_GetEncoded
- (errorDesc, PKIX_ESCASCII, &enc, &len, plContext);
- if (pkixLoggersErrors) {
- pkix_Logger_Check
- (pkixLoggersErrors,
- enc,
- NULL,
- pkixType,
- PKIX_LOGGER_LEVEL_ERROR,
- plContext);
- }
- PKIX_DECREF(errorDesc);
- return (checkerError);
- }
-
PKIX_RETURN(VALIDATE);
}