You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
20 lines
844 B
20 lines
844 B
#!/bin/sh |
|
# Copyright (C) 2015 Travis Burtrum |
|
# This file is MIT/X11 licensed. |
|
|
|
# run like ./mod_alias_postfixadmin.sh "mysql -N -upostfixadmin -ppostfixadmin postfixadmin" > /etc/prosody/aliases.cfg.lua |
|
# then put: |
|
# Include "aliases.cfg.lua" |
|
# in prosody.cfg.lua |
|
|
|
mysql="$1" |
|
|
|
echo "-- alias plugin, generated by mod_alias_postfixadmin.sh" |
|
echo "aliases = {" |
|
|
|
echo "SELECT concat('["'"'"', address, '"'"'"] = "'"'"', goto, '"'"'";') FROM alias WHERE address != goto; |
|
SELECT concat('["'"'"', address, '"'"'"] = "'"'"', goto, '"'"'";') FROM ( |
|
select replace(address, concat('@', target_domain), concat('@', alias_domain)) as address, goto FROM alias JOIN alias_domain ON alias_domain.target_domain = SUBSTRING(alias.address, locate('@',alias.address) + 1, length(alias.address)) |
|
) a WHERE a.address != a.goto;" | $mysql | sort | uniq |
|
|
|
echo "}"
|
|
|