commit c577ec8612ba9c9caf90f33ba63362099f331cae Author: Jan Wagner Date: Wed Mar 26 00:53:54 2008 +0000 import 1.12-1etch1 diff --git a/changelog b/changelog new file mode 100644 index 0000000..51002be --- /dev/null +++ b/changelog @@ -0,0 +1,39 @@ +dns-flood-detector (1.12-1etch1) stable; urgency=low + + * make start-stop-daemon working instead of using kill (Closes: #431676). + + -- Jan Wagner Fri, 21 Mar 2008 17:21:51 +0100 + +dns-flood-detector (1.12-1) unstable; urgency=medium + + * New upstream release + * modified fix_prototyp patch for upstream + + -- Jan Wagner Thu, 23 Nov 2006 13:35:11 +0100 + +dns-flood-detector (1.10-4) unstable; urgency=low + + * included fix_prototyp patch provided by "dann frazier " + (Closes: #399283). + * build depend to dpatch + + -- Jan Wagner Sun, 19 Nov 2006 10:18:55 +0100 + +dns-flood-detector (1.10-3) unstable; urgency=low + + * using killall in init script to get daemon stopped + * same for prerm + + -- Jan Wagner Thu, 9 Nov 2006 20:49:10 +0100 + +dns-flood-detector (1.10-2) unstable; urgency=low + + * fixed typo in initscript + + -- Jan Wagner Sat, 4 Nov 2006 21:46:03 +0100 + +dns-flood-detector (1.10-1) unstable; urgency=low + + * Initial release (Closes: #396618). + + -- Jan Wagner Fri, 3 Nov 2006 12:39:42 +0100 diff --git a/compat b/compat new file mode 100644 index 0000000..7ed6ff8 --- /dev/null +++ b/compat @@ -0,0 +1 @@ +5 diff --git a/control b/control new file mode 100644 index 0000000..175e510 --- /dev/null +++ b/control @@ -0,0 +1,23 @@ +Source: dns-flood-detector +Section: net +Priority: optional +Maintainer: Jan Wagner +Build-Depends: debhelper (>= 5), dpatch, libpcap0.8-dev +Standards-Version: 3.7.2 + +Package: dns-flood-detector +Architecture: any +Depends: ${shlibs:Depends} +Description: detect abusive usage levels on high traffic nameservers + This package provides the dns-flood-detector daemon. + . + It was developed to detect abusive usage levels on high traffic nameservers + and to enable quick response in halting the use of one's nameserver to + facilitate spam. + It uses libpcap (in non-promiscuous mode) to monitor incoming dns queries to a + nameserver. The tool may be run in one of two modes, either daemon mode or + "bindsnap" mode. In daemon mode, the tool will alarm via syslog. In bindsnap + mode, the user is able to get near-real-time stats on usage to aid in more + detailed troubleshooting. + . + Homepage: diff --git a/copyright b/copyright new file mode 100644 index 0000000..40063bb --- /dev/null +++ b/copyright @@ -0,0 +1,30 @@ +This package was debianized by Jan Wagner on +Fri, 3 Nov 2006 12:39:42 +0100. + +It was downloaded from + +Upstream Author: Dennis Opacki + +Copyright: (C) 2003 Dennis Opacki + +License: + + 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; either version 2 of the License, or + (at your option) any later version. + + 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. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +On Debian systems, the complete text of the GNU General Public License +can be found in /usr/share/common-licenses/GPL file. + +The Debian packaging is (C) 2006, Jan Wagner and +is licensed under the GPL, see `/usr/share/common-licenses/GPL'. diff --git a/default b/default new file mode 100644 index 0000000..977f5d7 --- /dev/null +++ b/default @@ -0,0 +1,7 @@ +# Defaults for dns-flood-detector initscript +# sourced by /etc/init.d/dns-flood-detector +# installed at /etc/default/dns-flood-detector by the maintainer scripts + +# options that are passed to the Daemon. +# here: daemon mode, be more verbose, alarm at > 5/s, stats every 3 secs +DAEMON_OPTS="-d -v -v -t5 -w3" diff --git a/dns-flood-detector.8 b/dns-flood-detector.8 new file mode 100644 index 0000000..e7a9cad --- /dev/null +++ b/dns-flood-detector.8 @@ -0,0 +1,70 @@ +.TH DNS-FLOOD-DETECTOR 8 "2006-11-03" "1.10" "dns flood detection tool" + +.SH NAME +DNS-FLOOD-DETECTOR \- dns flood detection and alert tool + +.SH SYNOPSIS +.B dns-flood-detector +.RB [\| \-b \||\| \-d \|] +.RB [\| \-v \|] +.RB [\| \-h \|] +.RB [\| \-i +.IR device \|] +.RB [\| -t +.IR n \|] +.RB [\| -a +.IR n \|] +.RB [\| -w +.IR n \|] +.RB [\| -x +.IR n \|] +.RB [\| -m +.IR n \|] + +.SH DESCRIPTION +.B DNS Flood Detector +was developed to detect abusive usage levels on high traffic nameservers and to +enable quick response to the use of one's nameserver to facilitate spam. + +.SH OPTIONS +.B +.TP +.B \-b +run in foreground in bindsnap mode +.TP +.B \-d +run in background in daemon mode +.TP +.B \-v +verbose output \- use again for more verbosity +.TP +.B \-h +display help +.TP +.B \-i device +specify device name to listen on +.TP +.B \-t n +alarm at >n queries per second +.TP +.B \-a n +reset alarm after n seconds +.TP +.B \-w n +calculate stats every n seconds +.TP +.B \-x n +create n buckets +.TP +.B \-m n +report overall stats every n seconds + +.SH SEE ALSO +.B Website + + +.SH AUTHOR +DNS-FLOOD-DETECTOR was written by Dennis Opacki . +.PP +This manual page was written by Jan Wagner , +for the Debian project (but may be used by others). diff --git a/docs b/docs new file mode 100644 index 0000000..e845566 --- /dev/null +++ b/docs @@ -0,0 +1 @@ +README diff --git a/init.d b/init.d new file mode 100644 index 0000000..5783cd6 --- /dev/null +++ b/init.d @@ -0,0 +1,64 @@ +#!/bin/sh +# Written by Miquel van Smoorenburg . +# Modified for Debian +# by Ian Murdock . +# +# Version: @(#)skeleton 1.9 26-Feb-2001 miquels@cistron.nl +# /etc/init.d/dns-flood-detector: v1 2006/11/03 Jan Wagner + +### BEGIN INIT INFO +# Provides: dns-flood-detector +# Required-Start: $local_fs $network $remote_fs $syslog +# Required-Stop: $local_fs $network $remote_fs $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: start and stop the dns-flood-detector daemon +# Description: detect abusive usage levels on high traffic nameservers +### END INIT INFO + +PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin +DAEMON=/usr/bin/dns-flood-detector +NAME=dns-flood-detector +DESC=dns-flood-detector + +test -x $DAEMON || exit 0 + +# Include dns-flood-detector defaults if available +if [ -f /etc/default/dns-flood-detector ] ; then + . /etc/default/dns-flood-detector +fi + +set -e + +case "$1" in + start) + echo -n "Starting $DESC: " + start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \ + --exec $DAEMON -- $DAEMON_OPTS + /bin/pidof $DAEMON > /var/run/$NAME.pid + echo "$NAME." + ;; + stop) + echo -n "Stopping $DESC: " + start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \ + --exec $DAEMON + echo "$NAME." + ;; + restart|force-reload) + echo -n "Restarting $DESC: " + start-stop-daemon --stop --quiet --pidfile \ + /var/run/$NAME.pid --exec $DAEMON + start-stop-daemon --start --quiet --pidfile \ + /var/run/$NAME.pid --exec $DAEMON -- $DAEMON_OPTS + /bin/pidof $DAEMON > /var/run/$NAME.pid + echo "$NAME." + ;; + *) + N=/etc/init.d/$NAME + # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2 + echo "Usage: $N {start|stop|restart|force-reload}" >&2 + exit 1 + ;; +esac + +exit 0 diff --git a/patches/00list b/patches/00list new file mode 100644 index 0000000..3220968 --- /dev/null +++ b/patches/00list @@ -0,0 +1 @@ +01_fix_prototyp.dpatch diff --git a/patches/01_fix_prototyp.dpatch b/patches/01_fix_prototyp.dpatch new file mode 100644 index 0000000..d6b7390 --- /dev/null +++ b/patches/01_fix_prototyp.dpatch @@ -0,0 +1,17 @@ +#!/bin/sh /usr/share/dpatch/dpatch-run +## 01_fix_prototyp.dpatch by dann frazier +## +## DP: fix missing function prototype definition + +@DPATCH@ + +--- dns-flood-detector-1.10/dns_flood_detector.c~ 2003-12-29 20:53:38.000000000 -0700 ++++ dns-flood-detector-1.10/dns_flood_detector.c 2006-11-18 17:38:47.000000000 -0700 +@@ -79,6 +79,7 @@ + #include + #include + #include ++#include + #include + #include + #include diff --git a/postinst b/postinst new file mode 100644 index 0000000..a7c85c1 --- /dev/null +++ b/postinst @@ -0,0 +1,11 @@ +#!/bin/sh +set -e + +if [ -x "/etc/init.d/dns-flood-detector" ]; then + update-rc.d dns-flood-detector defaults 40 >/dev/null + if [ -x "`which invoke-rc.d 2>/dev/null`" ]; then + invoke-rc.d dns-flood-detector start || exit $? + else + /etc/init.d/dns-flood-detector start || exit $? + fi +fi diff --git a/postrm b/postrm new file mode 100644 index 0000000..ea57f84 --- /dev/null +++ b/postrm @@ -0,0 +1,6 @@ +#!/bin/sh +set -e + +if [ "$1" = "purge" ] ; then + update-rc.d dns-flood-detector remove >/dev/null || exit $? +fi diff --git a/prerm b/prerm new file mode 100644 index 0000000..9639f67 --- /dev/null +++ b/prerm @@ -0,0 +1,5 @@ +#!/bin/sh +set -e +# work without debhelper since only kill stops the app (for now) +killall -9 dns-flood-detector + diff --git a/rules b/rules new file mode 100755 index 0000000..d2b64f4 --- /dev/null +++ b/rules @@ -0,0 +1,69 @@ +#!/usr/bin/make -f +# written by Jan Wagner +# +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +include /usr/share/dpatch/dpatch.make + +CFLAGS += -D_BSD_SOURCE -Wall -g +LDLIBS += -lpcap -lpthread -lm + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif + +build: build-stamp +build-stamp: patch-stamp + dh_testdir + # Add here commands to compile the package. + $(CC) $(CFLAGS) dns_flood_detector.c $(LDLIBS) -o dns_flood_detector + + touch $@ + +clean: unpatch + dh_testdir + dh_testroot + rm -f build-stamp + + # Add here commands to clean up after the build process. + rm -rf dns_flood_detector *.o *~ + + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + # Add here commands to install the package into debian/dns-flood-detector. + install -D -m 0755 dns_flood_detector debian/dns-flood-detector/usr/bin/dns-flood-detector + install -D -m 0644 debian/default debian/dns-flood-detector/etc/default/dns-flood-detector + install -D -m 0755 debian/init.d debian/dns-flood-detector/etc/init.d/dns-flood-detector + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_installchangelogs + dh_installdocs + dh_installman debian/dns-flood-detector.8 + dh_link + dh_strip + dh_compress + dh_fixperms + dh_shlibdeps + dh_installdeb + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install diff --git a/watch b/watch new file mode 100644 index 0000000..76ed60b --- /dev/null +++ b/watch @@ -0,0 +1,2 @@ +version=3 +http://www.adotout.com/dnsflood-(.*)\.tgz