summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-misc/gvrpcd/files/init.gvrpcd')
-rw-r--r--net-misc/gvrpcd/files/init.gvrpcd51
1 files changed, 51 insertions, 0 deletions
diff --git a/net-misc/gvrpcd/files/init.gvrpcd b/net-misc/gvrpcd/files/init.gvrpcd
new file mode 100644
index 000000000000..6b82e1d25d63
--- /dev/null
+++ b/net-misc/gvrpcd/files/init.gvrpcd
@@ -0,0 +1,51 @@
+#!/sbin/runscript
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Id$
+
+extra_commands="checkconfig"
+
+checkconfig() {
+ if [ -z "${INTERFACES}" ]; then
+ eerror "INTERFACES should be set. PLease edit /etc/conf.d/gvrpcd"
+ return 1
+ fi
+ if [ ! -d /proc/net/vlan ]; then
+ modprobe 8021q
+ if [ ! -d /proc/net/vlan ]; then
+ eerror "VLAN (802.1q) support is not present in this kernel"
+ return 1
+ fi
+ fi
+}
+
+depend() {
+ need net
+}
+
+start() {
+ checkconfig || return 1
+ ebegin "Starting gvrpcd"
+ for IFNAME in ${INTERFACES}; do
+ ebegin " on interface ${IFNAME}"
+ start-stop-daemon --start \
+ --pidfile /var/run/gvrpcd-${IFNAME}.pid \
+ --exec /usr/sbin/gvrpcd \
+ -- -d -p /var/run/gvrpcd-${IFNAME}.pid \
+ -i "${IFNAME}" ${EXTRA_ARGS}
+ eend $?
+ done
+# eend $?
+}
+
+stop() {
+ ebegin "Stoping gvrpcd"
+ for IFNAME in ${INTERFACES}; do
+ ebegin " on interface ${IFNAME}"
+ start-stop-daemon --stop --exec /usr/sbin/gvrpcd \
+ -p /var/run/gvrpcd-${IFNAME}.pid
+ eend $?
+ done
+# eend $?
+}
+