diff options
Diffstat (limited to 'localmkpostfixvirtual')
-rwxr-xr-x | localmkpostfixvirtual | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/localmkpostfixvirtual b/localmkpostfixvirtual index 654de19..f04987c 100755 --- a/localmkpostfixvirtual +++ b/localmkpostfixvirtual @@ -3,7 +3,7 @@ # /usr/local/sbin/localmkpostfixvirtual # Copyright 2001-2002 Jonas Smedegaard <dr@jones.dk> # -# $Id: localmkpostfixvirtual,v 1.5 2002-03-07 16:22:51 jonas Exp $ +# $Id: localmkpostfixvirtual,v 1.6 2002-07-20 18:30:19 jonas Exp $ # # Generate virtual file for postfix # @@ -11,11 +11,18 @@ # # Each user should have space-separated hints like "mailname1@ mailname2@gid1 mailname3@gid2". # -# The user of each mailgroup should have hints like "@domain1 @domain2" for each hosted domain. +# The user of each mailgroup should have hints like "@domain1 @domain2" +# for each hosted domain. # -# Optional: root can have hints like "postmaster@ hostmaster@ support@" (default: "postmaster@"). +# Optional: More than one mailgroup can be grouped: List them all in +# "Office" or "roomnumber" field of primary mailgroup (include the +# primary mailgroup itself!). +# +# Optional: root can have hints like "postmaster@ hostmaster@ support@" +# (default: "postmaster@"). # # TODO: reuse getent requests (drastically improves speed) +# TODO: Write command "members" as internal code # function get_fullname_field() { getent passwd $1 | awk -F: '{print $5}' | awk -F, '{print $1}'; } @@ -48,7 +55,9 @@ for gid in $@; do fi echo mailusers="" - for mailgroup in `get_roomnumber_field $gid`; do + mailgroups=`get_roomnumber_field $gid` + [ -z "$mailgroups" ] || mailgroups=$gid + for mailgroup in $mailgroups; do mailusers="$mailusers `members $mailgroup`" done # for uid in `members $gid | sort`; do |