Click or drag to resize
MimeKit

SmtpClientSslProtocol Property

Get the negotiated SSL or TLS protocol version.

Namespace:  MailKit.Net.Smtp
Assembly:  MailKit (in MailKit.dll) Version: 2.14.0
Syntax
C#
public override SslProtocols SslProtocol { get; }

Property Value

Type: SslProtocols
The negotiated SSL or TLS protocol version.

Implements

IMailServiceSslProtocol
IMailServiceSslProtocol
Remarks

Gets the negotiated SSL or TLS protocol version once an SSL or TLS connection has been made.

Examples
C#
public static void PrintSslConnectionInfo (string host, int port)
{
    using (var client = new SmtpClient ()) {
        client.Connect (host, port, SecureSocketOptions.Auto);

        Console.WriteLine ($"Negotiated the following SSL options with {host}:");
        Console.WriteLine ($"        Protocol Version: {client.SslProtocol}");
        Console.WriteLine ($"        Cipher Algorithm: {client.SslCipherAlgorithm}");
        Console.WriteLine ($"         Cipher Strength: {client.SslCipherStrength}");
        Console.WriteLine ($"          Hash Algorithm: {client.SslHashAlgorithm}");
        Console.WriteLine ($"           Hash Strength: {client.SslHashStrength}");
        Console.WriteLine ($"  Key-Exchange Algorithm: {client.SslKeyExchangeAlgorithm}");
        Console.WriteLine ($"   Key-Exchange Strength: {client.SslKeyExchangeStrength}");

        // Example Log:
        // 
        // Negotiated the following SSL options with smtp.gmail.com:
        //         Protocol Version: Tls12
        //         Cipher Algorithm: Aes128
        //          Cipher Strength: 128
        //           Hash Algorithm: Sha256
        //            Hash Strength: 0
        //   Key-Exchange Algorithm: 44550
        //    Key-Exchange Strength: 255

        client.Disconnect (true);
    }
}
See Also