From: Wietse Venema on
Victor Duchovni:
> On Tue, Jul 20, 2010 at 06:17:52AM +0200, Stefan Foerster wrote:
>
> > * Victor Duchovni <Victor.Duchovni(a)morganstanley.com>:
> > > On Sun, Jul 18, 2010 at 12:14:17PM +0200, Stefan Foerster wrote:
> > >
> > > > Given: A dedicated Postfix instance, configured to accept mails from
> > > > SASL authenticated users. It seems that unlike access(5) maps, the
> > > > lookup for smtpd_sender_login_maps for addresses which contain
> > > > $recipient_delimiter is not tried at all without the extension:
> > >
> > > This is false. Exactly the same code handles access table lookups as
> > > sender login lookups, only the interpretation of the results is different.
> >
> > This is in no way meant as an "ad hominem" attack, but while the above
> > is probably 100% correct, it is neither helpful nor purposeful.
>
> If you have specified a recipient delimiter, the smtpd(8) server
> will use the sender address with and without the extension. This is
> true at least as far back as Postfix 2.5.
>
> Feel free to post "smtpd -v" or "debug_peer_list" verbose logging
> to prove otherwise. The logs of which queries are made look
> (system-dependent) like:
>
> postfix/smtpd[pid]: maps_find: ...
>
> > > Partial key lookups are not implemented in postmap, which performs
> > > exactly the requested query. Your test is invalid.
> >
> > I could have shown you the whole database, and the queries.
>
> That's nice, by the lookup code path is still the same... Only the
> parsing of the lookup result is different.

smtpd_sender_login_maps uses the same lookup routine as virtual_alias_maps
and canonical_maps, including the behavior for extensions.

Wietse