cosullivan / SmtpServer

A SMTP Server component written in C#
MIT License
675 stars 159 forks source link

Implemented smtp client certificate validation and introduced 2 new events if smtp server fails to bind to a socket #214

Open vyavorsky opened 5 months ago

vyavorsky commented 5 months ago

Hi @cosullivan! I hope this pull request finds you well😅

Thank you for engineering this great lib😄 The flexibility it provides is really awsome, however I ran into a few specific problems that I could not find a reliable workaround for😅 This pull request aims to solve them and extend already impressive feature set of this lib!

I tried to be consistent with your codestyle and implement these features as seamlessly as I could, so everyone who are comfortable with the codebase should feel right at home😃 And of course, all code changes are completely backwards compatible, so no breaking of consumer code!

These features have also been tested with different positive and negative scenarios using stub smtp client, I also tested backwards compatibility so I'm confidend in their stability👍

Additionally I've covered new feature set with tests, added a class with example on how to implement client certificate validation (similarly to existing examples) and I also updated the readme.md to display the new feature😎

I'd really appreciate your review and looking forward to merging these features into main🔥

Have a wonderful day!

P.S. No British words were harmed in the process!😂