Fix inconsistent alias domain catchall behaviour

Postfix lookups for catchall case on non-alias domain:

1. user@domain
   - virtual_alias_maps.cf -> no match
   - virtual_alias_domain_maps.cf -> no match
   - virtual_alias_domain_catchall_maps.cf -> no match
   - custom virtual_alias_maps -> no match
2. user -> not relevant
3. @domain
   - virtual_alias_maps.cf -> **match**, lookup ends here

With an alias domain the behaviour was:

1. user@domain
   - virtual_alias_maps.cf -> no match
   - virtual_alias_domain_maps.cf -> no match
   - virtual_alias_domain_catchall_maps.cf -> **match**, lookup ends here

In this case custom virtual_alias_maps are ignored.

With this change the behaviour is:

1. user@domain
   - virtual_alias_maps.cf -> no match
   - virtual_alias_domain_maps.cf -> no match
   - virtual_alias_domain_catchall_maps.cf -> no match
   - custom virtual_alias_maps -> no match
2. user -> not relevant
3. @domain
   - virtual_alias_maps.cf -> no match
   - virtual_alias_domain_maps.cf -> **match**, lookup ends here

The change removes virtual_alias_domain_catchall_maps.cf entirely and
rewrites virtual_alias_domain_maps.cf to also work for catchall lookups.
This commit is contained in:
Julian Rother 2025-08-28 00:21:21 +02:00
parent e116d74fb7
commit d544011b66
Signed by: julian
GPG key ID: C19B924C0CD13341
4 changed files with 2 additions and 7 deletions

View file

@ -216,7 +216,6 @@
- pgsql/relay_domains.cf
- pgsql/virtual_alias_maps.cf
- pgsql/virtual_alias_domain_maps.cf
- pgsql/virtual_alias_domain_catchall_maps.cf
- pgsql/virtual_domains_maps.cf
- pgsql/virtual_mailbox_maps.cf
- pgsql/virtual_sender_maps.cf