--- dnsproxy-1.15.orig/debian/control +++ dnsproxy-1.15/debian/control @@ -0,0 +1,27 @@ +Source: dnsproxy +Section: net +Priority: optional +Maintainer: Patrick Schoenfeld +Homepage: http://wolfermann.org/dnsproxy.html +Vcs-Svn: svn://svn.debian.org/svn/collab-maint/ext-maint/dnsproxy/trunk +Vcs-Browser: http://svn.debian.org/wsvn/collab-maint/ext-maint/dnsproxy +Build-Depends: debhelper (>= 5), autotools-dev, libevent-dev, groff-base, dpatch +Standards-Version: 3.7.3 + +Package: dnsproxy +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, adduser, lsb-base +Description: proxy for DNS queries + dnsproxy forwards DNS queries to two previously configured nameservers: + one for authoritative queries and another for recursive queries. + The received answers are sent back to the client unchanged. + No local caching is done. + . + Primary motivation for this project was the need to replace Bind servers with + djbdns in an ISP environment. These servers get recursive queries from + customers and authoritative queries from outside at the same IP address. + Now it is possible to run dnscache and tinydns on the same machine with + queries dispatched by dnsproxy. + . + Another possible scenario is a firewall where proxy queries should be + forwarded to the real server in a DMZ. --- dnsproxy-1.15.orig/debian/default +++ dnsproxy-1.15/debian/default @@ -0,0 +1,8 @@ +# Defaults for dnsproxy initscript +# sourced by /etc/init.d/dnsproxy +# installed at /etc/default/dnsproxy by the maintainer scripts + +# dnsproxy will not start if this option is set to to false. +# If you installed dnsproxy for the first time, please have a look at +# /usr/share/doc/dnsproxy/README.Debian +RUN_DNSPROXY="false" --- dnsproxy-1.15.orig/debian/rules +++ dnsproxy-1.15/debian/rules @@ -0,0 +1,92 @@ +#!/usr/bin/make -f +# +# debian/rules file for dnsproxy +# (C) 2006 Patrick Schoenfeld +# + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +include /usr/share/dpatch/dpatch.make + +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) + +ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE)) + CONFFLAGS += --build $(DEB_HOST_GNU_TYPE) +else + CONFFLAGS += --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE) +endif + +CFLAGS = -Wall -g -D_GNU_SOURCE + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif + +config.status: configure + dh_testdir +ifneq "$(wildcard /usr/share/misc/config.sub)" "" + cp -f /usr/share/misc/config.sub config.sub +endif +ifneq "$(wildcard /usr/share/misc/config.guess)" "" + cp -f /usr/share/misc/config.guess config.guess +endif + ./configure $(CONFFLAGS) \ + --prefix=/usr \ + --mandir=\$${prefix}/share/man \ + --infodir=\$${prefix}/share/info \ + --with-native-libevent \ + CFLAGS="$(CFLAGS)" \ + LDFLAGS="-Wl,-z,defs" + +build: build-stamp + +build-stamp: patch config.status + dh_testdir + $(MAKE) + touch $@ + +clean: unpatch + dh_testdir + dh_testroot + rm -f build-stamp + rm -f dnsproxy dnsproxy.o daemon.o hash.o internal.o log.o parse.o stats.o dnsproxy.cat1 dnsproxy.core + rm -f Makefile config.log config.status config.h config.sub config.guess + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs var/spool/dnsproxy + + # Install application files into debian/dnsproxy + install -D -m 755 dnsproxy debian/dnsproxy/usr/sbin/dnsproxy + install -D -m 644 debian/dnsproxy.conf debian/dnsproxy/etc/dnsproxy.conf + +# Build architecture-independent files here. +binary-indep: build install + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_installchangelogs + dh_installdocs + dh_installman dnsproxy.1 + dh_link + dh_strip + dh_compress + dh_fixperms + dh_installinit + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install --- dnsproxy-1.15.orig/debian/watch +++ dnsproxy-1.15/debian/watch @@ -0,0 +1,3 @@ +version=3 + +http://wolfermann.org/dnsproxy.html dnsproxy-(.*)\.tar\.gz --- dnsproxy-1.15.orig/debian/dnsproxy.conf +++ dnsproxy-1.15/debian/dnsproxy.conf @@ -0,0 +1,37 @@ +# +# dnsproxy 1.15 configuration file example +# +# $Id: dnsproxy.conf,v 1.7 2005/05/16 17:31:30 armin Exp $ + +# +# Authoritative server +# +authoritative 127.0.0.1 +authoritative-port 53001 # It's port. Defaults to 53. +authoritative-timeout 10 # Seconds to wait for answers. + +# +# Recursive resolver +# +recursive 127.0.0.1 +recursive-port 53002 # It's port. Defaults to 53. +recursive-timeout 90 # Seconds to wait for answers. + +# +# Local address and port of dnsproxy +# +listen 192.168.168.1 +port 53000 + +# +# Security features +# +chroot /var/spool/dnsproxy +user dnsproxy + +# +# Internal networks (allowed to do recursive queries) +# +internal 192.168.168.0/24 # Our internal network +internal 192.168.169.0/24 # Friendly neighbours +internal 127.0.0.1 --- dnsproxy-1.15.orig/debian/changelog +++ dnsproxy-1.15/debian/changelog @@ -0,0 +1,60 @@ +dnsproxy (1.15-5) unstable; urgency=low + + * Added ${misc:Depends} to the depends of the binary package for the case + that the debhelpers makes use of it + * Make sure that config.sub and config.guess are up to date to make porters + work easier + * Delete config.sub and config.guess in clean target to avoid that it gets + into the diff.gz when built two times in a row + * Install dnsproxy binary with permission mask 755 instead of 555 + * Rewritten the init script: + + Now features a status action to show the status of dnsproxy + + Uses the standard lsb functions + * Added a depend on lsb-base because its required for the init script + * Added a patch for the wrong use of hypens in the manpage + * Replace (C) and (c) with appropriate (legally entitled) copyright symbol + * Add missing licensing and copyright information for libevent/compat/tree.h + to debian/copyright and clarify copyright situation a bit more by + specifying correct years + * Replace explicit listing of years with a earliest year - latest year + variant in copyright information. + * Fixed use of wrong path in machine-parseable copyright information for + libevent/compat/sys/tree.h + * Added missing years to machine-readable part of the copyright file + + -- Patrick Schoenfeld Tue, 12 Feb 2008 14:23:50 +0100 + +dnsproxy (1.15-4) unstable; urgency=low + + * debian/rules: Made build-stamp target depend on config.status to fix + problems with parallel builds + * Updated to Standards-Version 3.7.3 + + -- Patrick Schoenfeld Mon, 03 Dec 2007 10:09:33 +0100 + +dnsproxy (1.15-3) unstable; urgency=low + + * Use the new Homepage field + * Only use --host argument to configure if cross-building + * Added marchine-parseable part to debian/copyright + * Added Vcs-Headers to debian/control + + -- Patrick Schoenfeld Fri, 30 Nov 2007 19:05:01 +0100 + +dnsproxy (1.15-2) unstable; urgency=low + + * Did some changes to fix build errors: + - Added a patch to fix missing prototypes + - Added an option in CFLAGS to include a _USE_GNU define + - Added groff-base to build dependencies + (Closes: #404898) + + -- Patrick Schoenfeld Thu, 1 Feb 2007 17:08:08 +0100 + +dnsproxy (1.15-1) unstable; urgency=low + + * Initial release (Closes: #402597) + * Added an init script + * Added debian-specific notes to README.Debian + + -- Patrick Schoenfeld Sat, 16 Dec 2006 20:46:45 +0100 --- dnsproxy-1.15.orig/debian/postinst +++ dnsproxy-1.15/debian/postinst @@ -0,0 +1,10 @@ +#!/bin/sh +set -e + +case "$1" in + configure) + adduser --system --quiet --no-create-home --group dnsproxy + ;; +esac + +#DEBHELPER# --- dnsproxy-1.15.orig/debian/compat +++ dnsproxy-1.15/debian/compat @@ -0,0 +1 @@ +5 --- dnsproxy-1.15.orig/debian/init.d +++ dnsproxy-1.15/debian/init.d @@ -0,0 +1,155 @@ +#! /bin/sh +# +# dnsproxy initscript +# Author: Patrick Schoenfeld +# Heavily based on /etc/init.d/skeleton +# +### BEGIN INIT INFO +# Provides: dnsproxy +# Required-Start: $syslog $named +# Required-Stop: $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: starts dnsproxy +### END INIT INFO + +PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin +DAEMON=/usr/sbin/dnsproxy +NAME=dnsproxy +DESC=dnsproxy + +# Exit if the package is not installed +[ -x $DAEMON ] || exit 0 + +# Defaults for values from the defaults file +RUN_DNSPROXY="false" +ARGS="-d -c /etc/dnsproxy.conf" + +# Read the defaults file if available +[ -r /etc/default/$NAME ] && . /etc/default/$NAME + +# Load the VERBOSE setting and other rcS variables +. /lib/init/vars.sh + +# Define LSB log_* functions. +# Depend on lsb-base (>= 3.0-6) to ensure that this file is present. +. /lib/lsb/init-functions + +start() +{ + start-stop-daemon --start --quiet --exec $DAEMON --test > /dev/null \ + || return 1 + start-stop-daemon --start --quiet --exec $DAEMON -- \ + $ARGS \ + || return 2 +} + +status() +{ + start-stop-daemon --start --quiet --exec $DAEMON --test > /dev/null + if [ "$?" = '0' ]; then + if [ "$RUN_DNSPROXY" = 'false' ]; then + return 2 # Daemon is disabled + else + return 1 # Daemon is not running + fi + else + return 0 # Daemon is running + fi +} + +stop() +{ + status + case "$?" in + 1|2) + return 1 + ;; + *) + start-stop-daemon --stop --quiet --retry=0/30/KILL/5 --exec $DAEMON + + if [ "$?" = 2 ]; then + return 2 + fi + + return "$?" + ;; + esac +} + +case "$1" in + start) + log_daemon_msg "Starting $DESC" "$NAME" + start + case "$?" in + 0) + log_end_msg 0 + ;; + 1) + echo " is already running." + ;; + 2) + log_end_msg 1 + ;; + esac + ;; + stop) + log_daemon_msg "Stopping $DESC" "$NAME" + stop + case "$?" in + 0) + log_end_msg 0 + ;; + 1) + echo " is not running." + ;; + 2) + log_end_msg 1 + ;; + esac + ;; + restart|force-reload) + log_daemon_msg "Restarting $DESC" "$NAME" + stop + + case "$?" in + 0|1) + start + case "$?" in + 0) + log_end_msg 0 + ;; + 1) + log_end_msg 1 + ;; + *) + log_end_msg 1 + ;; + esac + ;; + *) + log_end_msg 1 + ;; + esac + ;; + status) + log_daemon_msg "Status of $DESC" + echo -n " " + status + case "$?" in + 0) + log_success_msg "$NAME is running." + ;; + 1) + log_success_msg "$NAME is not running." + ;; + 2) + log_success_msg "$NAME is disabled (see /etc/default/$NAME)." + ;; + esac + ;; + *) + echo "Usage: $0 {start|stop|status|restart|force-reload}" >&2 + exit 3 + ;; +esac --- dnsproxy-1.15.orig/debian/README.Debian +++ dnsproxy-1.15/debian/README.Debian @@ -0,0 +1,12 @@ +dnsproxy for Debian +------------------- + +The Debian package of dnsproxy contains an init script which does not run per +default. It is enabled by changing the variable + + RUN_DNSPROXY="" + +from 'false' to 'true'. But before doing this, one should configure dnsproxy +by editing /etc/dnsproxy.conf. See dnsproxy(1) for details. + + -- Patrick Schoenfeld Sat, 16 Dec 2006 20:40:00 +0100 --- dnsproxy-1.15.orig/debian/patches/00list +++ dnsproxy-1.15/debian/patches/00list @@ -0,0 +1,2 @@ +01_fix_missing_prototypes +02_fix_wrong_use_of_hyphens_in_manpage --- dnsproxy-1.15.orig/debian/patches/02_fix_wrong_use_of_hyphens_in_manpage.dpatch +++ dnsproxy-1.15/debian/patches/02_fix_wrong_use_of_hyphens_in_manpage.dpatch @@ -0,0 +1,19 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 02_fix_wrong_use_of_hyphens_in_manpage.dpatch by Patrick Schoenfeld +## +## +## DP: Fix wrong use of hyphens in the manpage. + +@DPATCH@ +diff -urNad dnsproxy-1.15~/dnsproxy.1 dnsproxy-1.15/dnsproxy.1 +--- dnsproxy-1.15~/dnsproxy.1 2005-05-17 00:52:43.000000000 +0200 ++++ dnsproxy-1.15/dnsproxy.1 2008-02-17 18:16:07.081153213 +0100 +@@ -62,7 +62,7 @@ + .\" ------------------------------------------------------------------ + At startup + .Nm +-reads a configuration file specified via the -c option ++reads a configuration file specified via the \-c option + or at the default location of /etc/dnsproxy.conf. + .Pp + The following keywords are recognized: --- dnsproxy-1.15.orig/debian/patches/01_fix_missing_prototypes.dpatch +++ dnsproxy-1.15/debian/patches/01_fix_missing_prototypes.dpatch @@ -0,0 +1,17 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 01_fix_missing_prototypes.dpatch by Patrick Schoenfeld +## +## DP: Patch to add some missing prototypes. + +@DPATCH@ + +--- trunk/dnsproxy.c.orig 2007-01-23 14:28:15.162104321 +0100 ++++ trunk/dnsproxy.c 2007-01-23 14:28:23.609478258 +0100 +@@ -29,6 +29,7 @@ + #include + #include + #include ++#include + + #define GLOBALS 1 + #include "dnsproxy.h" --- dnsproxy-1.15.orig/debian/copyright +++ dnsproxy-1.15/debian/copyright @@ -0,0 +1,145 @@ +This package was debianized by Patrick Schoenfeld on +Mon, 11 Dec 2006 14:01:31 +0100. + +It was downloaded from http://wolfermann.org/dnsproxy.html + +Upstream Author: Armin Wolfermann + +Copyright Holders: Armin Wolfermann + The Regents of the University of California (for daemon.c) + Niels Provos + Nick Mathewson + Dug Song + +The source distribution also contains libevent, which differs in licensing and +copyrights. + +License (except daemon.c and libevent): + + Copyright © 2003-2005 Armin Wolfermann + + Permission is hereby granted, free of charge, to any person obtaining a + copy of this software and associated documentation files (the "Software"), + to deal in the Software without restriction, including without limitation + the rights to use, copy, modify, merge, publish, distribute, sublicense, + and/or sell copies of the Software, and to permit persons to whom the + Software is furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + DEALINGS IN THE SOFTWARE. + +License (for daemon.c): + + Copyright © 1982-1993 The Regents of University of California. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. + +License (for libevent except libevent/compat/tree.h): + + © 2005 Nick Mathewson + © 2000-2004 Niels Provos + © 1993 The Regents of the University of California. + © 2000 Dug Song + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. The name of the author may not be used to endorse or promote products + derived from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License (for libevent/compat/tree.h): + + Copyright 2002 Niels Provos + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +The Debian Packaging is © Patrick Schoenfeld +and is licensed under the terms of the GNU General Public License. +On Debian systems the complete text of the GNU General Public License can be +found in file "/usr/share/common-licenses/GPL". + +Files: * +License: MIT +Copyright: © 2003-2005 Armin Wolfermann + +Files: debian/* +License: GPL +Copyright: © 2007-2008 Patrick Schoenfeld + +Files: libevent/* +License: BSD-3 +Copyright: © 2002-2004 Niels Provos + © 1993 The Regents of the University of California + © 2005 Nick Mathewson + © 2000 Dug Song + +Files: libevent/compat/sys/tree.h +License: BSD-2 +Copyright: © 2002 Niels Provos