--- dnsmasq-2.9.orig/debian/rules +++ dnsmasq-2.9/debian/rules @@ -0,0 +1,85 @@ +#!/usr/bin/make -f +# debian/rules file - for dnsmasq. +# Copyright 2001 by Simon Kelley +# Based on the sample in the debian hello package which carries the following: +# Copyright 1994,1995 by Ian Jackson. +# I hereby give you perpetual unlimited permission to copy, +# modify and relicense this file, provided that you do not remove +# my name from the file itself. (I assert my moral right of +# paternity under the Copyright, Designs and Patents Act 1988.) +# This file may have to be extensively modified + +package=dnsmasq + +build: + $(checkdir) + make + touch build + +clean: + $(checkdir) + rm -f build + rm -rf debian/tmp debian/*~ debian/files* debian/substvars + make clean + +binary-indep: checkroot build + $(checkdir) +# There are no architecture-independent files to be uploaded +# generated by this package. If there were any they would be +# made here. + +binary-arch: checkroot build + $(checkdir) + rm -rf debian/tmp + install -d debian/tmp/DEBIAN\ + -d debian/tmp/usr/sbin\ + -d debian/tmp/usr/share/doc/$(package)\ + -d debian/tmp/usr/share/man/man8\ + -d debian/tmp/etc/init.d\ + -d debian/tmp/etc/resolvconf/update.d\ + -d debian/tmp/etc/default\ + -d debian/tmp/var/run\ + -d debian/tmp/var/lib/misc + install -m 644 debian/conffiles debian/tmp/DEBIAN + install -m 755 debian/postinst debian/postrm debian/prerm debian/tmp/DEBIAN + strip -R .note -R .comment src/dnsmasq + install -m 755 src/dnsmasq debian/tmp/usr/sbin + install -m 755 debian/init debian/tmp/etc/init.d/dnsmasq + install -m 755 debian/resolvconf debian/tmp/etc/resolvconf/update.d/dnsmasq + install -m 644 debian/default debian/tmp/etc/default/dnsmasq + install -m 644 dnsmasq.conf.example debian/tmp/etc/dnsmasq.conf + cp doc.html debian/tmp/usr/share/doc/$(package)/. + cp setup.html debian/tmp/usr/share/doc/$(package)/. + cp FAQ debian/tmp/usr/share/doc/$(package)/. + gzip -9 debian/tmp/usr/share/doc/$(package)/FAQ + cp UPGRADING_to_2.0 debian/tmp/usr/share/doc/$(package)/. + gzip -9 debian/tmp/usr/share/doc/$(package)/UPGRADING_to_2.0 + cp CHANGELOG debian/tmp/usr/share/doc/$(package)/changelog + gzip -9 debian/tmp/usr/share/doc/$(package)/changelog + cp debian/changelog debian/tmp/usr/share/doc/$(package)/changelog.Debian + gzip -9 debian/tmp/usr/share/doc/$(package)/changelog.Debian + cp debian/readme debian/tmp/usr/share/doc/$(package)/README.Debian + cp debian/copyright debian/tmp/usr/share/doc/$(package)/copyright + cp dnsmasq.8 debian/tmp/usr/share/man/man8 + gzip -9 debian/tmp/usr/share/man/man8/dnsmasq.8 + dpkg-shlibdeps src/dnsmasq + dpkg-gencontrol -isp + chown -R root.root debian/tmp + chmod -R g-ws debian/tmp + dpkg --build debian/tmp .. + +define checkdir + test -f dnsmasq.8 -a -f debian/rules +endef + +# Below here is fairly generic really + +binary: binary-indep binary-arch + +checkroot: + $(checkdir) + test root = "`whoami`" + +.PHONY: binary binary-arch binary-indep clean checkroot + + --- dnsmasq-2.9.orig/debian/postinst +++ dnsmasq-2.9/debian/postinst @@ -0,0 +1,27 @@ +#!/bin/sh +set -e + +# earlier versions stopped dnsmasq at priority 15, so we remove +# all the symlinks here to ensure we get only the correct ones on upgrade. +update-rc.d -f dnsmasq remove >/dev/null 2>&1 + +update-rc.d dnsmasq defaults 15 85 >/dev/null + +if [ "$1" = "configure" -o "$1" = "abort-upgrade" ]; then + +# belt and braces .... + if [ -e /var/run/dnsmasq.pid ]; then + if [ -x /usr/sbin/invoke-rc.d ] ; then + invoke-rc.d dnsmasq stop >/dev/null 2>&1 && true + else + /etc/init.d/dnsmasq stop >/dev/null 2>&1 && true + fi + fi + + if [ -x /usr/sbin/invoke-rc.d ] ; then + invoke-rc.d dnsmasq start + else + /etc/init.d/dnsmasq start + fi + +fi --- dnsmasq-2.9.orig/debian/prerm +++ dnsmasq-2.9/debian/prerm @@ -0,0 +1,16 @@ +#!/bin/sh +set -e + +if [ \( "$1" = "upgrade" -o "$1" = "remove" \) -a -L /usr/doc/dnsmasq ]; then + rm -f /usr/doc/dnsmasq +fi + +if [ -x /usr/sbin/invoke-rc.d ] ; then + invoke-rc.d dnsmasq stop && true +else + /etc/init.d/dnsmasq stop && true +fi + +exit 0 + + --- dnsmasq-2.9.orig/debian/changelog +++ dnsmasq-2.9/debian/changelog @@ -0,0 +1,424 @@ +dnsmasq (2.9-2) unstable; urgency=low + + * Fix typo in debian/control (closes: #255762) + + -- Simon Kelley Wed, 23 Jun 2004 20:40:13 +0000 + +dnsmasq (2.9-1) unstable; urgency=low + + * New upstream. + * New version has improved server selection logic (closes: #251097) + * Improved initscript (closes: #252229) + * Conflict with old resolvconf versions to maintain compatibility. + * Updated README.debian (closes: #253429) + * Changed startup message to mention DHCP as well as DNS. + * New resolvconf update script (closes: #254765) + + -- Simon Kelley Wed, 26 May 2004 12:35:23 +0000 + +dnsmasq (2.8-1) unstable; urgency=low + + * New upstream. + * Fixes problem with zero-length hostnames which can lose + DHCP leases over a restart. (closes: #248829) + + -- Simon Kelley Thur, 13 May 2004 18:40:12 +0000 + +dnsmasq (2.7-2) unstable; urgency=low + + * New version of resolvconf script from Thomas Hood with the + following changes: (closes: #247695) + * Doesn't include nameservers listed in the lo.inet or lo.inet6 interface + records created by "ifup lo" + * Lists addresses in a specified order (by interface name) + * Eliminates duplicate nameserver addresses + * Updates /var/run/dnsmasq/resolv.conf atomically + * Doesn't generate empty lines + + -- Simon Kelley Tue, 11 May 2004 22:35:12 +0000 + +dnsmasq (2.7-1) unstable; urgency=low + + * New upstream. + + -- Simon Kelley Sun, 18 Apr 2004 20:00:23 +0000 + +dnsmasq (2.6-3) unstable; urgency=low + + * Removed reload command from start script and moved force-reload + to be equivalent to restart. This is needed to be policy compliant + since SIHGUP doesn't cause dnsmasq to reload its configuration file, + only the /etc/hosts, /etc/resolv.conf etc. (closes: #244208) + + -- Simon Kelley Sun, 18 Apr 2004 14:40:51 +0000 + +dnsmasq (2.6-2) unstable; urgency=low + + * Added Conflict with pdnsd (closes: #242731). + Rationale: dnsmasq used to conflict with all the DNS servers + in Debian, but that was removed because some people wished + to run with dnsmasq listening on one interface and another DNS + server listening on another interface. However AFAIK it is not + possible to make pdnsd listen on a subset of a hosts interfaces, + so there is no scenario where running pdnsd and dnsmasq on the same + host would be useful, hence the conflict goes back. + * Added note about the --bind-interfaces option to + readme.Debian (closes: #241700) + + -- Simon Kelley Tues, 13 Apr 2004 18:37:55 +0000 + +dnsmasq (2.6-1) unstable; urgency=low + + * New upstream. + * New version adds back ability to read ISC dhcpd lease files + for backwards compatibility. (closes: #229684) (closes: #236421) + * Fix parsing of # characters in options file. (closes: #241199) + + -- Simon Kelley Sun, 21 Mar 2004 19:59:25 +0000 + +dnsmasq (2.5-1) unstable; urgency=low + + * New upstream, includes fix for IP-alias related + problem. (closes: #238268) + + -- Simon Kelley Sun, 14 Mar 2004 08:32:43 +0000 + +dnsmasq (2.4-3) unstable; urgency=low + + * Fixed "bind-interfaces" option, even when + an "interface" option is given also. + + -- Simon Kelley Fri, 12 Mar 2004 08:14:23 +0000 + +dnsmasq (2.4-2) unstable; urgency=low + + * Fixed "bind-interfaces" option (closes: #237543). + + -- Simon Kelley Fri, 12 Mar 2004 07:30:25 +0000 + +dnsmasq (2.4-1) unstable; urgency=low + + * New upstream. + + -- Simon Kelley Thurs, 11 Mar 2004 07:59:55 +0000 + +dnsmasq (2.3-1) unstable; urgency=low + + * New upstream. + + -- Simon Kelley Tues, 03 Feb 2004 20:33:10 +0000 + +dnsmasq (2.2-1) unstable; urgency=low + + * New upstream. (fixes no DHCP with IPv6 problem) + * Restart (old) daemon on abort-upgrade. (closes: #230286) + + -- Simon Kelley Fri, 30 Jan 2004 10:23:00 +0000 + +dnsmasq (2.1-1) unstable; urgency=low + + * New upstream. + * Allow addresses in /etc/hosts to be used for + DHCP leases (closes: #229681) + * Fix lease time processing. (closes: #229682) (closes: #229687) + * Fix example conf file. (closes: #229683) (closes: #229701) + * Allow address 0.0.0.0 to mean "self" in dhcp-option. (closes: #229685) + * Cope with ENODEV return from bind of + IPv6 server socket (closes: #229607) + * Document the strict-order option in dnsmasq.conf (closes: #229272) + * Fix local-only domain setting. (closes: #229846) + * Updates Debian readme to mention resolvconf and point at the + local copy of RFC2132. + + -- Simon Kelley Fri, 23 Jan 2004 14:38:29 +0000 + +dnsmasq (2.0-1) unstable; urgency=low + + * New upstream: This removes the ability to read the + the leases file of ISC DHCP and replaces it with a built-in + DHCP server. Apologies in advance for breaking backwards + compatibilty, but this replaces a bit of a hack (the ISC stuff) + with a nicely engineered and much more apropriate solution. + Wearing my upstream-maintainer hat, I want to lose the hack now, + rather than have to support it into Sarge. + * New upstream closes some bugs since they become + irrelevant. (closes: #197295) + * Ensure that /var/run and /var/lib/misc exist. + * Remove sed dependency, which was a mistake. + * Remove extraneous "build" file. (closes: #226994) + + -- Simon Kelley Sun, 16 Jan 2004 19:35:49 +0000 + +dnsmasq (1.18-2) unstable; urgency=low + + * Fixed manpage typo (closes: #220961) + * Added dependency for sed. (closes: #222401) + * Check for complete resolvconf installation before + calling it. (closes: #223442) + * Added Links section to doc.html + + -- Simon Kelley Sat, 27 Dec 2003 20:21:15 +0000 + +dnsmasq (1.18-1) unstable; urgency=low + + * New upstream which does round-robin. (closes: #215460) + * Removed conflicts with other dns servers since it is now + possible to control exactly where dnsmasq listens on multi-homed + hosts, making co-existance with another nameserver + a viable proposition. (closes #176163) + * New upstream allows _ in hostnames and check for illegal + names in /etc/hosts. (closes: #218842) + + -- Simon Kelley Fri, 17 Oct 2003 16:23:14 +0000 + +dnsmasq (1.17-1) unstable; urgency=high + + * New upstream (closes: #212680) + + -- Simon Kelley Wed, 8 Oct 2003 14:38:29 +0000 + +dnsmasq (1.16-1) unstable; urgency=low + + * New upstream. + * Renamed Debian README to the standard README.Debian. (closes: #211577) + * Updated the installed /etc/dnsmasq.conf to reflect new options. + + -- Simon Kelley Tues, 16 Sep 2003 23:18:59 +0000 + +dnsmasq (1.15-1) unstable; urgency=low + + * New upstream. + + -- Simon Kelley Tues, 16 Sep 2003 21:48:49 +0000 + +dnsmasq (1.14-1) unstable; urgency=low + + * New upstream. + * Use invoke-rc.d in postinst and prerm scripts when available. + * Stop dnsmasq later (at priority 85). (closes: #200625) + * Updated /etc/resolvconf/update.d/dnsmasq. (closes: #202609) + * Suggest resolvconf. (closes: #208093) + + -- Simon Kelley Tues, 2 Sep 2003 16:43:29 +0000 + +dnsmasq (1.13-4) unstable; urgency=high + + * Ignore failures in stopping existing dnsmasq + processes. (closes: #204127) (closes: #204129) + * Added download source to copyright. (closes: #206647) + + -- Simon Kelley Tues, 2 Sep 2003 15:28:28 +0000 + +dnsmasq (1.13-3) unstable; urgency=low + + * Moved /etc/resolvconf/update.d/dnsmasq script into this package. + * Don't call resolvconf from /etc/init.d/dnsmasq if dnsmasq fails + to start. (Patch from Thomas Hood.) + + -- Simon Kelley Mon, 7 Jul 2003 20:55:29 +0000 + +dnsmasq (1.13-2) unstable; urgency=low + + * Added support for the resolvconf nameserver configuration package. + + -- Simon Kelley Sun, 22 Jun 2003 20:30:19 +0000 + +dnsmasq (1.13-1) unstable; urgency=low + + * New upstream. + * Added new options to the default dnsmasq.conf. + * Default config now reads /var/lib/dhcp/dhcp.leases (closes: #195185) + * Added option to disable negative caching. (closes: #194274) + * Added David Coe's query port patch. (closes: #196578) + + -- Simon Kelley Sat, 31 May 2003 18:10:29 +0000 + +dnsmasq (1.12-1) unstable; urgency=low + + * New upstream. + * Added examples of "local" and "address" options to dnsmasq.conf. + * Remove /usr/doc symlink code. + * Remove period from end of description field. + + -- Simon Kelley Sat, 8 Mar 2003 12:16:09 +0000 + +dnsmasq (1.11-2) unstable; urgency=low + + * Fixed thinko in example dnsmasq.conf. (closes: #180410) + + -- Simon Kelley Mon, 24 Feb 2003 20:06:19 +0000 + +dnsmasq (1.11-1) unstable; urgency=low + + * New uptream. + + -- Simon Kelley Tues, 12 Jan 2003 22:25:17 -0100 + +dnsmasq (1.10-1) unstable; urgency=low + + * New uptream. + * Force service to stop in postinst before restarting. I don't + understand the circumstances under which it would still be running at + this point, but this is the correct fix anyway. (closes: #169718) + * Add /etc/dnsmasq.conf as a conffile and add a comment to + /etc/default/dnsmasq deprecating its use and recommending + /etc/dnsmasq.conf instead, since upstream now supports this. + + -- Simon Kelley Mon, 9 Oct 2002 19:05:34 -0100 + +dnsmasq (1.9-1) unstable; urgency=low + + * New uptream. + + -- Simon Kelley Mon, 23 Sept 2002 21:35:07 -0100 + +dnsmasq (1.8-1) unstable; urgency=low + + * New upstream. + + -- Simon Kelley Mon, 12 Aug 2002 21:56:17 -0100 + +dnsmasq (1.7-1) unstable; urgency=low + + * New upstream including better group-id manipulation. (closes: #152212) + * Conflict with bind9 (closes: #151812) + * Added more options to startup script. (closes: #148535) + + -- Simon Kelley Sun, 14 July 2002 20:23:14 -0100 + +dnsmasq (1.6-1) unstable; urgency=low + + * New upstream. + * Fixed documentation typos. (closes: #144637) + * Fixed failure to remove package if daemon not running. (closes: #147083) + * Changed upload to tarball-and-diff. (closes: #144638) + + -- Simon Kelley Sun, 19 May 2002 22:30:17 -0100 + +dnsmasq (1.5-1) unstable; urgency=medium + + * New upstream (includes hotmail.com fix). + * Fixed DHCP lease file bug. (closes: #143778) + * Fixed failure of "reload" command in startup script (closes: #141021) + * Allow more than one interface name in the DNSMASQ_INTERFACE variable. + + -- Simon Kelley Sun, 14 Apr 2002 16:39:13 -0100 + +dnsmasq (1.4-2) unstable; urgency=low + + * Fixed snafu in startup script (closes: #139760) + + -- Simon Kelley Sun, 24 Mar 2002 23:06:18 +0000 + +dnsmasq (1.4-1) unstable; urgency=low + + * New upstream + + -- Simon Kelley Thurs, 7 Mar 2002 21:02:05 +0000 + +dnsmasq (1.3-1) unstable; urgency=low + + * New upstream + + -- Simon Kelley Fri, 15 Feb 2002 20:45:01 +0000 + +dnsmasq (1.2-4) unstable; urgency=low + + * Updated standards-version. + * More aggressive strip of binaries. + * Added depends: netbase. + * distribution->unstable for upload. + * Updated readme.Debian since config in /etc/default/dnsmasq now. + * Updated readme.Debian to reflect fact that this package is official now! + + -- Simon Kelley Fri, 15 Feb 2002 20:45:01 +0000 + +dnsmasq (1.2-3) stable; urgency=low + + * Added Suggests: and Conflicts: fields to control file. + + -- Simon Kelley Thurs, 14 Feb 2002 20:33:47 +0000 + +dnsmasq (1.2-2) stable; urgency=low + + * Many packaging fixes, to please lintian + * Added extended description. + * Fixed copyright file. + * Compressed everything in /usr/share/doc/dnsmasq. + * Added code to remove /usr/doc/dnsmasq to prerm script. + * Moved configuration from /etc/init.d/dnsmasq to /etc/default/dnsmasq + + -- Simon Kelley Sat, 02 Feb 2002 18:54:37 +0000 + +dnsmasq (1.2-1) stable; urgency=low + + * New upstream + * Added more options to startup script + + -- Simon Kelley Sat, 20 Dec 2001 21:15:07 +0000 + +dnsmasq (1.1-2) stable; urgency=low + + * New upstream + * Strip binary + * Moved manpage from section 1 to section 8 + + -- Simon Kelley Sat, 21 Oct 2001 17:32:04 -0100 + +dnsmasq (1.0-1) unstable; urgency=low + + * New upstream + + -- Simon Kelley Sat, 10 Oct 2001 15:52:06 -0100 + +dnsmasq (0.996-1) unstable; urgency=low + + * New upstream + + -- Simon Kelley Fri, 26 Oct 2001 10:32:06 -0100 + +dnsmasq (0.995-1) unstable; urgency=low + + * New upstream + + -- Simon Kelley Tue, 09 Oct 2001 16:39:07 -0100 + +dnsmasq (0.994-1) unstable; urgency=low + + * New upstream + + -- Simon Kelley Sat, 07 Oct 2001 15:45:04 -0100 + +dnsmasq (0.992-1) unstable; urgency=low + + * New upstream + + -- Simon Kelley Fri, 31 Aug 2001 16:17:00 -0100 + +dnsmasq (0.98-1) unstable; urgency=low + + * New upstream + + -- Simon Kelley Wed, 11 Jul 2001 11:31:00 -0100 + +dnsmasq (0.96-1) unstable; urgency=low + + * Fixed thinko in cache code.. + + -- Simon Kelley Sat, 07 Jul 2001 18:52:00 -0100 + +dnsmasq (0.95-1) unstable; urgency=low + + * Initial Release. + + -- Simon Kelley Sat, 29 Aug 1998 20:27:27 -0400 + + + + + + + + + + --- dnsmasq-2.9.orig/debian/postrm +++ dnsmasq-2.9/debian/postrm @@ -0,0 +1,6 @@ +#!/bin/sh +set -e + +if [ purge = "$1" ]; then + update-rc.d dnsmasq remove >/dev/null +fi --- dnsmasq-2.9.orig/debian/conffiles +++ dnsmasq-2.9/debian/conffiles @@ -0,0 +1,4 @@ +/etc/init.d/dnsmasq +/etc/default/dnsmasq +/etc/dnsmasq.conf +/etc/resolvconf/update.d/dnsmasq --- dnsmasq-2.9.orig/debian/readme +++ dnsmasq-2.9/debian/readme @@ -0,0 +1,33 @@ +Notes on configuring dnsmasq as packaged for Debian. + +(1) To configure dnsmasq edit /etc/dnsmasq.conf. The file is well + commented; see also the dnsmasq.8 man page for explanation of + the options. The file /etc/default/dnsmasq also exists but it + shouldn't need to be touched in most cases. To set up DHCP + options you might need to refer to a copy of RFC 2132. This is + available on Debian systems in the package doc-rfc-std as the file + /usr/share/doc/RFC/draft-standard/rfc2132.txt.gz . + +(2) If the Debian resolvconf package is installed then, regardless + of what interface configuration daemons are employed, the list of + nameservers to which dnsmasq should forward queries can be found + in /var/run/dnsmasq/resolv.conf; also, 127.0.0.1 is listed as the + first nameserver address in /etc/resolv.conf. This works using the + default configurations of resolvconf and dnsmasq. + +(3) In the absence of resolvconf, if you are using dhcpcd then + dnsmasq should read the list of nameservers from the automatically + generated file /etc/dhcpc/resolv.conf. You should list 127.0.0.1 + as the first nameserver address in /etc/resolv.conf. + +(4) In the absence of resolvconf, if you are using pppd then + dnsmasq should read the list of nameservers from the automatically + generated file /etc/ppp/resolv.conf. You should list 127.0.0.1 + as the first nameserver address in /etc/resolv.conf. + +(5) If you run multiple DNS servers on a single machine, each + listening on a different interface, then it is necessary from + version 2.3 on to use the bind-interfaces option by uncommenting + "bind-interfaces" in /etc/dnsmasq.conf. This option stops dnsmasq + from binding the wildcard address and allows servers listening on + port 53 on interfaces not in use by dnsmasq to work. --- dnsmasq-2.9.orig/debian/init +++ dnsmasq-2.9/debian/init @@ -0,0 +1,159 @@ +#!/bin/sh +# +# dnsmasq + +set +e # Don't exit on error status + +PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin +DAEMON=/usr/sbin/dnsmasq +NAME=dnsmasq +DESC="DNS forwarder and DHCP server" + +# Most configuration options in /etc/default/dnsmasq are deprecated +# but still honoured. + +if [ -r /etc/default/$NAME ]; then + . /etc/default/$NAME +fi + +test -x $DAEMON || exit 0 + +# RESOLV_CONF: +# If the resolvconf package is installed then use the resolv conf file +# that it provides as the default. Otherwise use /etc/resolv.conf as +# the default. +# +# This setting can be overridden by setting the RESOLV_CONF environment +# variable in /etc/default/dnsmasq or by including a resolv-file +# line in /etc/dnsmasq.conf . + +if [ ! "$RESOLV_CONF" ] && + [ -x /sbin/resolvconf ] +then + RESOLV_CONF=/var/run/dnsmasq/resolv.conf +fi + +for INTERFACE in $DNSMASQ_INTERFACE; do + DNSMASQ_INTERFACES="$DNSMASQ_INTERFACES -i $INTERFACE" +done + +start() +{ + # Return + # 0 if daemon has been started + # 1 if daemon was already running + # 2 if daemon could not be started + start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid --exec $DAEMON --test > /dev/null || return 1 + start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid --exec $DAEMON -- \ + ${MAILHOSTNAME:+ -m $MAILHOSTNAME} \ + ${MAILTARGET:+ -t $MAILTARGET} \ + ${DNSMASQ_USER:+ -u $DNSMASQ_USER} \ + ${DNSMASQ_INTERFACE:+ $DNSMASQ_INTERFACES} \ + ${DHCP_LEASE:+ -l $DHCP_LEASE} \ + ${DOMAIN_SUFFIX:+ -s $DOMAIN_SUFFIX} \ + ${RESOLV_CONF:+ -r $RESOLV_CONF} \ + ${CACHESIZE:+ -c $CACHESIZE} \ + ${DNSMASQ_OPTS:+ $DNSMASQ_OPTS} \ + || return 2 +} + +start_resolvconf() +{ + if [ -x /sbin/resolvconf ] ; then + echo "nameserver 127.0.0.1" | /sbin/resolvconf -a lo.$NAME + fi + return 0 +} + +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 /var/run/$NAME.pid --name $NAME + RETVAL="$?" + [ "$RETVAL" = 2 ] && return 2 + # Wait for children to finish too + start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON + [ "$?" = 2 ] && return 2 + rm -f /var/run/$NAME.pid # Doesn't delete its own pidfile + return "$RETVAL" +} + +stop_resolvconf() +{ + if [ -x /sbin/resolvconf ] ; then + /sbin/resolvconf -d lo.$NAME + fi + return 0 +} + +case "$1" in + start) + echo -n "Starting $DESC: $NAME" + start + case "$?" in + 0) + echo "." + start_resolvconf + exit 0 + ;; + 1) + echo " (already running)." + exit 0 + ;; + *) + echo " (failed)." + exit 1 + ;; + esac + ;; + stop) + stop_resolvconf + echo -n "Stopping $DESC: $NAME" + stop + case "$?" in + 0) echo "." ; exit 0 ;; + 1) echo " (not running)." ; exit 0 ;; + *) echo " (failed)." ; exit 1 ;; + esac + ;; + restart|force-reload) + stop_resolvconf + echo -n "Restarting $DESC: $NAME" + stop + case "$?" in + 0|1) + start + case "$?" in + 0) + echo "." + start_resolvconf + exit 0 + ;; + 1) + echo " (failed -- old process is still running)." + exit 1 + ;; + *) + echo " (failed to start)." + exit 1 + ;; + esac + ;; + *) + echo " (failed to stop)." + exit 1 + ;; + esac + ;; + *) + echo "Usage: /etc/init.d/$NAME {start|stop|restart|force-reload}" >&2 + exit 3 + ;; +esac + +exit 0 + --- dnsmasq-2.9.orig/debian/control +++ dnsmasq-2.9/debian/control @@ -0,0 +1,21 @@ +Source: dnsmasq +Section: net +Priority: optional +Maintainer: Simon Kelley +Standards-Version: 3.6.1 + +Package: dnsmasq +Architecture: any +Depends: netbase, ${shlibs:Depends} +Suggests: resolvconf +Conflicts: pdnsd, resolvconf (<<1.15) +Description: A small caching DNS proxy and DHCP server. + Dnsmasq is lightweight, easy to configure DNS forwarder and DHCP + server. It is designed to provide DNS and, optionally, DHCP, to a + small network. It can serve the names of local machines which are + not in the global DNS. The DHCP server integrates with the DNS + server and allows machines with DHCP-allocated addresses + to appear in the DNS with names configured either in each host or + in a central configuration file. Dnsmasq supports static and dynamic + DHCP leases and BOOTP for network booting of diskless machines. + --- dnsmasq-2.9.orig/debian/copyright +++ dnsmasq-2.9/debian/copyright @@ -0,0 +1,19 @@ +dnsmasq is Copyright (c) 2000 Simon Kelley + +It was downloaded from: http://www.thekelleys.org.uk/dnsmasq/ + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 dated June, 1991. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + +On Debian GNU/Linux systems, the text of the GNU general public license is +available in the file /usr/share/common-licenses/GPL + +The Debian package of dnsmasq was created by Simon Kelley with assistance +from Lars Bahner. + --- dnsmasq-2.9.orig/debian/default +++ dnsmasq-2.9/debian/default @@ -0,0 +1,17 @@ +# NOTE: +# +# From version 1.10, dnsmasq itself reads a +# config file at /etc/dnsmasq.conf so you may +# want to set options there rather than here. +# +# This file now has only two functions, +# to set DOMAIN_SUFFIX by running `dnsdomainname` +# and to select an alternative config file +# by setting DNSMASQ_OPTS to --conf-file= +# +# For upgraders, all the shell variables set here in previous versions +# are still honored by the init script so if you just keep your old +# version of this file nothing will break. + +#DOMAIN_SUFFIX=`dnsdomainname` +#DNSMASQ_OPTS="--conf-file=/etc/dnsmasq.alt" --- dnsmasq-2.9.orig/debian/resolvconf +++ dnsmasq-2.9/debian/resolvconf @@ -0,0 +1,64 @@ +#!/bin/sh +# +# Script to update the resolver list for dnsmasq +# +# N.B. Resolvconf may run us even if dnsmasq is not running. +# If dnsmasq is installed then we go ahead and update +# the resolver list in case dnsmasq is started later. +# +# Assumption: On entry, PWD contains the resolv.conf-type files +# +# Depends: resolvconf (>= 1.14) +# +# Licensed under the GNU GPL. See /usr/share/common-licenses/GPL. +# +# History +# June 2003 - June 2004: Written by Thomas Hood + +set -e + +RUN_DIR="/var/run/dnsmasq" +RSLVRLIST_FILE="${RUN_DIR}/resolv.conf" +TMP_FILE="${RSLVRLIST_FILE}_new.$$" + +[ -x /usr/sbin/dnsmasq ] || exit 0 +[ -x /lib/resolvconf/list-records ] || exit 1 + +PATH=/bin:/sbin + +report_err() { echo "$0: Error: $*" >&2 ; } + +# Stores arguments (minus duplicates) in RSLT, separated by spaces +# Doesn't work properly if an argument itself contain whitespace +uniquify() +{ + RSLT="" + while [ "$1" ] ; do + for E in $RSLT ; do + [ "$1" = "$E" ] && { shift ; continue 2 ; } + done + RSLT="${RSLT:+$RSLT }$1" + shift + done +} + +if [ ! -d "$RUN_DIR" ] && ! mkdir --parents --mode=0755 "$RUN_DIR" ; then + report_err "Failed trying to create directory $RUN_DIR" + exit 1 +fi + +RSLVCNFFILES="$(/lib/resolvconf/list-records | sed -e '/^lo.dnsmasq$/d')" + +NMSRVRS="" +if [ "$RSLVCNFFILES" ] ; then + uniquify $(sed -n -e 's/^[[:space:]]*nameserver[[:space:]]\+//p' $RSLVCNFFILES) + NMSRVRS="$RSLT" +fi + +clean_up() { rm -f "$TMP_FILE" ; } +trap clean_up EXIT +: >| "$TMP_FILE" +for N in $NMSRVRS ; do echo "nameserver $N" >> "$TMP_FILE" ; done +mv -f "$TMP_FILE" "$RSLVRLIST_FILE" + +