35 lines
1.2 KiB
Bash
35 lines
1.2 KiB
Bash
|
#!/bin/bash
|
||
|
#
|
||
|
# Generate vmailmgr aliases for mailman mailing lists
|
||
|
#
|
||
|
# 5/13/2004: created by Silvan Calarco for the QiLinux distribution
|
||
|
#
|
||
|
# Copyright (c) by Silvan Calarco <silvan.calarco@mamabsoft.it>
|
||
|
# Released under the GNU GPL version 2 license
|
||
|
|
||
|
test $UID = 0 ||
|
||
|
{ echo "error: $0: must be superuser" >&2
|
||
|
{ (exit 1); exit 1; }; }
|
||
|
|
||
|
[ -e /var/qmail/bin ] && {
|
||
|
for listdomain in `grep -v "^#" /etc/qmail/virtualdomains | sed -n "s|^\(.*\):.*|\1|p"`; do
|
||
|
listuser=`grep -v "^#" /etc/qmail/virtualdomains | sed -n "s|^$listdomain:\(.*\)|\1|p"`
|
||
|
|
||
|
getent passwd $listuser >/dev/null ||
|
||
|
{ echo "error: $0: user $listuser does not exist"
|
||
|
{ (exit 1); exit 1; }; }
|
||
|
|
||
|
# add mailman-* stuff to current domain
|
||
|
for i in `sed -n "s|^\(mailman.*\):.*|\1|p" /etc/aliases`; do
|
||
|
su $listuser -c "vaddalias $i mailman@localhost 2>&1 >/dev/null" >/dev/null
|
||
|
done
|
||
|
|
||
|
for currlist in `/usr/share/mailman/bin/list_lists -V $listdomain | sed -n "s|^[ ]*\(.*\) - .*|\1|p"`; do
|
||
|
for i in `sed -n "s|^\($currlist.*\):.*|\1|pi" /etc/aliases`; do
|
||
|
su $listuser -c "vaddalias $i $i@localhost 2>&1 >/dev/null" >/dev/null
|
||
|
done
|
||
|
done
|
||
|
done
|
||
|
}
|
||
|
exit 0
|