On 2/19/2010 8:49 AM, Barney Desmond wrote:
On 20 February 2010 01:40, Geert Lorang<ge...@lorang.be>  wrote:
glorang:~# cat /etc/postfix/generic
@mydomain.be  accep...@relayhost.other.domain

Now try to lookup someth...@mydomain.be:

glorang:~# postmap -q someth...@mydomain.be /etc/postfix/generic
glorang:~# echo $?
1

So no output (no match found) and return value>  0, so you would expect
this can't work, but in fact it just works. I would expect that "postmap
-q whate...@mydomain.be /etc/postfix/generic" returns accep...@... in
every case (and return code 0), but it doesn't?

If this is by design maybe add this somehow in the docs...

The trick is that postmap is "dumb" - it doesn't know *why* you're
searching, so it doesn't strip the local part. This confuses people
sometimes because using `postmap -q` isn't the same as what Postfix
does, Postfix does a lot more.

The lookup mechanism is entirely generic, it's just key->value
mappings. It doesn't know what an email address is, or what it looks
like. The apparent deficiency here isn't a matter of by-design or
not-by-design, it's just not a consideration.

As you've probably guessed by now, if you think like Postfix, you'll
get what you expect.

glorang:~# postmap -q @mydomain.be /etc/postfix/generic
accep...@relayhost.other.domain

This is documented in the "TABLE SEARCH ORDER" section of each postfix table-related feature. See
http://www.postfix.org/generic.5.html
or the other "Table-driven mechanisms" listed in
http://www.postfix.org/postfix-manuals.html

  -- Noel Jones

Reply via email to