diff options
author | Christian Hesse <mail@eworm.de> | 2014-10-23 10:39:58 +0200 |
---|---|---|
committer | Christian Hesse <mail@eworm.de> | 2014-10-23 10:39:58 +0200 |
commit | b99fa05ea36a7fc090602b4295a5a5edc95ca853 (patch) | |
tree | be5e9476dd7d9246c2b6ed3085b9fa53740aa1ab | |
parent | 8612f9f3c371631fa33a4279bdad20c0d31d6c7c (diff) | |
download | networkmanager-dispatcher-openvpn-b99fa05ea36a7fc090602b4295a5a5edc95ca853.tar.gz networkmanager-dispatcher-openvpn-b99fa05ea36a7fc090602b4295a5a5edc95ca853.tar.zst |
be a bit more verbose and fix tun/tap detection
-rwxr-xr-x | 40-openvpn | 29 |
1 files changed, 18 insertions, 11 deletions
@@ -3,15 +3,22 @@ INTERFACE="${1}" STATUS="${2}" -# VPN interfaces managed by networkmanager send events vpn-{up,down}. -# If the connection is started by whatever networkmanager sees this -# and triggers event up or down. Ignore these. -if ! ip tuntap | grep -q "^${INTERFACE}:"; then - exit 0 -fi +case "${STATUS}" in + up) + # VPN interfaces managed by networkmanager send events vpn-{up,down}. + # If the connection is started by whatever networkmanager sees this + # and triggers event up or down. Ignore these. + if ip tuntap | grep -q "^${INTERFACE}:"; then + echo "${0}: ${INTERFACE} changed status to up, but is tun/tap. Ignoring." + exit 0 + fi -if [ "${STATUS}" == "up" ]; then - if pgrep -x openvpn >/dev/null; then - kill -USR1 $(pgrep -x openvpn) - fi -fi + if pgrep -x openvpn >/dev/null; then + echo "${0}: ${INTERFACE} changed status to up, sending restart to openvpn." + kill -USR1 $(pgrep -x openvpn) + fi + ;; + *) + echo "${0}: ${INTERFACE} changed status to ${STATUS}, ignoring." + ;; +esac |