#!/bin/sh
#
#
# Example file for activating ddupdate when default interface is up.
# Install into /etc/NetworkManager/dispatcher.d to activate.

# The user which runs ddupdate.service.
DDUSER=foo

export LC_ALL=C

systemctl="/usr/bin/systemctl"
logger="/usr/bin/logger"
ip="/sbin/ip"

if ! $systemctl is-enabled ddupdate.timer >/dev/null 2>&1; then
    exit 0
fi

case "$2" in
    "down")
        if $ip route ls | grep -q '^default'; then
	    exit 0
	fi
	$logger "ddupdate: default interface down: stopping timer" || :
        sudo -u $DDUSER $systemctl --user stop ddupdate.timer || :
	;;
    "up")
        if $ip -o route show dev "$1" | grep -q '^default'
	then
	    $logger "ddupdate: default interface up: starting timer" || :
            sudo -u $DDUSER $systemctl --user start ddupdate.timer || :
	fi
	;;
    *)
        ;;
esac
