QSslDiffieHellmanParameters Class
The QSslDiffieHellmanParameters class provides an interface for Diffie-Hellman parameters for servers. More...
Header: | #include <QSslDiffieHellmanParameters> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Network) target_link_libraries(mytarget PRIVATE Qt6::Network) |
qmake: | QT += network |
- List of all members, including inherited members
- QSslDiffieHellmanParameters is part of Network Programming API and Implicitly Shared Classes.
Note: All functions in this class are reentrant.
Public Types
enum | Error { NoError, InvalidInputDataError, UnsafeParametersError } |
Public Functions
QSslDiffieHellmanParameters() | |
QSslDiffieHellmanParameters(const QSslDiffieHellmanParameters &other) | |
QSslDiffieHellmanParameters(QSslDiffieHellmanParameters &&other) | |
~QSslDiffieHellmanParameters() | |
QSslDiffieHellmanParameters::Error | error() const |
QString | errorString() const |
bool | isEmpty() const |
bool | isValid() const |
void | swap(QSslDiffieHellmanParameters &other) |
QSslDiffieHellmanParameters & | operator=(QSslDiffieHellmanParameters &&other) |
QSslDiffieHellmanParameters & | operator=(const QSslDiffieHellmanParameters &other) |
Static Public Members
QSslDiffieHellmanParameters | defaultParameters() |
QSslDiffieHellmanParameters | fromEncoded(QIODevice *device, QSsl::EncodingFormat encoding = QSsl::Pem) |
QSslDiffieHellmanParameters | fromEncoded(const QByteArray &encoded, QSsl::EncodingFormat encoding = QSsl::Pem) |
Related Non-Members
size_t | qHash(const QSslDiffieHellmanParameters &dhparam, size_t seed = 0) |
bool | operator!=(const QSslDiffieHellmanParameters &lhs, const QSslDiffieHellmanParameters &rhs) |
QDebug | operator<<(QDebug debug, const QSslDiffieHellmanParameters &dhparam) |
bool | operator==(const QSslDiffieHellmanParameters &lhs, const QSslDiffieHellmanParameters &rhs) |
Detailed Description
QSslDiffieHellmanParameters provides an interface for setting Diffie-Hellman parameters to servers based on QSslSocket.
See also QSslSocket, QSslCipher, and QSslConfiguration.
Member Type Documentation
enum QSslDiffieHellmanParameters::Error
Describes a QSslDiffieHellmanParameters error.
Constant | Value | Description |
---|---|---|
QSslDiffieHellmanParameters::NoError | 0 | No error occurred. |
QSslDiffieHellmanParameters::InvalidInputDataError | 1 | The given input data could not be used to construct a QSslDiffieHellmanParameters object. |
QSslDiffieHellmanParameters::UnsafeParametersError | 2 | The Diffie-Hellman parameters are unsafe and should not be used. |
Member Function Documentation
QSslDiffieHellmanParameters::QSslDiffieHellmanParameters()
Constructs an empty QSslDiffieHellmanParameters instance.
If an empty QSslDiffieHellmanParameters instance is set on a QSslConfiguration object, Diffie-Hellman negotiation will be disabled.
See also isValid() and QSslConfiguration.
QSslDiffieHellmanParameters::QSslDiffieHellmanParameters(const QSslDiffieHellmanParameters &other)
Constructs an identical copy of other.
[noexcept]
QSslDiffieHellmanParameters::QSslDiffieHellmanParameters(QSslDiffieHellmanParameters &&other)
Move-constructs from other.
Note: The moved-from object other is placed in a partially-formed state, in which the only valid operations are destruction and assignment of a new value.
[noexcept]
QSslDiffieHellmanParameters::~QSslDiffieHellmanParameters()
Destroys the QSslDiffieHellmanParameters object.
[static]
QSslDiffieHellmanParameters QSslDiffieHellmanParameters::defaultParameters()
Returns the default QSslDiffieHellmanParameters used by QSslSocket.
This is currently the 2048-bit MODP group from RFC 3526.
[noexcept]
QSslDiffieHellmanParameters::Error QSslDiffieHellmanParameters::error() const
Returns the error that caused the QSslDiffieHellmanParameters object to be invalid.
[noexcept]
QString QSslDiffieHellmanParameters::errorString() const
Returns a human-readable description of the error that caused the QSslDiffieHellmanParameters object to be invalid.
[static]
QSslDiffieHellmanParameters QSslDiffieHellmanParameters::fromEncoded(QIODevice *device, QSsl::EncodingFormat encoding = QSsl::Pem)
Constructs a QSslDiffieHellmanParameters object by reading from device in either PEM or DER form as specified by encoding.
Use the isValid() method on the returned object to check whether the Diffie-Hellman parameters were valid and loaded correctly.
In particular, if device is nullptr
or not open for reading, an invalid object will be returned.
See also isValid() and QSslConfiguration.
[static]
QSslDiffieHellmanParameters QSslDiffieHellmanParameters::fromEncoded(const QByteArray &encoded, QSsl::EncodingFormat encoding = QSsl::Pem)
Constructs a QSslDiffieHellmanParameters object using the byte array encoded in either PEM or DER form as specified by encoding.
Use the isValid() method on the returned object to check whether the Diffie-Hellman parameters were valid and loaded correctly.
See also isValid() and QSslConfiguration.
[noexcept]
bool QSslDiffieHellmanParameters::isEmpty() const
Returns true
if this is a an empty QSslDiffieHellmanParameters instance.
Setting an empty QSslDiffieHellmanParameters instance on a QSslSocket-based server will disable Diffie-Hellman key exchange.
[noexcept]
bool QSslDiffieHellmanParameters::isValid() const
Returns true
if this is a valid QSslDiffieHellmanParameters; otherwise false.
This method should be used after constructing a QSslDiffieHellmanParameters object to determine its validity.
If a QSslDiffieHellmanParameters object is not valid, you can use the error() method to determine what error prevented the object from being constructed.
See also error().
[noexcept]
void QSslDiffieHellmanParameters::swap(QSslDiffieHellmanParameters &other)
Swaps this QSslDiffieHellmanParameters with other. This function is very fast and never fails.
[noexcept]
QSslDiffieHellmanParameters &QSslDiffieHellmanParameters::operator=(QSslDiffieHellmanParameters &&other)
Move-assigns other to this QSslDiffieHellmanParameters instance.
Note: The moved-from object other is placed in a partially-formed state, in which the only valid operations are destruction and assignment of a new value.
QSslDiffieHellmanParameters &QSslDiffieHellmanParameters::operator=(const QSslDiffieHellmanParameters &other)
Copies the contents of other into this QSslDiffieHellmanParameters, making the two QSslDiffieHellmanParameters identical.
Returns a reference to this QSslDiffieHellmanParameters.
Related Non-Members
[noexcept]
size_t qHash(const QSslDiffieHellmanParameters &dhparam, size_t seed = 0)
Returns an hash value for dhparam, using seed to seed the calculation.
[noexcept]
bool operator!=(const QSslDiffieHellmanParameters &lhs, const QSslDiffieHellmanParameters &rhs)
Returns true
if lhs is not equal to rhs; otherwise returns false
.
QDebug operator<<(QDebug debug, const QSslDiffieHellmanParameters &dhparam)
Writes the set of Diffie-Hellman parameters in dhparam into the debug object debug for debugging purposes.
The Diffie-Hellman parameters will be represented in Base64-encoded DER form.
See also Debugging Techniques.
[noexcept]
bool operator==(const QSslDiffieHellmanParameters &lhs, const QSslDiffieHellmanParameters &rhs)
Returns true
if lhs is equal to rhs; otherwise returns false
.