summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-admin/google-compute-engine/files/sysvinit/google-ip-forwarding-daemon-20160803')
-rw-r--r--app-admin/google-compute-engine/files/sysvinit/google-ip-forwarding-daemon-20160803107
1 files changed, 107 insertions, 0 deletions
diff --git a/app-admin/google-compute-engine/files/sysvinit/google-ip-forwarding-daemon-20160803 b/app-admin/google-compute-engine/files/sysvinit/google-ip-forwarding-daemon-20160803
new file mode 100644
index 0000000..6aefc0b
--- /dev/null
+++ b/app-admin/google-compute-engine/files/sysvinit/google-ip-forwarding-daemon-20160803
@@ -0,0 +1,107 @@
+#!/bin/sh
+# Copyright 2016 Google Inc. All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+### BEGIN INIT INFO
+# Provides: google_ip_forwarding_daemon
+# Required-Start: $network $syslog $google_instance_setup
+# $google_network_setup
+# Required-Stop: $network
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: Google Compute Engine IP Forwarding Daemon
+# Description: Manages IP forwarding.
+### END INIT INFO
+
+# Do NOT "set -e".
+
+NAME=google-ip-forwarding-daemon
+DAEMON=/usr/bin/google_ip_forwarding_daemon
+PIDFILE=/var/run/$NAME.pid
+SCRIPTNAME=/etc/init.d/$NAME
+
+# Exit if the package is not installed.
+[ -x "$DAEMON" ] || exit 0
+
+# Load the rcS variables.
+. /lib/init/vars.sh
+
+# Depend on lsb-base (>= 3.2-14) to ensure that this file is present
+# and status_of_proc is working.
+. /lib/lsb/init-functions
+
+#
+# Function that starts the daemon/service.
+#
+do_start()
+{
+ start-stop-daemon \
+ --background \
+ --exec $DAEMON \
+ --make-pidfile \
+ --pidfile $PIDFILE \
+ --quiet \
+ --start > /dev/null
+}
+
+#
+# Function that stops the daemon/service.
+#
+do_stop()
+{
+ start-stop-daemon \
+ --exec $DAEMON \
+ --pidfile $PIDFILE \
+ --quiet \
+ --retry=TERM/30/KILL/5 \
+ --stop > /dev/null
+
+ # Wait for children to finish too if this is a daemon that forks
+ # and if the daemon is only ever run from this initscript.
+ # If the above conditions are not satisfied then add some other code
+ # that waits for the process to drop all resources that could be
+ # needed by services started subsequently. A last resort is to
+ # sleep for some time.
+ start-stop-daemon \
+ --exec $DAEMON \
+ --oknodo \
+ --quiet \
+ --retry=0/30/KILL/5 \
+ --stop > /dev/null
+
+ # Delete the pidfile when the daemon exits.
+ rm -f $PIDFILE
+}
+
+case "$1" in
+ start)
+ do_start
+ ;;
+ stop)
+ do_stop
+ ;;
+ status)
+ status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
+ ;;
+ restart|force-reload)
+ do_stop
+ do_start
+ ;;
+ *)
+ echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
+ exit 1
+ ;;
+esac
+
+: