Qt Reference Documentation

# QSsl Namespace

The QSsl namespace declares enums common to all SSL classes in QtNetwork. More...

     #include <QSsl>

This namespace was introduced in Qt 4.3.

## Types

enum | AlternateNameEntryType { EmailEntry, DnsEntry }
enum | EncodingFormat { Pem, Der }
enum | KeyAlgorithm { Rsa, Dsa }
enum | KeyType { PrivateKey, PublicKey }
enum | SslProtocol { SslV3, SslV2, TlsV1, UnknownProtocol, AnyProtocol }

## Detailed Description

The QSsl namespace declares enums common to all SSL classes in QtNetwork.

## Type Documentation

### enum QSsl::AlternateNameEntryType

Describes the key types for alternate name entries in QSslCertificate.

Constant | Value | Description
--- | --- | ---
`QSsl::EmailEntry` | `0` | An email entry; the entry contains an email address that the certificate is valid for.
`QSsl::DnsEntry` | `1` | A DNS host name entry; the entry contains a host name entry that the certificate is valid for. The entry may contain wildcards.

See also QSslCertificate::alternateSubjectNames().

### enum QSsl::EncodingFormat

Describes supported encoding formats for certificates and keys.

Constant | Value | Description
--- | --- | ---
`QSsl::Pem` | `0` | The PEM format.
`QSsl::Der` | `1` | The DER format.

### enum QSsl::KeyAlgorithm

Describes the different key algorithms supported by QSslKey.

Constant | Value | Description
--- | --- | ---
`QSsl::Rsa` | `0` | The RSA algorithm.
`QSsl::Dsa` | `1` | The DSA algorithm.

### enum QSsl::KeyType

Describes the two types of keys QSslKey supports.

Constant | Value | Description
--- | --- | ---
`QSsl::PrivateKey` | `0` | A private key.
`QSsl::PublicKey` | `1` | A public key.

### enum QSsl::SslProtocol

Describes the protocol of the cipher.

Constant | Value | Description
--- | --- | ---
`QSsl::SslV3` | `0` | SSLv3 - the default protocol.
`QSsl::SslV2` | `1` | SSLv2
`QSsl::TlsV1` | `2` | TLSv1
`QSsl::UnknownProtocol` | `-1` | The cipher's protocol cannot be determined.
`QSsl::AnyProtocol` | `3` | The socket understands SSLv2, SSLv3, and TLSv1. This value is used by QSslSocket only.

Note: most servers using SSL understand both versions (2 and 3), but it is recommended to use the latest version only for security reasons. However, SSL and TLS are not compatible with each other: if you get unexpected handshake failures, verify that you chose the correct setting for your protocol.