From: Zach White Date: 01:14 on 26 May 2006 Subject: sendmail, user catchalls, and other MTA hate So I'm rebuilding a machine that at various times over the years has run qmail and courier. Both of those pieces of software have a really nice feature where you can email user-<something>@domain, and if user-<something> doesn't exist on the machine the mail will get delivered to user. In fact, I'm pretty sure that qmail originated this feature, but I'm too hateful right now to verify that. So in rebuilding this machine, I decide that rather than install a different MTA, I'll go with sendmail, which comes with the machine. Contrary to past experience, sendmail really isn't as hateful as I was prepared for it to be. Except when it comes to making sure that my 623,612 subscriptions that use zwhite-<listname> still work without specifying each one in either aliases or virtusertable. Nothing in the documentation about how to do that. Nothing in the FAQ. Nothing I can find using google. It doesn't help that google ignores the + and - characters in searches, either. According to a friend who is a sendmail ninja, I'll have to change the source. Good thing that + isn't used very often in code, isn't it? root:/usr/src/gnu/usr.sbin/sendmail:35# grep -r '+' . | wc -l 4336 HATE HATE HATE
From: Zach White Date: 01:20 on 26 May 2006 Subject: Re: sendmail, user catchalls, and other MTA hate On Fri, May 26, 2006 at 12:14:43AM +0000, Zach White wrote: > According to a friend who is a sendmail ninja, I'll have to change the > source. Good thing that + isn't used very often in code, isn't it? *sigh* My first rant, and I forget the crucial piece. I don't normally reply to my own posts, honest. Sendmail does exactly what I want, if I use user+<whatever>. I want it to use user-<whatever>. That's where the changing the source part comes in. Still, HATE. -Zach
From: spc (Sean 'Captain Napalm' Conner) Date: 02:46 on 26 May 2006 Subject: Re: sendmail, user catchalls, and other MTA hate It was thus said that the Great Zach White once stated: > > On Fri, May 26, 2006 at 12:14:43AM +0000, Zach White wrote: > > According to a friend who is a sendmail ninja, I'll have to change the > > source. Good thing that + isn't used very often in code, isn't it? > > *sigh* > > My first rant, and I forget the crucial piece. I don't normally reply to > my own posts, honest. > > Sendmail does exactly what I want, if I use user+<whatever>. I want it > to use user-<whatever>. That's where the changing the source part comes > in. The actual *source code* to sendmail, or the sendmail.cf file? Granted, changing either is hateful, but of the two, I think I'd rather change the sendmail.cf file (which I've done before and will never have to do again, thankfully). -spc (If a configuration file needs a configuration file, then that's a definite sign of bad design ... )
From: Bruce Richardson Date: 15:02 on 26 May 2006 Subject: Re: sendmail, user catchalls, and other MTA hate On Thu, May 25, 2006 at 09:46:47PM -0400, Sean 'Captain Napalm' Conner wrote: > It was thus said that the Great Zach White once stated: > > > > On Fri, May 26, 2006 at 12:14:43AM +0000, Zach White wrote: > > > According to a friend who is a sendmail ninja, I'll have to change the > > > source. Good thing that + isn't used very often in code, isn't it? > > > > *sigh* > > > > My first rant, and I forget the crucial piece. I don't normally reply to > > my own posts, honest. > > > > Sendmail does exactly what I want, if I use user+<whatever>. I want it > > to use user-<whatever>. That's where the changing the source part comes > > in. > > The actual *source code* to sendmail, or the sendmail.cf file? Granted, > changing either is hateful, but of the two, I think I'd rather change the > sendmail.cf file It's the .cf file that needs changing. The sendmail configuration language is Turing complete and the sendmail binary is an interpreter for that language which just happens to deliver e-mail as a side effect, so it certainly can do this. I can't tell you how any more, though, because I moved on to using Exim which can't do everything Sendmail can but does manage 99.99% of anything you'd ever want from a modern MTA with a much more readable config file.
From: Tom Duff Date: 17:33 on 26 May 2006 Subject: Re: sendmail, user catchalls, and other MTA hate On Fri, 26 May 2006, Bruce Richardson wrote: > The sendmail configuration language is Turing complete ... > so it certainly can do this. Probably true, but not necessarily. For example, the universality result may have problem-encoding requirements that preclude this. See item 64 of HAKMEM. http://www.inwap.com/pdp10/hbaker/hakmem/automata.html (There's a transcription error on this page: limited should be unlimited.)
From: Zach White Date: 23:59 on 30 May 2006 Subject: Re: sendmail, user catchalls, and other MTA hate On Fri, May 26, 2006 at 03:02:37PM +0100, Bruce Richardson wrote: > It's the .cf file that needs changing. The sendmail configuration > language is Turing complete and the sendmail binary is an interpreter for > that language which just happens to deliver e-mail as a side effect, so > it certainly can do this. FWIW, it was only the CF that needed changing. And it was so obvious, too, I can't believe I didn't think of this in the first place. cat >> /usr/share/sendmail/cf/openbsd-proto.mc << EOF LOCAL_CONFIG Kplus regex -d+ -s1,2 ^([^-_]+)[-_](.+)$ LOCAL_RULE_0 R$* <@ $=w. > $* $: $(plus $1 $) <@$2.> $3 EOF Well, ok, that just makes sendmail change the - to a + at some point during the delivery process, but it gets the job done which is all I care about at this point. Oh well. At least I got a nice long weekend away from software, and the hate that entails. -Zach PS- For those that suggested using a different MTA, I have hate a plenty for those too. But mainly, they don't satisfy requirement number 1 for me: coming with my base system. Makes upgrades less hateful, I'm finding.
From: Juerd Date: 07:11 on 31 May 2006 Subject: Re: sendmail, user catchalls, and other MTA hate Zach White skribis 2006-05-30 22:59 (+0000): > PS- For those that suggested using a different MTA, I have hate a plenty for > those too. But mainly, they don't satisfy requirement number 1 for me: coming > with my base system. Makes upgrades less hateful, I'm finding. So - change the base system too then. How hateful does your software have to be? Juerd
From: Jonathan Stowe Date: 08:49 on 31 May 2006 Subject: Re: sendmail, user catchalls, and other MTA hate On Wed, 2006-05-31 at 07:11, Juerd wrote: > Zach White skribis 2006-05-30 22:59 (+0000): > > PS- For those that suggested using a different MTA, I have hate a plenty for > > those too. But mainly, they don't satisfy requirement number 1 for me: coming > > with my base system. Makes upgrades less hateful, I'm finding. > > So - change the base system too then. It's hate all the way down... /J\
From: Aaron J. Grier Date: 02:28 on 01 Jun 2006 Subject: Re: sendmail, user catchalls, and other MTA hate On Wed, May 31, 2006 at 08:11:37AM +0200, Juerd wrote: > How hateful does your software have to be? if you can't hate it, is it still software?
From: Scott Evans Date: 09:17 on 26 May 2006 Subject: Re: sendmail, user catchalls, and other MTA hate de-hate. On my old Redhat 7.x box we did catchall address with a syntax like this in virtusertable: @antisleep.com gse@xxxxxxxxxxxxxxx.xxx gse On Fri, 26 May 2006, Zach White wrote: > So I'm rebuilding a machine that at various times over the years has run > qmail and courier. Both of those pieces of software have a really nice > feature where you can email user-<something>@domain, and if > user-<something> doesn't exist on the machine the mail will get delivered > to user. In fact, I'm pretty sure that qmail originated this feature, but > I'm too hateful right now to verify that. > > So in rebuilding this machine, I decide that rather than install a > different MTA, I'll go with sendmail, which comes with the machine. > Contrary to past experience, sendmail really isn't as hateful as I was > prepared for it to be. Except when it comes to making sure that my > 623,612 subscriptions that use zwhite-<listname> still work without > specifying each one in either aliases or virtusertable. > > Nothing in the documentation about how to do that. Nothing in the FAQ. > Nothing I can find using google. It doesn't help that google ignores the > + and - characters in searches, either. > > According to a friend who is a sendmail ninja, I'll have to change the > source. Good thing that + isn't used very often in code, isn't it? > > root:/usr/src/gnu/usr.sbin/sendmail:35# grep -r '+' . | wc -l > 4336 > > HATE HATE HATE >
From: Michael Ahlers Date: 13:58 on 26 May 2006 Subject: Re: sendmail, user catchalls, and other MTA hate This may not be helpful if you really want to use Sendmail (blech), but I know Postfix fully supports RFC 3598 (Subaddress Extension, http://rfc.net/rfc3598.html) and allows you to specify whichever delimiter you prefer (http://www.postfix.org/postconf. 5.html#recipient_delimiter). Postfix is very common in core package sets of just about every Linux distribution, AFAIK. On May 25, 2006, at 8:14 PM, Zach White wrote: > So I'm rebuilding a machine that at various times over the years > has run > qmail and courier. Both of those pieces of software have a really nice > feature where you can email user-<something>@domain, and if > user-<something> doesn't exist on the machine the mail will get > delivered > to user. In fact, I'm pretty sure that qmail originated this > feature, but > I'm too hateful right now to verify that. > > So in rebuilding this machine, I decide that rather than install a > different MTA, I'll go with sendmail, which comes with the machine. > Contrary to past experience, sendmail really isn't as hateful as I was > prepared for it to be. Except when it comes to making sure that my > 623,612 subscriptions that use zwhite-<listname> still work without > specifying each one in either aliases or virtusertable. > > Nothing in the documentation about how to do that. Nothing in the FAQ. > Nothing I can find using google. It doesn't help that google > ignores the > + and - characters in searches, either. > > According to a friend who is a sendmail ninja, I'll have to change the > source. Good thing that + isn't used very often in code, isn't it? > > root:/usr/src/gnu/usr.sbin/sendmail:35# grep -r '+' . | wc -l > 4336 > > HATE HATE HATE >
From: David Champion Date: 20:26 on 26 May 2006 Subject: Re: sendmail, user catchalls, and other MTA hate * On 2006.05.25, in <20060526001443.GW3392@xxxxxxxx.xxxx.xxx>, * "Zach White" <zwhite-hates-software@xxxxxxxx.xxxx.xxx> wrote: > > qmail and courier. Both of those pieces of software have a really nice > feature where you can email user-<something>@domain, and if > user-<something> doesn't exist on the machine the mail will get delivered > to user. In fact, I'm pretty sure that qmail originated this feature, but > I'm too hateful right now to verify that. I know this doesn't mitigate the hate, but it mitigates sendmail's blame share, and gives me an opening to hate. So here goes, even after I promised myself that I wouldn't post to hates-software any more this week. TTBOMK, qmail only originated the conversion of + to -. The feature itself (with a +, not a -) originated at Carnegie-Mellon University in the mid/late-80s as part of the Andrew Messaging System, and became an official part of sendmail later. (My knowledge is admittedly lacking, though, and it could have been Courier responsible for the change.) It would be nice if there were a simple macro pre-bundled with sendmail to let you change it for compatibility reasons. That said, I hate that qmail/courier changed it from + to -. OTOH, maybe it's a sign that it was the right decision that half the web registration apps on the planet disallow you from using + in your address; HATE. But on the third hand, + was never in conflict with common name templates, such that "wonk-admin@xxxxxxx.xxx" would break the "admin" detail, should a user named "wonk" ever show up. I think there's more hate in here somewhere, but I'm tired.
Generated at 18:00 on 21 Sep 2006 by mariachi