Moved origin/cp-main to upstream v2.90 version
Following are the commands used to move to the v2.90
upstream version in the dnsmasq directory:
1. git remote add upstream http://thekelleys.org.uk/git/dnsmasq.git
2. git remote -v show
3. git fetch upstream
4. git diff origin/cp-main v2.90 > ../dnsmasq_to_v2.90.gitdiff
5. patch -p1 < ../dnsmasq_to_v2.90.gitdiff
6. git add . && git commit -m "Moved origin/cp-main to upstream v2.90 version"
7. git diff v2.90 - Should be empty
Change-Id: I167f369cc3c625e7d291b296950fe98aa8f7d513
diff --git a/debian/dnsmasq.init b/debian/dnsmasq.init
new file mode 100644
index 0000000..2c4303c
--- /dev/null
+++ b/debian/dnsmasq.init
@@ -0,0 +1,170 @@
+#!/bin/sh
+### BEGIN INIT INFO
+# Provides: dnsmasq
+# Required-Start: $network $remote_fs $syslog
+# Required-Stop: $network $remote_fs $syslog
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Description: DHCP and DNS server
+### END INIT INFO
+
+# Don't exit on error status
+set +e
+
+# The following test ensures the dnsmasq service is not started, when the
+# package 'dnsmasq' is removed but not purged, even if the dnsmasq-base
+# package is still in place.
+if [ -r /usr/share/dnsmasq/init-system-common ]; then
+ # 'dnsmasq' is installed: source initial code used also with systemd.
+ . /usr/share/dnsmasq/init-system-common
+else
+ # 'dnsmasq' is removed but not purged, or damaged: do nothing.
+ exit 0
+fi
+
+# Double-check 'dnsmasq-base' or 'dnsmasq-base-lua' is installed.
+test -x ${DAEMON} || exit 0
+
+# Source the SysV init-functions which should always be available.
+. /lib/lsb/init-functions || exit 0
+
+start()
+{
+ # Return
+ # 0 if daemon has been started
+ # 1 if daemon was already running
+ # 2 if daemon could not be started
+
+ # /run may be volatile, so we need to ensure that
+ # /run/dnsmasq exists here as well as in postinst
+ if [ ! -d /run/dnsmasq ]; then
+ mkdir /run/dnsmasq || { [ -d /run/dnsmasq ] || return 2 ; }
+ chown dnsmasq:nogroup /run/dnsmasq || return 2
+ fi
+ [ -x /sbin/restorecon ] && /sbin/restorecon /run/dnsmasq
+
+ start-stop-daemon --start --quiet --pidfile /run/dnsmasq/${NAME}${INSTANCE:+.${INSTANCE}}.pid --exec ${DAEMON} --test > /dev/null || return 1
+ start-stop-daemon --start --quiet --pidfile /run/dnsmasq/${NAME}${INSTANCE:+.${INSTANCE}}.pid --exec ${DAEMON} -- \
+ -x /run/dnsmasq/${NAME}${INSTANCE:+.${INSTANCE}}.pid \
+ ${MAILHOSTNAME:+ -m ${MAILHOSTNAME}} \
+ ${MAILTARGET:+ -t ${MAILTARGET}} \
+ ${DNSMASQ_USER:+ -u ${DNSMASQ_USER}} \
+ ${DNSMASQ_INTERFACES:+ ${DNSMASQ_INTERFACES}} \
+ ${DHCP_LEASE:+ -l ${DHCP_LEASE}} \
+ ${DOMAIN_SUFFIX:+ -s ${DOMAIN_SUFFIX}} \
+ ${RESOLV_CONF:+ -r ${RESOLV_CONF}} \
+ ${CACHESIZE:+ -c ${CACHESIZE}} \
+ ${CONFIG_DIR:+ -7 ${CONFIG_DIR}} \
+ ${DNSMASQ_OPTS:+ ${DNSMASQ_OPTS}} \
+ || return 2
+}
+
+stop()
+{
+ # Return
+ # 0 if daemon has been stopped
+ # 1 if daemon was already stopped
+ # 2 if daemon could not be stopped
+ # other if a failure occurred
+ start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile /run/dnsmasq/${NAME}${INSTANCE:+.${INSTANCE}}.pid --name ${NAME}
+}
+
+status()
+{
+ # Return
+ # 0 if daemon is running
+ # 1 if daemon is dead and pid file exists
+ # 3 if daemon is not running
+ # 4 if daemon status is unknown
+ start-stop-daemon --start --quiet --pidfile /run/dnsmasq/${NAME}${INSTANCE:+.${INSTANCE}}.pid --exec ${DAEMON} --test > /dev/null
+ case "${?}" in
+ 0) [ -e "/run/dnsmasq/${NAME}${INSTANCE:+.${INSTANCE}}.pid" ] && return 1 ; return 3 ;;
+ 1) return 0 ;;
+ *) return 4 ;;
+ esac
+}
+
+case "${1}" in
+ start)
+ log_daemon_msg "Starting ${DESC}" "${NAME}${INSTANCE:+.${INSTANCE}}"
+ start
+ case "${?}" in
+ 0)
+ log_end_msg 0
+ start_resolvconf
+ exit 0
+ ;;
+ 1)
+ log_success_msg "(already running)"
+ exit 0
+ ;;
+ *)
+ log_end_msg 1
+ exit 1
+ ;;
+ esac
+ ;;
+ stop)
+ stop_resolvconf
+ log_daemon_msg "Stopping ${DESC}" "${NAME}${INSTANCE:+.${INSTANCE}}"
+ stop
+ RETVAL="${?}"
+ case "${RETVAL}" in
+ 0) log_end_msg 0 ; exit 0 ;;
+ 1) log_warning_msg "(not running)" ; exit 0 ;;
+ *) log_end_msg 1; exit 1 ;;
+ esac
+ ;;
+ restart|force-reload)
+ checkconfig
+ if [ ${?} -ne 0 ]; then
+ NAME="configuration syntax check"
+ RETVAL="2"
+ else
+ stop_resolvconf
+ stop
+ RETVAL="${?}"
+ fi
+ log_daemon_msg "Restarting ${DESC}" "${NAME}${INSTANCE:+.${INSTANCE}}"
+ case "${RETVAL}" in
+ 0|1)
+ sleep 2
+ start
+ case "${?}" in
+ 0)
+ log_end_msg 0
+ start_resolvconf
+ exit 0
+ ;;
+ *)
+ log_end_msg 1
+ exit 1
+ ;;
+ esac
+ ;;
+ *)
+ log_end_msg 1
+ exit 1
+ ;;
+ esac
+ ;;
+ status)
+ log_daemon_msg "Checking ${DESC}" "${NAME}${INSTANCE:+.${INSTANCE}}"
+ status
+ case "${?}" in
+ 0) log_success_msg "(running)" ; exit 0 ;;
+ 1) log_success_msg "(dead, pid file exists)" ; exit 1 ;;
+ 3) log_success_msg "(not running)" ; exit 3 ;;
+ *) log_success_msg "(unknown)" ; exit 4 ;;
+ esac
+ ;;
+ dump-stats)
+ kill -s USR1 `cat /run/dnsmasq/${NAME}${INSTANCE:+.${INSTANCE}}.pid`
+ ;;
+ *)
+ echo "Usage: /etc/init.d/${NAME} {start|stop|restart|force-reload|dump-stats|status}" >&2
+ exit 3
+ ;;
+esac
+
+exit 0