diff options
Diffstat (limited to 'contrib/fetchmaildistrib')
-rw-r--r-- | contrib/fetchmaildistrib | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/contrib/fetchmaildistrib b/contrib/fetchmaildistrib new file mode 100644 index 00000000..00cc1910 --- /dev/null +++ b/contrib/fetchmaildistrib @@ -0,0 +1,29 @@ +#/bin/bash +# +# fetchmaildistrib --- Distribute central fetchmail knowledge. +# +# The central fetchmail database, /etc/fetchmail, contains all accounts that +# are to be fetched by the root's daemon. Often, a user desires quicker +# access (e.g., when testing some email path). In such cases, the destination +# user (marked as is USER here in the poll lines) should set up a ~/.fetchmailrc +# for himself. This scripts generates such lines from the central file. +# +# By Rick van Rein. + +# From stdin, select poll lines for user $1 +function selectuser () { + grep ^poll | grep "is $1 here" +} + + +for i in `cut -d: -f1 </etc/passwd` +do homedir=`grep ^$i: /etc/passwd | cut -d: -f6` + fetchfile=`selectuser $i </etc/fetchmailrc` + if [ -z "$fetchfile" ] + then rm -f $homedir/.fetchmailrc + else cp /dev/null $homedir/.fetchmailrc + chmod go-rwx $homedir/.fetchmailrc + grep ^defaults /etc/fetchmailrc >>$homedir/.fetchmailrc + selectuser $i </etc/fetchmailrc >>$homedir/.fetchmailrc + fi +done |