martin f. krafft <madduck@madduck.net> [Tue, 02 Oct 2012 07:47:20 +0200] rev 625
Add list* commands to manpages
Pascal Volk <user@localhost.localdomain.org> [Mon, 01 Oct 2012 18:57:44 +0000] rev 624
UPGRADE: Added procedure for updating from v0.6.0.
Pascal Volk <user@localhost.localdomain.org> [Sun, 30 Sep 2012 16:09:37 +0000] rev 623
update_config: Updated to work with version 0.6.0.
Fixed some PEP8 related issues.
Pascal Volk <user@localhost.localdomain.org> [Sat, 29 Sep 2012 17:13:29 +0000] rev 622
doc/web: Updated and extended documentation.
Updated description of subcommands aliasdelete and catchalldelete.
Added description of subcommands listaddresses, listaliases,
listrelocated and listusers.
Pascal Volk <user@localhost.localdomain.org> [Sat, 29 Sep 2012 15:57:24 +0000] rev 621
VMM/cli/clihelp: Added missing help messages.
Added descriptions of subcommands listaddresses, listaliases,
listrelocated and listusers.
Pascal Volk <user@localhost.localdomain.org> [Thu, 27 Sep 2012 20:20:49 +0000] rev 620
po: Updated Dutch translation (translated by Erwin Poeze).
Pascal Volk <user@localhost.localdomain.org> [Thu, 27 Sep 2012 20:03:05 +0000] rev 619
VMM/alias: Load destination addresses sorted.
This produces sorted output for the aliasinfo subcommand.
Pascal Volk <user@localhost.localdomain.org> [Thu, 27 Sep 2012 19:15:09 +0000] rev 618
VMM: {alias,catchall}delete: Accept multiple destinations.
Pascal Volk <user@localhost.localdomain.org> [Mon, 24 Sep 2012 19:13:51 +0000] rev 617
po: Updated Dutch translation (translated by Erwin Poeze).
Pascal Volk <user@localhost.localdomain.org> [Sun, 23 Sep 2012 17:22:42 +0000] rev 616
VMM/cli/main: Check if we have warnings before exiting.
If so, print them and exit afterwards.
Pascal Volk <user@localhost.localdomain.org> [Sun, 16 Sep 2012 17:09:45 +0000] rev 615
VMM/domain: Enabled transport-validation.
Validate the transport also in Domain.set_transport() and
Domain.update_transport().
Pascal Volk <user@localhost.localdomain.org> [Sun, 16 Sep 2012 17:05:33 +0000] rev 614
VMM: Moved transport-validation to common.
Pascal Volk <user@localhost.localdomain.org> [Sat, 15 Sep 2012 17:31:34 +0000] rev 613
VMM/account: Fixed account's transport check.
Make sure that 'virtual:' isn't used as transport when the mailbox-format
is set to mdbox or sdbox.
Pascal Volk <user@localhost.localdomain.org> [Wed, 12 Sep 2012 19:19:05 +0000] rev 612
po: Updated Dutch translation (translated by Erwin Poeze).
Pascal Volk <user@localhost.localdomain.org> [Wed, 05 Sep 2012 21:30:42 +0000] rev 611
PEP8: Fixed all PEP8 related issues.
Pascal Volk <user@localhost.localdomain.org> [Mon, 03 Sep 2012 22:40:01 +0000] rev 610
po: Regenerated vmm.pot
Pascal Volk <user@localhost.localdomain.org> [Mon, 03 Sep 2012 22:32:17 +0000] rev 609
Added a few comments for the Translation Project.
Pascal Volk <user@localhost.localdomain.org> [Mon, 03 Sep 2012 19:59:49 +0000] rev 608
VMM: Corrected/updated some msgids.
Unified some messages and corrected a few typos.
Pascal Volk <user@localhost.localdomain.org> [Sun, 02 Sep 2012 21:33:53 +0000] rev 607
VMM/cli/subcommands: Corrected username's usage string.
username's name argument is optional.
Pascal Volk <user@localhost.localdomain.org> [Sun, 02 Sep 2012 21:01:40 +0000] rev 606
VMM/cli: Activated help subcommand.
Implemented Command.help_(), which reads the command's help message from
cli.clihelp.
Pascal Volk <user@localhost.localdomain.org> [Sun, 02 Sep 2012 20:18:16 +0000] rev 605
VMM/handler: Fixed user{quota,services,transport} subcommands.
The subcommands user{quota,services,transport} actually failed with the
arguments '<address> domain'.
This is part II of changeset a75923ce2842
Pascal Volk <user@localhost.localdomain.org> [Sun, 02 Sep 2012 17:23:46 +0000] rev 604
doc/web: Added missing userservices description.
Fixed order of subcommand listing.
Pascal Volk <user@localhost.localdomain.org> [Sun, 02 Sep 2012 16:47:53 +0000] rev 603
man: Typo-fix.
Pascal Volk <user@localhost.localdomain.org> [Sun, 02 Sep 2012 15:24:41 +0000] rev 602
VMM/cli/subcommands: Corrected two usage strings.
domainnote's and usernote's note argument is optional.
Pascal Volk <user@localhost.localdomain.org> [Sat, 01 Sep 2012 23:02:01 +0000] rev 601
VMM: Decode localized numbers to the current encoding.
That avoids UnicodeDecodeErrors since locale.format(%d) may return localized
numbers, which contain NO-BREAK SPACE as the thousands separator.
Pascal Volk <user@localhost.localdomain.org> [Tue, 28 Aug 2012 22:37:43 +0000] rev 600
VMM/cli/subcommands: Don't mark empty strings as translatable.
gettext('') returns the header entry with meta information, not the empty
string.
Pascal Volk <user@localhost.localdomain.org> [Tue, 28 Aug 2012 00:52:50 +0000] rev 599
doc/web: Added description 'Upgrade to Dovecot ≧ v1.2.beta2'.
Pascal Volk <user@localhost.localdomain.org> [Mon, 27 Aug 2012 23:58:33 +0000] rev 598
pgsql: Added dovecot_update_v1.2+.pgsql.
Use this file when you are upgrading your Dovecot installation to
a version >= 1.2.beta2.
Pascal Volk <user@localhost.localdomain.org> [Mon, 27 Aug 2012 22:35:05 +0000] rev 597
VMM/cli/subcommands: Reverted accidentally committed help() code.
Pascal Volk <user@localhost.localdomain.org> [Mon, 27 Aug 2012 22:24:11 +0000] rev 596
pgsql/create_tables.pgsql: Eliminated two unnecessary differences.
Yeah, cosmetic only.
Pascal Volk <user@localhost.localdomain.org> [Mon, 27 Aug 2012 22:09:24 +0000] rev 595
pgsql: Don't select service_set.ssid in dovecotpassword() unconditional.
This may cause an empty result, which will make logins impossible.
Pascal Volk <user@localhost.localdomain.org> [Mon, 27 Aug 2012 20:49:31 +0000] rev 594
VMM/serviceset: Fixed a conditional ProgrammingError.
Affects only setups with Dovecot < v1.2.beta2. Actually the SQL query in
method ServiceSet._load_by_services wasn't updated.
Removed unnecessary code, which would have also produced a
ProgrammingError, if it would have been correct.
Pascal Volk <user@localhost.localdomain.org> [Thu, 23 Aug 2012 21:27:33 +0000] rev 593
VMM/cli/subcommands: Added 'missing' newline below domain notes.
This patch contains also a small code cleanup and PEP8-fix.
Pascal Volk <user@localhost.localdomain.org> [Sun, 19 Aug 2012 11:47:21 +0000] rev 592
doc/web: Added the transport filed to the usertransport example.
Pascal Volk <user@localhost.localdomain.org> [Sun, 12 Aug 2012 21:09:21 +0000] rev 591
doc/web: Added the 'Howto'.
The reStructuredText version of vmm.1, in multiple parts.
Pascal Volk <user@localhost.localdomain.org> [Sun, 12 Aug 2012 18:10:42 +0000] rev 590
man/{de/}man1: A few more corrections.
Pascal Volk <user@localhost.localdomain.org> [Sun, 12 Aug 2012 13:59:50 +0000] rev 589
man/{de/}man1: Small corrections for domaininfo's description.
Pascal Volk <user@localhost.localdomain.org> [Sun, 12 Aug 2012 13:31:44 +0000] rev 588
man/{de/}man5: s/Wiki/Homepage/g
Pascal Volk <user@localhost.localdomain.org> [Sat, 11 Aug 2012 16:13:12 +0000] rev 587
man/{de/}man1: s/Wiki/Homepage/g
martin f. krafft <madduck@debian.org> [Wed, 08 Aug 2012 14:37:29 +0000] rev 586
VMM/common: Improve search_address complexity
Checking the dictionary (a hash) for existence of a key is likely to be
O(log(n)), while checking a list is O(n). Therefore, to increase
performance, this patch changes the check accordingly.
Pascal Volk <user@localhost.localdomain.org> [Tue, 07 Aug 2012 23:55:41 +0000] rev 585
doc/web: Refreshed vmm.cfg
Pascal Volk <user@localhost.localdomain.org> [Tue, 07 Aug 2012 23:50:11 +0000] rev 584
vmm.cfg: Updated/improved comments.
"martin f. krafft" <madduck@debian.org> [Tue, 07 Aug 2012 21:54:39 +0000] rev 583
If an alias has multiple destinations, multiple records exist, due to
the nature of the database. address_list would then return the same
alias multiple times, which does not add any information, eats screen
space and is potentially confusing.
Therefore, we SELECT DISTINCTly from the alias table.
Signed-off-by: martin f. krafft <madduck@debian.org>
---
VirtualMailManager/common.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
"martin f. krafft" <madduck@debian.org> [Tue, 07 Aug 2012 21:53:41 +0000] rev 582
Due to the UNION query in address_list, the assumption that the list of
gids received from the database would be continuous does not hold.
To prevent addresses for domains with multiple entry types from being
listed, it is necessary to check the list of domain gids for every
entry.
Signed-off-by: martin f. krafft <madduck@debian.org>
---
VirtualMailManager/common.py | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
Pascal Volk <user@localhost.localdomain.org> [Sun, 29 Jul 2012 16:44:20 +0000] rev 581
doc/web: Emphasized a few lines of Dovecot/PostgreSQL configuration
file excerpts.
Pascal Volk <user@localhost.localdomain.org> [Sun, 29 Jul 2012 14:56:14 +0000] rev 580
.hgignore: "doc/build" is no longer required.
Pascal Volk <user@localhost.localdomain.org> [Sun, 29 Jul 2012 14:46:52 +0000] rev 579
doc: Added source of http://vmm.localdomain.org/.
Pascal Volk <user@localhost.localdomain.org> [Sun, 29 Jul 2012 14:17:05 +0000] rev 578
doc: Moved API documentation to doc/api.
Pascal Volk <user@localhost.localdomain.org> [Sun, 22 Jul 2012 20:19:07 +0000] rev 577
INSTALL: Updated PostgreSQL configuration URL.
Use ${sql} and ${proxysql} expressions in the main.cf description.
Pascal Volk <user@localhost.localdomain.org> [Sun, 01 Jul 2012 18:50:32 +0000] rev 576
README: Substituted a few words.
Pascal Volk <user@localhost.localdomain.org> [Sat, 30 Jun 2012 19:09:20 +0000] rev 575
README: Updated URL of the hg repository@sf.net.
Pascal Volk <user@localhost.localdomain.org> [Sat, 30 Jun 2012 16:21:26 +0000] rev 574
man: Deleted erroneous placed backslash.
Pascal Volk <user@localhost.localdomain.org> [Thu, 28 Jun 2012 21:40:08 +0000] rev 573
Added tag vmm-0.6.0 for changeset 3238c58d01ae
Pascal Volk <user@localhost.localdomain.org> [Thu, 28 Jun 2012 21:39:59 +0000] rev 572
Released vmm-0.6.0
Pascal Volk <user@localhost.localdomain.org> [Thu, 28 Jun 2012 19:26:50 +0000] rev 571
Merged changes from v0.6.x(28230a8230bf).
Pascal Volk <user@localhost.localdomain.org> [Thu, 28 Jun 2012 19:23:24 +0000] rev 570
Close v0.6.x branch.
Pascal Volk <user@localhost.localdomain.org> [Thu, 28 Jun 2012 18:48:37 +0000] rev 569
vmm: Don't insert the module directory into sys.path by default.
Doesn't make much sense, if the code is installed inside sys.path.
Pascal Volk <user@localhost.localdomain.org> [Thu, 28 Jun 2012 18:33:32 +0000] rev 568
Updated copyright notices to include the year 2012.
Pascal Volk <user@localhost.localdomain.org> [Thu, 28 Jun 2012 18:03:48 +0000] rev 567
TODO: Removed "listpwschemes" entry.
Was done with changeset a64c1b5e08b4
Pascal Volk <user@localhost.localdomain.org> [Thu, 28 Jun 2012 17:51:23 +0000] rev 566
UPGRADE: Updated documentation.
Pascal Volk <user@localhost.localdomain.org> [Thu, 28 Jun 2012 16:16:01 +0000] rev 565
VMM/cli/subcommands: Replaced the keyword `default' by `domain'.
Patch by Martin F. Krafft
Pascal Volk <user@localhost.localdomain.org> [Wed, 27 Jun 2012 21:36:36 +0000] rev 564
INSTALL: Added description how to create additional dove* user/group.
`doveauth' user and group for the authentication process and the group
`dovemail' for mail related Dovecot processes.
Pascal Volk <user@localhost.localdomain.org> [Wed, 27 Jun 2012 20:20:00 +0000] rev 563
INSTALL: Updated documentation.
Pascal Volk <user@localhost.localdomain.org> [Wed, 27 Jun 2012 20:15:06 +0000] rev 562
Configure.Dovecot_2: Added configuration documentation for Dovecot_2 >= 2.0.
Pascal Volk <user@localhost.localdomain.org> [Wed, 27 Jun 2012 13:11:28 +0000] rev 561
VMM: The Python 2.4.x compatibility commit - part III.
Pascal Volk <user@localhost.localdomain.org> [Wed, 27 Jun 2012 12:46:27 +0000] rev 560
VMM/account: Check the account's transport only when we have a transport.
Pascal Volk <user@localhost.localdomain.org> [Wed, 27 Jun 2012 12:18:53 +0000] rev 559
VMM: The Python 2.4.x compatibility commit.
Pascal Volk <user@localhost.localdomain.org> [Thu, 14 Jun 2012 20:45:12 +0000] rev 558
pgsql/set-permissions.py: Extended permissions.
Postfix needs read access on the postfix_gid view. Dovecot needs read
permissions on both mailboxformat columns.
Pascal Volk <user@localhost.localdomain.org> [Thu, 14 Jun 2012 16:06:09 +0000] rev 557
VMM/handler: Restored method Handler.domain_transport().
It went somehow lost with changeset 5806fb74130b.
Pascal Volk <user@localhost.localdomain.org> [Thu, 31 May 2012 18:48:00 +0000] rev 556
pgsql: Added helper script: set-permissions.py.
martin f. krafft <madduck@madduck.net> [Sun, 15 Apr 2012 13:17:21 +0200] rev 555
Provide list{addresses,aliases,users,relocated} subcommands
The patch provides the list{addresses,aliases,users,relocated} subcommands to
the UI. All commands actually take the same path in the code and only one
query is run with different parameters for each case.
There are still two shortcomings:
1. With alias domains, the output order is not as one might want it, e.g.
foo@example.org
bar@example.org
foo@example.com
bar@example.com
when it should really be foo@ twice and then bar@ twice. I have not found
a way to modify the SQL accordingly.
2. The SELECT queries for Accounts, Alias and Relocated are hard-coded in
common.py.
martin f. krafft <madduck@madduck.net> [Sun, 15 Apr 2012 19:56:21 +0200] rev 554
man: escape hyphens
Hyphens inside words must be spelt \- instead of just -. This patch fixes up
the manpages.
* * *
.
martin f. krafft <madduck@madduck.net> [Sun, 15 Apr 2012 19:47:58 +0200] rev 553
man: add 'catchall' to domaininfo
Since the addition of catchall, the domaininfo subcommand can also take
'catchall' as a [detail] to limit the output of details to the catch-all
aliases.
Also, the number of catch-all destinations is now included in the simple
domaininfo output.
Pascal Volk <user@localhost.localdomain.org> [Sun, 15 Apr 2012 16:17:50 +0000] rev 552
man: vmm1: Use `fqdn' instead of `domain' in catchall* descriptions.
Fixed a typo s/cadd/cad/. Replaced double quotes by \(dq.
Pascal Volk <user@localhost.localdomain.org> [Sun, 15 Apr 2012 15:56:01 +0000] rev 551
VMM/cli/subcommands: Use the `fqdn' argument placeholder also for
catch-all subcommands.
martin f. krafft <madduck@madduck.net> [Sun, 15 Apr 2012 17:51:00 +0200] rev 550
Fix transport_maps function for non-existent domains
The postfix_transport_maps function had a bug causing
2012-04-15 17:40:22 CEST LOG: statement: SELECT transport FROM postfix_transport_map('logcheck', 'domine.madduck.net');
2012-04-15 17:40:22 CEST ERROR: query returned no rows
when the domain was not in the database. This would make did be NULL and make
the query fail.
This patch moves the tid query until after a check for did. If the latter is
NULL, the function RETURNs (rather than fails).
martin f. krafft <madduck@madduck.net> [Sun, 15 Apr 2012 17:36:26 +0200] rev 549
Revert caching of destination interpolation
Since 'destination' comes from the table in the query, it cannot be cached
across queries! Doh!
Pascal Volk <user@localhost.localdomain.org> [Sun, 15 Apr 2012 15:30:16 +0000] rev 548
pgsql: update_tables_*: Added missing `NOT' to `… tid DROP NOT NULL;'.
Pascal Volk <user@localhost.localdomain.org> [Sun, 15 Apr 2012 12:54:16 +0000] rev 547
pgsql: Create column `note' as text.
martin f. krafft <madduck@madduck.net> [Sun, 15 Apr 2012 14:10:40 +0200] rev 546
Add docstring for common.format_domain_default
martin f. krafft <madduck@madduck.net> [Sat, 14 Apr 2012 21:48:00 +0200] rev 545
Document domainnote in manpages
5806fb74130b did not contain this, so I must have forgotten it. Oops.
martin f. krafft <madduck@madduck.net> [Sat, 14 Apr 2012 22:56:52 +0200] rev 544
Remove domain/account notes from TODO
martin f. krafft <madduck@madduck.net> [Sat, 14 Apr 2012 22:53:21 +0200] rev 543
Include account note in getuser output
Modify the getuser output to include an account note, if one is present
martin f. krafft <madduck@madduck.net> [Sat, 14 Apr 2012 22:52:40 +0200] rev 542
Display formatted notes in info output
If the user/domain object has an attached note, this patch makes the
userinfo/domaininfo output print the note, wrapped to the terminal size.
martin f. krafft <madduck@madduck.net> [Sat, 14 Apr 2012 21:20:06 +0200] rev 541
Ignore *.egg-status build directory created by setuptools
martin f. krafft <madduck@madduck.net> [Sat, 14 Apr 2012 15:44:23 +0200] rev 540
Add user/domainnote commands to manpages
martin f. krafft <madduck@madduck.net> [Sat, 14 Apr 2012 13:29:01 +0200] rev 539
Add note field to Account/Domain and CLI
martin f. krafft <madduck@madduck.net> [Sat, 14 Apr 2012 12:58:20 +0200] rev 538
Modify SQL to add note field to domain_data and users
Pascal Volk <user@localhost.localdomain.org> [Sat, 14 Apr 2012 16:02:46 +0000] rev 537
man: vmm.1: subcommand's name argument is optional now.
Based on martin f. krafft's v2 of changeset c340ba4bd544.
martin f. krafft <madduck@madduck.net> [Sat, 14 Apr 2012 14:33:21 +0200] rev 536
Allow username to take no argument to erase value
Once a username has been set, it could not be removed via the UI. Now, if no
argument is passed to username, the value stored is replaced with NULL.
martin f. krafft <madduck@madduck.net> [Sat, 14 Apr 2012 12:39:06 +0200] rev 535
Add inheritance as a feature to README
martin f. krafft <madduck@madduck.net> [Sat, 14 Apr 2012 12:37:08 +0200] rev 534
Change 'force' argument to reset user records for tid/ssid/qid
If domain{quotalimit,transport,serviceset} are run with 'force' and settings
are inheritable from the domain, then rather than to copy the ID to the user
table, the affected field in the user records should be set to NULL so that
the domain default is used.
martin f. krafft <madduck@madduck.net> [Sat, 14 Apr 2012 00:36:43 +0200] rev 533
Change UI to accept 'default' to restore inherited values
Instead of explicit values for tid/ssid/qid, the UI now accepts 'default',
which removed user-pecific settings and hence causes domain defaults to be
used.
martin f. krafft <madduck@madduck.net> [Fri, 13 Apr 2012 23:24:12 +0200] rev 532
Modify userinfo output to indicate when domain defaults are displayed
When Account instances reference NULL tid/qid/ssid, the data must come from
the associated domain, and this should be indicated. For transport and
services, this is easy to do as the string passed in the info dict can simply
be modified. For quotalimit, however, another method must be used due to the
CLI-side formatting.
All approaches use a common formatter outsourced to the common.py file.
martin f. krafft <madduck@madduck.net> [Fri, 13 Apr 2012 23:09:40 +0200] rev 531
Modify Account class to handle NULL references
This patch modifies the Account class to defer to using the associated
domain's tid/ssid/qid fields if the per-instance fields are None/NULL.
martin f. krafft <madduck@madduck.net> [Fri, 13 Apr 2012 17:49:14 +0200] rev 530
Modify SQL update script to accept NULL fields for users
The value NULL in the qid/ssid/tid fields of the user table means that the
value from the associated domain record should be used instead.
This patch modifies the PL/pgSQL functions used by Dovecot and Postfix
accordingly.
martin f. krafft <madduck@madduck.net> [Fri, 13 Apr 2012 23:49:26 +0200] rev 529
man: Add examples for userservices
Pascal Volk <user@localhost.localdomain.org> [Sat, 14 Apr 2012 15:11:27 +0000] rev 528
Reverted previous three changesets (e09139525580, 85517c8fde36, 3acbff727626)
martin f. krafft <madduck@madduck.net> [Fri, 13 Apr 2012 23:24:12 +0200] rev 527
Modify userinfo output to indicate when domain defaults are displayed
When Account instances reference NULL tid/qid/ssid, the data must come from
the associated domain, and this should be indicated. For transport and
services, this is easy to do as the string passed in the info dict can simply
be modified. For quotalimit, however, another method must be used due to the
CLI-side formatting.
All approaches use a common formatter outsourced to the common.py file.
martin f. krafft <madduck@madduck.net> [Fri, 13 Apr 2012 23:09:40 +0200] rev 526
Modify Account class to handle NULL references
This patch modifies the Account class to defer to using the associated
domain's tid/ssid/qid fields if the per-instance fields are None/NULL.
martin f. krafft <madduck@madduck.net> [Fri, 13 Apr 2012 17:49:14 +0200] rev 525
Modify SQL update script to accept NULL fields for users
The value NULL in the qid/ssid/tid fields of the user table means that the
value from the associated domain record should be used instead.
This patch modifies the PL/pgSQL functions used by Dovecot and Postfix
accordingly.
martin f. krafft <madduck@madduck.net> [Sat, 14 Apr 2012 11:50:33 +0200] rev 524
Add list* subcommands to TODO
martin f. krafft <madduck@madduck.net> [Sat, 14 Apr 2012 10:41:10 +0200] rev 523
add domain/account notes to TODO
martin f. krafft <madduck@madduck.net> [Fri, 13 Apr 2012 22:57:23 +0200] rev 522
Add my WIP items to the TODO list
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.