I have this weird situation where I have to accept email from my users. I want to be able to intercept an incoming SMTP message, see if it's authenticated (inspect the username/password myself and check those against my user database), then parse the message in full and do something (log a post in my application, for example). I need somebody to do the heavy lifting for me and take care of the SMTP protocol, transport encryption, etc and let me take care of the rest.
My problem is that I can't find an extensible SMTP server that will either let me plug into its processing pipeline or maybe embed it in my application or service. Do you know one? I'd love to program the SMTP logic in C#, but I can consider other options like external pipe programs, COM objects, running on a Unix system under Mono, etc.