Imap |
public override Task ConnectAsync( Socket socket, string host, int port = 0, SecureSocketOptions options = SecureSocketOptions.Auto, CancellationToken cancellationToken = default )
Exception | Condition |
---|---|
ArgumentNullException | socket is null. -or- host is null. |
ArgumentOutOfRangeException | port is not between 0 and 65535. |
ArgumentException | socket is not connected. -or- The host is a zero-length string. |
ObjectDisposedException | The ImapClient has been disposed. |
InvalidOperationException | The ImapClient is already connected. |
NotSupportedException | options was set to StartTls and the IMAP server does not support the STARTTLS extension. |
OperationCanceledException | The operation was canceled via the cancellation token. |
SslHandshakeException | An error occurred during the SSL/TLS negotiations. |
IOException | An I/O error occurred. |
ImapCommandException | An IMAP command failed. |
ImapProtocolException | An IMAP protocol error occurred. |
Establishes a connection to the specified IMAP or IMAP/S server using the provided socket.
If the options has a value of Auto, then the port is used to determine the default security options. If the port has a value of 993, then the default options used will be SslOnConnect. All other values will use StartTlsWhenAvailable.
Once a connection is established, properties such as AuthenticationMechanisms and Capabilities will be populated.
Note |
---|
With the exception of using the port to determine the default SecureSocketOptions to use when the options value is Auto, the host and port parameters are only used for logging purposes. |