strange.

Quite frankly, the aliases expansion code does not work as it should
and there are many cases where it will fail expanding users as you'd
expect.

Good news is ... I rewrote it entirely and refactored various parts
of smtpd, I'm currently cleaning it up and testing before it can hit
the tree.

Gilles

On Tue, Feb 01, 2011 at 11:12:44PM +1030, David Walker wrote:
> Hi Gilles.
> 
> I noticed something that might be unexpected, in the works, maybe
> worth documenting.
> Maybe all the old sendmail hands expect this. :]
> 
> If I have this ...
> 
> listen on external_if
> 
> map "aliases" { source plain "/etc/mail/aliases" }
> 
> accept from all for domain example.org alias aliases deliver to mbox
> 
> ... and I use the default aliases file (with postmaster to root) and I
> send mail from outside to r...@example.org it is accepted and goes
> straight to root's mbox.
> No drama.
> 
> If, however, I send mail to postmas...@example.org it gets accepted by
> smtpd but never sent to the mbox with log entries such as (handtyped):
> aliases_exist: 'postmaster' exists with 1 expansion nodes
> aliases_get: returned 1 aliases
> lka_resolve_node: node is local username: root
> 
> Etcetera. So the aliasing works great. However, the ultimate log entry is:
> mta: new status for r...@example.org: 110 connect error: Operation timed out
> The mail never gets to root's mbox and if I run smtpctl show queue I
> can see the messages in the queue.
> 
> If I add this ...
> 
> listen on lo0
> 
> accept from all for local deliver to mbox
> 
> ... and resend another mail to postmaster it gets to root's mbox.
> 
> So for aliasing is working but once the alias is resolved smtpd
> apparently considers the mail to be part of a new transaction that
> looks for a "for local" (with "from local" as a minimum) rule.
> 
> Yep, I'm not a programmer.
> 
> Best wishes.

-- 
Gilles Chehade
freelance developer/sysadmin/consultant

                   http://www.poolp.org

Reply via email to