| IPop3ClientCapabilities Property |
Gets the capabilities supported by the POP3 server.
Namespace: MailKit.Net.Pop3Assembly: MailKit (in MailKit.dll) Version: 4.7.1
Syntax Pop3Capabilities Capabilities { get; set; }
Property Value
Pop3CapabilitiesThe capabilities.
Exceptions Exception | Condition |
---|
ArgumentException |
Capabilities cannot be enabled, they may only be disabled.
|
Remarks
The capabilities will not be known until a successful connection has been made
and may change once the client is authenticated.
Example public static void PrintCapabilities ()
{
using (var client = new Pop3Client ()) {
client.Connect ("pop.gmail.com", 995, SecureSocketOptions.SslOnConnect);
if (client.Capabilities.HasFlag (Pop3Capabilities.SASL)) {
var mechanisms = string.Join (", ", client.AuthenticationMechanisms);
Console.WriteLine ("The POP3 server supports the following SASL mechanisms: {0}", mechanisms);
}
client.Authenticate ("username", "password");
if (client.Capabilities.HasFlag (Pop3Capabilities.Apop))
Console.WriteLine ("The server supports APOP authentication.");
if (client.Capabilities.HasFlag (Pop3Capabilities.Expire)) {
if (client.ExpirePolicy > 0)
Console.WriteLine ("The POP3 server automatically expires messages after {0} days", client.ExpirePolicy);
else
Console.WriteLine ("The POP3 server will never expire messages.");
}
if (client.Capabilities.HasFlag (Pop3Capabilities.LoginDelay))
Console.WriteLine ("The minimum number of seconds between login attempts is {0}.", client.LoginDelay);
if (client.Capabilities.HasFlag (Pop3Capabilities.Pipelining))
Console.WriteLine ("The POP3 server can pipeline commands, so using client.GetMessages() will be faster.");
if (client.Capabilities.HasFlag (Pop3Capabilities.Top))
Console.WriteLine ("The POP3 server supports the TOP command, so it's possible to download message headers.");
if (client.Capabilities.HasFlag (Pop3Capabilities.UIDL))
Console.WriteLine ("The POP3 server supports the UIDL command which means we can track messages by UID.");
client.Disconnect (true);
}
}
See Also