From ae7bbe34005d704f0c1fd3ca0335095c1df48cde Mon Sep 17 00:00:00 2001 From: Daniel Molkentin Date: Sun, 13 Apr 2014 12:11:16 +0200 Subject: Provide new API: QSslCertificate::isSelfSigned() Change-Id: I382a017a0b865b849667301aff8b2f87b676ecc6 Reviewed-by: Richard J. Moore --- src/network/ssl/qsslcertificate.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'src/network/ssl/qsslcertificate.cpp') diff --git a/src/network/ssl/qsslcertificate.cpp b/src/network/ssl/qsslcertificate.cpp index 3b7fa4da09..2eef37feff 100644 --- a/src/network/ssl/qsslcertificate.cpp +++ b/src/network/ssl/qsslcertificate.cpp @@ -264,6 +264,21 @@ bool QSslCertificate::isBlacklisted() const return QSslCertificatePrivate::isBlacklisted(*this); } +/*! + Returns \c true if this certificate is self signed; otherwise + returns \c false. + + A certificate is considered self-signed its issuer and subject + are identical. +*/ +bool QSslCertificate::isSelfSigned() const +{ + if (!d->x509) + return false; + + return (q_X509_check_issued(d->x509, d->x509) == X509_V_OK); +} + /*! Clears the contents of this certificate, making it a null certificate. -- cgit v1.2.3