Corrected code follows (missing do/done).

Save to file, chmod +x  name-of-file, don't run this script from
cron. 
It needs to be started at boot time, or before you make a VPN
connection.

#!/bin/sh

while :
do
    ifconfig xxx | egrep 'UP|DOWN'
    sleep 2
done | while read status
do
    case "$status" in
  *UP*) if [ "$prev" -ne up ]
        then
            prev=up
            postconf -X defer_transports
            postfix reload
        fi;;
     *) if [ "$prev" -ne down ]
        then
            prev=down
            postconf defer_transports=smtp
            postfix reload
        fi;;
    esac
done

        Wietse

Reply via email to