This release adds the ability to disable the catch-all feature on additional usernames. Each additional username now has a toggle so you can enable/disable catch-all.
- Make sure that you run
php aritsan migrate
when updating to add thecatch_all
column to the additional_usernames table - You must also update your query in
/etc/postfix/mysql-recipient-access-domains-and-additional-usernames.cf
file to the following in order for the catch-all feature to work:
query = SELECT (SELECT CASE WHEN NOT EXISTS(SELECT NULL FROM aliases WHERE email = '%s') AND additional_usernames.catch_all = 0 OR domains.catch_all = 0 THEN "REJECT" WHEN additional_usernames.active = 0 OR domains.active = 0 THEN "DISCARD" ELSE NULL END FROM additional_usernames, domains WHERE SUBSTRING_INDEX('%s', '@',-1) IN (CONCAT(additional_usernames.username, '.example.com')) OR domains.domain = SUBSTRING_INDEX('%s', '@',-1) LIMIT 1) AS result LIMIT 1;
-
Make sure to replace
.example.com
in the above query with your actual domain! -
If you have catch-all disabled for an additional username and someone sends an email to an alias that does not already exist then it will be
REJECTED
.