QOcspResponse Class

This class represents Online Certificate Status Protocol response. More...

Header: #include <QOcspResponse>
CMake: find_package(Qt6 REQUIRED COMPONENTS Network)
target_link_libraries(mytarget PRIVATE Qt6::Network)
qmake: QT += network

Public Functions

QOcspResponse(const QOcspResponse &other)
QOcspResponse(QOcspResponse &&other)
QOcspCertificateStatus certificateStatus() const
class QSslCertificate responder() const
QOcspRevocationReason revocationReason() const
QSslCertificate subject() const
void swap(QOcspResponse &other)
QOcspResponse &operator=(const QOcspResponse &other)
QOcspResponse &operator=(QOcspResponse &&other)
enum class QOcspCertificateStatus { Good, Revoked, Unknown }
enum class QOcspRevocationReason { None, Unspecified, KeyCompromise, CACompromise, AffiliationChanged, …, RemoveFromCRL }
bool operator!=(const QOcspResponse &lhs, const QOcspResponse &rhs)
bool operator==(const QOcspResponse &lhs, const QOcspResponse &rhs)

Detailed Description

The QOcspResponse class represents the revocation status of a server's certificate, received by the client-side socket during the TLS handshake. QSslSocket must be configured with OCSP stapling enabled.

See also QSslSocket, QSslSocket::ocspResponses(), certificateStatus(), revocationReason(), responder(), subject(), QOcspCertificateStatus, QOcspRevocationReason, QSslConfiguration::setOcspStaplingEnabled(), QSslConfiguration::ocspStaplingEnabled(), and QSslConfiguration::peerCertificate().

Member Function Documentation


Creates a new response with status QOcspCertificateStatus::Unknown and revocation reason QOcspRevocationReason::None.

See also QOcspCertificateStatus.

QOcspResponse::QOcspResponse(const QOcspResponse &other)

Copy-constructs a QOcspResponse instance.

QOcspResponse::QOcspResponse(QOcspResponse &&other)

Move-constructs a QOcspResponse instance.


Destroys the response.

QOcspCertificateStatus QOcspResponse::certificateStatus() const

Returns the certificate status.

See also QOcspCertificateStatus.

class QSslCertificate QOcspResponse::responder() const

This function returns a certificate used to sign OCSP response.

QOcspRevocationReason QOcspResponse::revocationReason() const

Returns the reason for revocation.

QSslCertificate QOcspResponse::subject() const

This function returns a certificate, for which this response was issued.

void QOcspResponse::swap(QOcspResponse &other)

Swaps this response with other.

QOcspResponse &QOcspResponse::operator=(const QOcspResponse &other)

Copy-assigns other and returns a reference to this response.

QOcspResponse &QOcspResponse::operator=(QOcspResponse &&other)

Move-assigns other to this QOcspResponse instance.

Related Non-Members

enum class QOcspCertificateStatus

Describes the Online Certificate Status

QOcspResponse::QOcspCertificateStatus::Good0The certificate is not revoked, but this does not necessarily mean that the certificate was ever issued or that the time at which the response was produced is within the certificate's validity interval.
QOcspResponse::QOcspCertificateStatus::Revoked1This state indicates that the certificate has been revoked (either permanently or temporarily - on hold).
QOcspResponse::QOcspCertificateStatus::Unknown2This state indicates that the responder doesn't know about the certificate being requested.

See also QOcspRevocationReason.

enum class QOcspRevocationReason

Describes the reason for revocation

This enumeration describes revocation reasons, defined in RFC 5280, section 5.3.1


bool operator!=(const QOcspResponse &lhs, const QOcspResponse &rhs)

Returns true if lhs and rhs are responses for different certificates, or signed by different responders, or have different revocation reasons, or different certificate statuses.

bool operator==(const QOcspResponse &lhs, const QOcspResponse &rhs)

Returns true if lhs and rhs are the responses for the same certificate, signed by the same responder, have the same revocation reason and the same certificate status.

© 2023 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.