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: 4.3.0
Syntax
C#
public override SslProtocols SslProtocol { get; }

Property Value

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.

Example
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