diff options
-rw-r--r-- | scripts/postfix-to-schleuder.sh | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/scripts/postfix-to-schleuder.sh b/scripts/postfix-to-schleuder.sh new file mode 100644 index 0000000..0e0b3b9 --- /dev/null +++ b/scripts/postfix-to-schleuder.sh @@ -0,0 +1,23 @@ +#!/bin/sh + +# Strip out the list command from a fully qualified (using '#' in place of +# '@') mailing list, and replace '#' by '@'. + +ADDR="${1}" +SCHLEUDER=/usr/bin/schleuder + +[ -n "${ADDR}" ] || exit 1 + +LOCAL="${ADDR%%#*}" +DOMAIN="${ADDR#*#}" +LOCAL2="${LOCAL%-bounces}" +[ x"${LOCAL}" != x"${LOCAL2}" ] || LOCAL2="${LOCAL%-sendkey}" +LOCAL="${LOCAL2}" + +if [ x"${DOMAIN}" != x"${ADDR}" ]; then + ADDR="${LOCAL}@${DOMAIN}" +else + ADDR="${LOCAL}" +fi + +${SCHLEUDER} "${ADDR}" |