#!/bin/sh # Copyright (c) 2012 Alexandre Rostovtsev # Released under the 2-clause BSD license. # Ensures that the NetworkManager OpenRC service is marked as started and # providing net only when it has a successful connection. # Exit if no valid interface name given if [ -z "$1" -o "x$1" = "xnone" ]; then exit fi # Ensure rc-service is in PATH PATH="${PATH}:@EPREFIX@/sbin:@EPREFIX@/usr/sbin" # Exit if the NetworkManager OpenRC service is not running rc-service NetworkManager status 2>&1 | grep -Eq "status: (starting|started|inactive|stopping)" || exit 0 # Call rc-service in background mode so that the start/stop functions update # NetworkManager service status to started or inactive instead of actually # starting or stopping the daemon export IN_BACKGROUND=YES case "$2" in up|vpn-up) exec rc-service NetworkManager start ;; down|vpn-down) exec rc-service NetworkManager stop ;; esac