Library: NetSSL_OpenSSL
Package: SSLCore
Header: Poco/Net/X509Certificate.h
Description
This class extends Poco::Crypto::X509Certificate with the feature to validate a certificate.
Inheritance
Direct Base Classes: Poco::Crypto::X509Certificate
All Base Classes: Poco::Crypto::X509Certificate
Member Summary
Member Functions: containsWildcards, matchWildcard, operator =, verify
Inherited Functions: certificate, commonName, dup, equals, expiresOn, extractNames, fingerprint, init, issuedBy, issuerName, load, operator =, print, readPEM, save, serialNumber, signatureAlgorithm, subjectName, swap, validFrom, version, writePEM
Constructors
X509Certificate
explicit X509Certificate(
std::istream & istr
);
Creates the X509Certificate object by reading a certificate in PEM format from a stream.
X509Certificate
explicit X509Certificate(
const std::string & path
);
Creates the X509Certificate object by reading a certificate in PEM format from a file.
X509Certificate
explicit X509Certificate(
X509 * pCert
);
Creates the X509Certificate from an existing OpenSSL certificate. Ownership is taken of the certificate.
X509Certificate
X509Certificate(
const Poco::Crypto::X509Certificate & cert
);
Creates the certificate by copying another one.
X509Certificate
X509Certificate(
const X509Certificate & cert
);
Creates the certificate by copying another one.
X509Certificate
X509Certificate(
X509Certificate && cert
) noexcept;
Creates the certificate by moving another one.
X509Certificate
X509Certificate(
X509 * pCert,
bool shared
);
Creates the X509Certificate from an existing OpenSSL certificate. Ownership is taken of the certificate. If shared is true, the certificate's reference count is incremented.
Destructor
~X509Certificate
~X509Certificate();
Destroys the X509Certificate.
Member Functions
operator =
X509Certificate & operator = (
const Poco::Crypto::X509Certificate & cert
);
Assigns a certificate.
operator =
X509Certificate & operator = (
const X509Certificate & cert
);
Assigns a certificate.
operator =
X509Certificate & operator = (
X509Certificate && cert
) noexcept;
Moves a certificate.
verify
bool verify(
const std::string & hostName
) const;
Verifies the validity of the certificate against the host name.
For this check to be successful, the certificate must contain a domain name that matches the domain name of the host.
Returns true if verification succeeded, or false otherwise.
verify
static bool verify(
const Poco::Crypto::X509Certificate & cert,
const std::string & hostName
);
Verifies the validity of the certificate against the host name.
For this check to be successful, the certificate must contain a domain name that matches the domain name of the host.
Returns true if verification succeeded, or false otherwise.
containsWildcards
static bool containsWildcards(
const std::string & commonName
);
matchWildcard
static bool matchWildcard(
const std::string & alias,
const std::string & hostName
);