Saturday, June 24, 2006

What license is that MTA?

A Mail Transfer Agent is that bit of software that listens on port 25 and accepts mail when you send it. There's a lot of them available, but which ones are truely free?

I find that a good moral compass on questions of licensing is to look at the OpenBSD project. What they use is typically the most free you can get. So what do they use?

Sendmail, which has these license terms. They're pretty ass. Basically you can distribute it if you're "open source" in the GPL sense of the term; you have to promise to hand over source code, or if you are "freeware". So yeah, if you want to make a binary only CD of OpenBSD and include Sendmail you're going to have to promise whoever you give it to that you'll give them the source if they ask, or you can't charge them anything more than distribution costs. Seems kind of anti-OpenBSD-philosophy to me. But maybe there's nothing better out there.

What about qmail? Ask anyone and they'll tell you it's more secure than Sendmail, so why doesn't OpenBSD, the poster OS for security, use that? Well, the distribution terms for qmail are about as free as Microsoft's shared source licenses. i.e., they're not.

What about postfix? They've got a happy mouse with a mail sack logo and everyone loves them, what license have they got? Well it's a bit hard to find out. If you dig through the web page you won't find a reference to it, but if you download the source code you'll find it is under the IBM Public License. Which is not only very GPL-like it is also incompatible with the GPL. Something to do with patents.

Exim is pretty popular. It's under the GPL.

There's the Courier MTA, which most people probably thought was just an MDA, I know I did. It's also under the GPL.

The Apache project has an MTA called James which is written in Java. Ironically it's the most free. It's under the Apache License 1.1 which has an obnoxious advertising clause but doesn't require you to provide source code. If you like your Java there's also the JBoss MTA, which is under the LGPL.

So I guess if you want a BSD licensed MTA you need to go dig up an old copy of Sendmail. I was honestly surprised and thought OpenBSD would have forked Sendmail way back when it was BSD. OpenMTA? Maybe, someday.

No comments:

Post a Comment