| Index: net/cert/x509_certificate_openssl.cc
|
| diff --git a/net/cert/x509_certificate_openssl.cc b/net/cert/x509_certificate_openssl.cc
|
| index 91501f84ecd8cb2d91354cdf47f38c2c54101b71..e92f3a190d5ce3d0cacab2a6498c41fdb6a3ef0b 100644
|
| --- a/net/cert/x509_certificate_openssl.cc
|
| +++ b/net/cert/x509_certificate_openssl.cc
|
| @@ -449,4 +449,14 @@ bool X509Certificate::IsIssuedByEncoded(
|
| return false;
|
| }
|
|
|
| +// static
|
| +bool X509Certificate::IsSelfSigned(OSCertHandle cert_handle) {
|
| + crypto::ScopedEVP_PKEY scoped_key(X509_get_pubkey(cert_handle));
|
| + if (!scoped_key)
|
| + return false;
|
| +
|
| + // NOTE: X509_verify() returns 1 in case of success, 0 or -1 on error.
|
| + return X509_verify(cert_handle, scoped_key.get()) == 1;
|
| +}
|
| +
|
| } // namespace net
|
|
|