views:

54

answers:

2

I am willing to build an email application which runs on the server side.

Not being familiar with any particular server I wonder if I can get some recommendations based on your experience.

I look for a stable, production ready and scalable daemon, which provide an easy-to-use c/cpp api interface.

I am willing to hook at the incoming and outgoing mails and manipulate them before shipment or placed in the inbox.

Note:

  1. MS Exchange or any other not open-source are not an option
  2. Must run on linux
A: 

Apache James is an open-source Java-based mail server with great options for extensibility.

Brian Agnew
seen it, yet prefer a c/c++ server for two reasons, performance and integration. my application is implemented in c, and I have no experience with java and c binding. Is there support for such in java? Perhaps I should google for this particular question ;-)
Tzury Bar Yochay
I would edit your question to reflect your preferences. And is performance an issue when you're likely to be network bound ? (not to mention the JVM JIT optimiser is extremely powerful)
Brian Agnew
@brian, you are right with two points. editing would take place promptly. As for performance, in a heavy traffic environment, every CPU cycle counts, as well as every GB of RAM.I do not wish to provide an Exchange clone in terms of complexity, behemoth and clumsiness - I wish to my app to be describe as lightweight, extremely fast and easy scalable.
Tzury Bar Yochay
@brian, just noticed your zappa avatar! "watch out where the asics go don't you eat that yellow snow... ;~{)"
Tzury Bar Yochay
+1  A: 

Sendmail, as it has the advantage, that none of your (potential) customers can complain about it behaving in a nonstandard way - Sendmail is the de facto standard.

Of course everything else might be against it - but nobody in the world has a mail server which won't speak to sendmail.

I'm assuming of course here, that you want your mail server to be able to talk to other OEM mail servers, as this is pretty much a requirement of any such application.

If on the other hand, your mail server only needs to talk to other instances of itself (or other bespoke things you have control over and plan to test with), feel free to ignore this suggestion.

MarkR
picked your answer though I am probably going to use postfix, as it was the best one ;-)
Tzury Bar Yochay