summaryrefslogtreecommitdiff
path: root/localgotallmail
diff options
context:
space:
mode:
authorJonas Smedegaard <dr@jones.dk>2002-04-24 01:35:04 +0000
committerJonas Smedegaard <dr@jones.dk>2002-04-24 01:35:04 +0000
commit86be1a9e7c8291d3992e276489eacbbb584dc10f (patch)
tree52d31c74b56ee184d5b3c242846aeacd832598ad /localgotallmail
parent979950b1495e07b55a0d0344f4452babb64d811f (diff)
More elegant galant...
Diffstat (limited to 'localgotallmail')
-rwxr-xr-xlocalgotallmail23
1 files changed, 18 insertions, 5 deletions
diff --git a/localgotallmail b/localgotallmail
index b5022d9..32638d5 100755
--- a/localgotallmail
+++ b/localgotallmail
@@ -2,6 +2,8 @@
set -e
+configfile=".gotmailauth"
+
if [ -e /etc/adduser.conf ]; then
. /etc/adduser.conf
else
@@ -15,7 +17,14 @@ else
USERS=`getent passwd | awk -F: '{print $1}'`
fi
+if [ "$VERBOSE" ]; then
+ opts="--verbose"
+else
+ opts="--silent"
+fi
+
for user in $USERS; do
+ uid=`getent passwd $user | awk -F: '{print $3}' | head -1`
HOME=`getent passwd $user | awk -F: '{print $6}' | head -1`
if [ -z "$HOME" ]; then
echo "User $user doesn't exist. Ignoring..."
@@ -28,11 +37,15 @@ for user in $USERS; do
[ -d $HOME ] || continue
# [ -L $HOME ] && continue
- if [ -d $HOME/.gotmail-auth ]; then
- for line in `cat $HOME/.gotmail-auth | egrep -v '^[[:blank:]]*#'`; do
- login=`echo "$line" | sed 's/:.*//'`
- pw=`echo "$line" | sed 's/.*://'`
- su mail -c "gotmail -u $login -p $pw --delete-messages --silent --forwarding-email $user"
+ if [ -e $HOME/$configfile ]; then
+ for line in `cat $HOME/$configfile | egrep -v '^[[:blank:]]*#'`; do
+ login=`echo "$line" | awk -F: '{print $1}'`
+ pw=`echo "$line" | awk -F: '{print $2}'`
+ target=`echo "$line" | awk -F: '{print $3}'`
+ if [ -z "$target" ]; then
+ target=$user
+ fi
+ su mail -c "gotmail -u $login -p $pw --delete-messages --$opts --forwarding-email $target"
done
fi
done