diff options
author | Alexandre Rostovtsev <tetromino@gentoo.org> | 2012-10-26 22:57:58 +0000 |
---|---|---|
committer | Alexandre Rostovtsev <tetromino@gentoo.org> | 2012-10-26 22:57:58 +0000 |
commit | db2816fe389927ede6f79b0311cb71ac59f709f2 (patch) | |
tree | 951aa0af463924d47d8469827519531138aadd93 /net-misc/networkmanager/files | |
parent | Version bump. Bug #438910 (diff) | |
download | gentoo-2-db2816fe389927ede6f79b0311cb71ac59f709f2.tar.gz gentoo-2-db2816fe389927ede6f79b0311cb71ac59f709f2.tar.bz2 gentoo-2-db2816fe389927ede6f79b0311cb71ac59f709f2.zip |
Version bump with various bugfixes. Update dispatcher script to correctly detect openrc service status at boot (bug #436044, thanks to cyberbat). Update license.
(Portage version: 2.2.0_alpha141/cvs/Linux x86_64, signed Manifest commit with key CF0ADD61)
Diffstat (limited to 'net-misc/networkmanager/files')
-rw-r--r-- | net-misc/networkmanager/files/10-openrc-status-r3 | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/net-misc/networkmanager/files/10-openrc-status-r3 b/net-misc/networkmanager/files/10-openrc-status-r3 new file mode 100644 index 000000000000..0b4b89fb1dbb --- /dev/null +++ b/net-misc/networkmanager/files/10-openrc-status-r3 @@ -0,0 +1,30 @@ +#!/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. + +# 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) nm-online -t 0 -x && + ! rc-service NetworkManager status 2>&1 | grep -q started && + exec rc-service NetworkManager start ;; + down) nm-online -t 0 -x || + rc-service NetworkManager status 2>&1 | grep -q stopped || + exec rc-service NetworkManager stop ;; + pre-sleep) rc-service NetworkManager status 2>&1 | grep -q stopped || + exec rc-service NetworkManager stop ;; +esac +exit 0 +# vim: set ts=4: |