diff options
author | Nat Goodspeed <nat@lindenlab.com> | 2013-10-28 20:06:18 -0400 |
---|---|---|
committer | Nat Goodspeed <nat@lindenlab.com> | 2013-10-28 20:06:18 -0400 |
commit | 57040ea70e21ea5cfaedfd8a3506362a03562552 (patch) | |
tree | eb9dc090ab72bea2353de8a940ccdc7ab69d830e /indra/newview/llsechandler_basic.cpp | |
parent | 8881b47d22a7cd17824e8162e0658af71bbe3dea (diff) | |
parent | d5877bc365292358eb4c9b8d14d1c8a1237ca5bd (diff) |
Automated merge with http://bitbucket.org/nat_linden/viewer-maint-3331
Diffstat (limited to 'indra/newview/llsechandler_basic.cpp')
-rwxr-xr-x | indra/newview/llsechandler_basic.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/indra/newview/llsechandler_basic.cpp b/indra/newview/llsechandler_basic.cpp index 928d26646b..c4d5450e2b 100755 --- a/indra/newview/llsechandler_basic.cpp +++ b/indra/newview/llsechandler_basic.cpp @@ -207,6 +207,7 @@ LLSD _basic_constraints_ext(X509* cert) } } + BASIC_CONSTRAINTS_free( bs ); } return result; } @@ -268,6 +269,8 @@ LLSD _ext_key_usage_ext(X509* cert) ASN1_OBJECT_free(usage); } } + + EXTENDED_KEY_USAGE_free( eku ); } return result; } @@ -280,6 +283,8 @@ LLSD _subject_key_identifier_ext(X509 *cert) if(skeyid) { result = cert_string_from_octet_string(skeyid); + + ASN1_OCTET_STRING_free( skeyid ); } return result; } @@ -300,6 +305,9 @@ LLSD _authority_key_identifier_ext(X509* cert) { result[CERT_AUTHORITY_KEY_IDENTIFIER_SERIAL] = cert_string_from_asn1_integer(akeyid->serial); } + + + AUTHORITY_KEYID_free( akeyid ); } // we ignore the issuer name in the authority key identifier, we check the issue name via @@ -1049,6 +1057,8 @@ void LLBasicCertificateStore::validate(int validation_policy, throw LLInvalidCertificate((*current_cert)); } std::string sha1_hash((const char *)cert_x509->sha1_hash, SHA_DIGEST_LENGTH); + X509_free( cert_x509 ); + cert_x509 = NULL; t_cert_cache::iterator cache_entry = mTrustedCertCache.find(sha1_hash); if(cache_entry != mTrustedCertCache.end()) { |