martin f. krafft <madduck@madduck.net> [Fri, 13 Apr 2012 14:56:29 +0200] rev 521
Cache interpolated destination
Instead of running the string modification function for destination
interpolation twice, store the result once and use the stored result
subsequently.
Pascal Volk <user@localhost.localdomain.org> [Thu, 12 Apr 2012 18:22:54 +0000] rev 520
man: Use example.com in catchallinfo example output.
Pascal Volk <user@localhost.localdomain.org> [Thu, 12 Apr 2012 18:18:02 +0000] rev 519
README: reStructuredText fix: ERROR/3 and WARNING/2.
martin f. krafft <madduck@madduck.net> [Wed, 11 Apr 2012 16:23:27 +0200] rev 518
Enable interpolation of alias destinations
This patch modifies the virtual_alias_maps function so that the destination
address is parsed for the place holders %n, %d and %=, which are replaced with
the localpart, the domain or the full address with '@' replaced by '=' of the
queried key.
In combination with alias domains, this allows for domain-specific recipients.
E.g. given example.org and its alias domain example.com, defining an alias
postmaster@example.org → postmaster+%d@example.org
will cause mail to postmaster@example.*com* to go to
postmaster+example.*com*@example.org.
martin f. krafft <madduck@madduck.net> [Wed, 11 Apr 2012 09:08:19 +0200] rev 517
Add catch-all aliases to README/features
martin f. krafft <madduck@madduck.net> [Tue, 10 Apr 2012 23:50:35 +0200] rev 516
Add catchall subcommands to manpages
martin f. krafft <madduck@madduck.net> [Tue, 10 Apr 2012 23:50:18 +0200] rev 515
Include catch-all count in domaininfo output
martin f. krafft <madduck@madduck.net> [Tue, 10 Apr 2012 22:56:30 +0200] rev 514
Make PL/pgSQL function feed back identity for mailboxes/relocated when there
are catchall destinations.
Without catchall aliases, if no virtual_alias matches, the query can just
return NULL and Postfix will later check mailboxes/relocated for the address
to rewrite.
However, since virtual aliases are handled long before mailboxes/relocated,
a catchall alias would also catch mail to mailboxes and relocated addresses,
which we do not want.
The way to tell postfix to keep delivering is for the virtual alias map to
return the search key itself (identity function).
This patch changes the postfix_virtual_alias_maps Pl/pgSQL function to do
exactly that, but only if there are catchall destinations defined for the
domain in question — otherwise it returns NULL when no match is found.