Repository navigation
[API Proposal]: SmtpClient.SslOptions #120965
Copy link
Copy link
Labels
api-approvedAPI was approved in API review, it can be implementedAPI was approved in API review, it can be implementedarea-System.Net
Milestone
Description
Activity
- addedapi-suggestionEarly API idea and discussion, it is NOT ready for implementationEarly API idea and discussion, it is NOT ready for implementation
on Oct 22, 2025 - addeduntriagedNew issue has not been triaged by the area ownerNew issue has not been triaged by the area owner
on Oct 22, 2025 dotnet-policy-service commented
on Oct 22, 2025 ContributorMore actionsTagging subscribers to this area: @dotnet/ncl
See info in area-owners.md if you want to be subscribed.- removeduntriagedNew issue has not been triaged by the area ownerNew issue has not been triaged by the area owner
on Oct 22, 2025 - addedapi-ready-for-reviewAPI is ready for review, it is NOT ready for implementationAPI is ready for review, it is NOT ready for implementationand removedapi-suggestionEarly API idea and discussion, it is NOT ready for implementationEarly API idea and discussion, it is NOT ready for implementation
on Aug 26, 2026 - It doesn't seem like obsoleting the existing property provides a lot of value, there's no impact on existing callers.
- We couldn't strongly decide on EB-Never either
namespace System.Net.Mail; public partial class SmtpClient { public SslClientAuthenticationOptions SslOptions { get; set; } // existing member defers to new one //public X509CertificatesCollection ClientCertificates { get; } // => SslOptions.ClientCertificates }
- It doesn't seem like obsoleting the existing property provides a lot of value, there's no impact on existing callers.
- addedapi-approvedAPI was approved in API review, it can be implementedAPI was approved in API review, it can be implementedand removedapi-ready-for-reviewAPI is ready for review, it is NOT ready for implementationAPI is ready for review, it is NOT ready for implementation
on Sep 29, 2026 - added a commit that references this issue
on Oct 7, 2026
Metadata
Metadata
Assignees
Labels
api-approvedAPI was approved in API review, it can be implementedAPI was approved in API review, it can be implementedarea-System.Net
Background and motivation
SmtpClientcan be configured to use TLS viaSmtpClient.EnableSslproperty, but at this time, there is no way to configure the actual TLS connection parameters (client certs, remote certificate validation, etc). This is one of the last areas that is still affected byServicePointManager(for SslProtocols and cert validation).API Proposal
namespace System.Net.Mail; public partial class SmtpClient { // lazily initialized on get;, has no effect if EnableSsl == false + public SslClientAuthenticationOptions SslOptions { get; set; } // existing member + [Obsolete("Use SslOptions.ClientCertificates instead")] public X509CertificatesCollection ClientCertificates { get; } // => SslOptions.ClientCertificates }API Usage
Alternative Designs
No response
Risks
No response