Chromium Code Reviews| Index: net/cert/x509_certificate_ios.cc |
| diff --git a/net/cert/x509_certificate_ios.cc b/net/cert/x509_certificate_ios.cc |
| index b0908b77afae4b4397adbc8e4ca61f653e121406..7a84edbc7ebce31429349090dc62cbd2a239a2f4 100644 |
| --- a/net/cert/x509_certificate_ios.cc |
| +++ b/net/cert/x509_certificate_ios.cc |
| @@ -250,4 +250,14 @@ void X509Certificate::GetPublicKeyInfo(OSCertHandle cert_handle, |
| x509_util::GetPublicKeyInfo(nss_cert.cert_handle(), size_bits, type); |
| } |
| +// static |
| +bool X509Certificate::IsSelfSigned(OSCertHandle cert_handle) { |
| + x509_util_ios::NSSCertificate nss_cert(cert_handle); |
| + SECKEYPublicKey* public_key = CERT_ExtractPublicKey(nss_cert.cert_handle()); |
|
Ryan Sleevi
2014/10/27 23:33:13
BUG: You're leaking this
palmer
2014/10/28 00:59:38
What's the best way to handle it? I don't see a sc
palmer
2014/10/28 23:13:41
Done.
|
| + if (!public_key) |
| + return false; |
| + return SECSuccess == CERT_VerifySignedDataWithPublicKey( |
| + &nss_cert.cert_handle()->signatureWrap, public_key, NULL); |
| +} |
| + |
| } // namespace net |