Skip to content

Instantly share code, notes, and snippets.

@a3li
Created August 15, 2018 19:21
Show Gist options
  • Save a3li/179e24f6efdb8b2c82c6409ba41a9d35 to your computer and use it in GitHub Desktop.
Save a3li/179e24f6efdb8b2c82c6409ba41a9d35 to your computer and use it in GitHub Desktop.
user = mailcow
password = REDACTED
hosts = mysql
dbname = mailcow
# First select queries domain and alias_domain to determine if domains are active.
query = SELECT goto FROM alias
WHERE address='%s'
AND active='1'
AND (domain IN
(SELECT domain FROM domain
WHERE domain='%d'
AND active='1')
OR domain in (
SELECT alias_domain FROM alias_domain
WHERE alias_domain='%d'
AND active='1'
)
)
UNION
SELECT logged_in_as FROM sender_acl
WHERE send_as='@%d'
OR send_as='%s'
OR send_as IN (
SELECT CONCAT('@',target_domain) FROM alias_domain
WHERE alias_domain = '%d')
OR send_as IN (
SELECT CONCAT('%u','@',target_domain) FROM alias_domain
WHERE alias_domain = '%d')
AND logged_in_as NOT IN (
SELECT goto FROM alias
WHERE address='%s')
UNION
SELECT username FROM mailbox, alias_domain
WHERE alias_domain.alias_domain = '%d'
AND mailbox.username = CONCAT('%u','@',alias_domain.target_domain)
AND mailbox.active ='1'
AND alias_domain.active='1'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment