[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1033090: unblock: dhcpdump/1.8-6



Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock
X-Debbugs-Cc: dhcpdump@packages.debian.org, kilobyte@debian.org
Control: affects -1 + src:dhcpdump

Please unblock package dhcpdump

[ Reason ]
Patches in 1.8-6 fix:
 - a severe bug (OOB access) that is triggered by network data
 - a bug in protocol decode that make it non-working on big-endian
and improve/fix behavior for:
 - DHCP flags display
 - option 82 data display

[ Impact ]
Users will have a buggy tool.

[ Tests ]
Fully tested on different types of DHCP traffic.

[ Risks ]
Very low - the package is leaf and fixes are trivial to verify.

[ Checklist ]
  [x] all changes are documented in the d/changelog
  [x] I reviewed all changes and I approve them
  [x] attach debdiff against the package in testing

[ Other info ]
N/A

unblock dhcpdump/1.8-6
diff -Nru dhcpdump-1.8/debian/changelog dhcpdump-1.8/debian/changelog
--- dhcpdump-1.8/debian/changelog	2022-12-05 15:08:35.000000000 +0000
+++ dhcpdump-1.8/debian/changelog	2023-03-08 16:43:02.000000000 +0000
@@ -1,3 +1,45 @@
+dhcpdump (1.8-6) unstable; urgency=medium
+
+  * QA upload.
+  * Upload 1.8-5 fixes to unstable.
+
+ -- Adam Borowski <kilobyte@angband.pl>  Wed, 08 Mar 2023 17:43:02 +0100
+
+dhcpdump (1.8-5) experimental; urgency=medium
+
+  [ Boian Bonev ]
+  * QA upload.
+  * Install binary and man page.
+  * Add patches that fix:
+    - build options in Makefile (hardening and cross)
+    - ethertype handling (Closes: #873635)
+    - flags calculation
+    - opt82 processing
+    - counts in string arrays (OOB access)
+    - spelling errors
+    - wrong description in man page (Closes: #647228)
+  * Do not depend on tcpdump.
+  * Bump standards to 4.6.2, no changes.
+  * Remove unrelated key and override source not signed.
+  * wrap-and-sort
+
+  [ Joao Paulo Lima de Oliveira ]
+  * debian/control:
+    - Set Rules-Requires-Root:no.
+    - Set homepage-field.
+    - Bumped Standards-Version to 4.6.1.
+    - Set debhelper-compat version in Build-Depends.
+    - Added Depends ${shlibs:Depends} in Depends fields.
+  * debian/rules:
+    - Rewrite to use dh-sequencer.
+  * debian/metadata:
+    - Added missing upstream metadata.
+    - Added upstream's key.
+  * debian/watch:
+    - Add watch file.
+
+ -- Boian Bonev <bbonev@ipacct.com>  Thu, 23 Feb 2023 08:31:03 +0000
+
 dhcpdump (1.8-4) unstable; urgency=medium
 
   * QA upload.
diff -Nru dhcpdump-1.8/debian/control dhcpdump-1.8/debian/control
--- dhcpdump-1.8/debian/control	2022-12-05 15:08:35.000000000 +0000
+++ dhcpdump-1.8/debian/control	2023-02-23 06:56:52.000000000 +0000
@@ -2,12 +2,19 @@
 Section: admin
 Priority: optional
 Maintainer: Debian QA Group <packages@qa.debian.org>
-Build-Depends: libpcap0.8-dev
-Standards-Version: 3.8.0.1
+Build-Depends:
+ debhelper-compat (= 13),
+ libpcap-dev,
+Standards-Version: 4.6.2
+Rules-Requires-Root: no
+Homepage: http://www.mavetju.org/download/
 
 Package: dhcpdump
 Architecture: any
-Depends: ${shlibs:Depends}, tcpdump
-Description: Parse DHCP packets from tcpdump
- This package provides a tool for visualization of DHCP packets as
- recorded and output by tcpdump to analyze DHCP server responses.
+Depends:
+ ${misc:Depends},
+ ${shlibs:Depends},
+Description: Parse DHCP packets from interface
+ This package provides a tool for visualization of DHCP packets
+ on a network interface to analyze DHCP client requests and
+ server responses.
diff -Nru dhcpdump-1.8/debian/copyright dhcpdump-1.8/debian/copyright
--- dhcpdump-1.8/debian/copyright	2022-12-05 15:08:35.000000000 +0000
+++ dhcpdump-1.8/debian/copyright	2023-02-23 06:59:21.000000000 +0000
@@ -3,8 +3,23 @@
 Source: http://www.mavetju.org/download/
 
 Files: *
-Copyright: 2001, 2002 by Edwin Groothuis, edwin@mavetju.org
- All rights reserved.
+Copyright: 2001-2002 Edwin Groothuis <edwin@mavetju.org>
+License: BSD-2-clause
+
+Files: debian/*
+Copyright:
+ 2001-2008 Martin Schulze <joey@infodrom.org,joey@finlandia.infodrom.north.de>
+ 2017      Manuel A. Fernandez Montecelo <mafm@debian.org>
+ 2017      Svante Signell <svante.signell@telia.com>
+ 2017      Chris Lamb <lamby@debian.org>
+ 2017      Helmut Grohne <helmut@subdivi.de>
+ 2022      Marcos Talau <talau@debian.org>
+ 2022      Bastian Germann <bage@debian.org>
+ 2022      Olivier Chirossel <Olivier.CHIROSSEL@neuf.com>
+ 2023      Joao Paulo Lima de Oliveira <jlima.oliveira11@gmail.com>
+ 2023      Boian Bonev <bbonev@ipacct.com>
+License: BSD-2-clause
+
 License: BSD-2-clause
  Redistribution and use in source and binary forms, with or without
  modification, are permitted provided that the following conditions
diff -Nru dhcpdump-1.8/debian/patches/dhcpdump-bugfix_ethertype.patch dhcpdump-1.8/debian/patches/dhcpdump-bugfix_ethertype.patch
--- dhcpdump-1.8/debian/patches/dhcpdump-bugfix_ethertype.patch	1970-01-01 00:00:00.000000000 +0000
+++ dhcpdump-1.8/debian/patches/dhcpdump-bugfix_ethertype.patch	2023-02-23 06:29:29.000000000 +0000
@@ -0,0 +1,22 @@
+Description: Fix network order 16bit value
+ Get the packet's ethertype in a way that works on any
+ kind of endian machine
+ .
+Author: Ben Hildred <42656e@gmail.com>
+Origin: vendor
+Forwarded: BTS #873635
+Last-Update: 2017-08-29
+
+--- a/dhcpdump.c
++++ b/dhcpdump.c
+@@ -132,8 +132,8 @@ void pcap_callback(u_char *user, const s
+ 	offset += ETHER_HDR_LEN;
+ 
+ 	// Check for IPv4 packets
+-	if (eh->ether_type != 8) { 
+-		printf("Ignored non IPv4 packet: %d\n", eh->ether_type);
++	if (eh->ether_type != htons(0x800)) { 
++		printf("Ignored non IPv4 packet: %x\n", ntohs(eh->ether_type));
+ 		return;
+ 	}
+ 
diff -Nru dhcpdump-1.8/debian/patches/dhcpdump-bugfix_flags.patch dhcpdump-1.8/debian/patches/dhcpdump-bugfix_flags.patch
--- dhcpdump-1.8/debian/patches/dhcpdump-bugfix_flags.patch	1970-01-01 00:00:00.000000000 +0000
+++ dhcpdump-1.8/debian/patches/dhcpdump-bugfix_flags.patch	2023-02-23 06:21:29.000000000 +0000
@@ -0,0 +1,19 @@
+Description: Fix the flags calculation
+ An obvious typo in converting network order 16bit value
+ .
+Author: Boian Bonev <bbonev@ipacct.com>
+Origin: other
+Forwarded: by-email
+Last-Update: 2013-05-28
+
+--- a/dhcpdump.c
++++ b/dhcpdump.c
+@@ -326,7 +326,7 @@ int printdata(u_char *data, int data_len
+ 	printf(  "   XID: %02x%02x%02x%02x\n",
+ 	    data[4], data[5], data[6], data[7]);
+ 	printf(  "  SECS: "); print16bits(data + 8);
+-	printf("\n FLAGS: %x\n", 255 * data[10] + data[11]);
++	printf("\n FLAGS: %x\n", 256 * data[10] + data[11]);
+ 
+ 	printf(  "CIADDR: "); printIPaddress(data + 12);
+ 	printf("\nYIADDR: "); printIPaddress(data + 16);
diff -Nru dhcpdump-1.8/debian/patches/dhcpdump-bugfix_opt82.patch dhcpdump-1.8/debian/patches/dhcpdump-bugfix_opt82.patch
--- dhcpdump-1.8/debian/patches/dhcpdump-bugfix_opt82.patch	1970-01-01 00:00:00.000000000 +0000
+++ dhcpdump-1.8/debian/patches/dhcpdump-bugfix_opt82.patch	2023-02-23 06:21:31.000000000 +0000
@@ -0,0 +1,33 @@
+Description: Fix opt82 handling
+ Print option 82 content in a usable way
+ .
+Author: Boian Bonev <bbonev@ipacct.com>
+Origin: other
+Forwarded: by-email
+Last-Update: 2013-10-04
+
+--- a/dhcpdump.c
++++ b/dhcpdump.c
+@@ -526,18 +526,17 @@ int printdata(u_char *data, int data_len
+ 		break;
+ 
+ 	case 82:	// Relay Agent Information
+-		printf("\n");
+-		for (i = j + 2; i < j + data[j + 1]; ) {
+-			printf("%-17s %-13s ", " ",
++		for (i = j + 2; i < j + data[j + 1] + 2; ) {
++			printf("\n%-17s %-13s ", " ",
+ 			    data[i] > sizeof(relayagent_suboptions) ?
+ 			    "*wrong value*" :
+ 			    relayagent_suboptions[data[i]]);
+-			if (i + data[i + 1] > j + data[j + 1]) {
++			if (i + data[i + 1] + 2 > j + data[j + 1] + 2) {
+ 				printf("*MALFORMED -- TOO LARGE*\n");
+ 				break;
+ 			}
+ 			printHexColon(data + i + 2, data[i + 1]);
+-			i += data[i + 1];
++			i += data[i + 1] + 2;
+ 		}
+ 		break;
+ 
diff -Nru dhcpdump-1.8/debian/patches/dhcpdump-bugfix_strcounts.patch dhcpdump-1.8/debian/patches/dhcpdump-bugfix_strcounts.patch
--- dhcpdump-1.8/debian/patches/dhcpdump-bugfix_strcounts.patch	1970-01-01 00:00:00.000000000 +0000
+++ dhcpdump-1.8/debian/patches/dhcpdump-bugfix_strcounts.patch	2023-02-23 06:21:33.000000000 +0000
@@ -0,0 +1,56 @@
+Description: Add check to avoid OOB access
+ sizeof(char *[]) should be divided by sizeof(char *) in
+ order to get the element count
+ .
+Author: Boian Bonev <bbonev@ipacct.com>
+Origin: other
+Forwarded: by-email
+Last-Update: 2013-10-04
+
+--- a/dhcpdump.c
++++ b/dhcpdump.c
+@@ -39,6 +39,8 @@
+ 
+ #define LARGESTRING 1024
+ 
++#define strcountof(x) (sizeof(x)/sizeof(*(x)))
++
+ // header variables
+ char	timestamp[40];			// timestamp on header
+ char	mac_origin[40];			// mac address of origin
+@@ -480,7 +482,7 @@ int printdata(u_char *data, int data_len
+ 	case 36:	// Ethernet encapsulation
+ 		printf("%d (%s)",
+ 		    data[j + 2],
+-		    data[j +2 ] > sizeof(ethernet_encapsulation) ?
++		    data[j +2 ] > strcountof(ethernet_encapsulation) ?
+ 			"*wrong value*" :
+ 			ethernet_encapsulation[data[j + 2]]);
+ 		break;
+@@ -488,7 +490,7 @@ int printdata(u_char *data, int data_len
+ 	case 52:	// Option overload
+ 		printf("%d (%s)",
+ 		    data[j + 2],
+-		    data[j + 2] > sizeof(option_overload) ?
++		    data[j + 2] > strcountof(option_overload) ?
+ 			"*wrong value*" :
+ 			option_overload[data[j + 2]]);
+ 		break;
+@@ -496,7 +498,7 @@ int printdata(u_char *data, int data_len
+ 	case 53:	// DHCP message type
+ 		printf("%d (%s)",
+ 		    data[j + 2],
+-		    data[j + 2] > sizeof(dhcp_message_types) ?
++		    data[j + 2] > strcountof(dhcp_message_types) ?
+ 			"*wrong value*" :
+ 			dhcp_message_types[data[j + 2]]);
+ 		break;
+@@ -528,7 +530,7 @@ int printdata(u_char *data, int data_len
+ 	case 82:	// Relay Agent Information
+ 		for (i = j + 2; i < j + data[j + 1] + 2; ) {
+ 			printf("\n%-17s %-13s ", " ",
+-			    data[i] > sizeof(relayagent_suboptions) ?
++			    data[i] > strcountof(relayagent_suboptions) ?
+ 			    "*wrong value*" :
+ 			    relayagent_suboptions[data[i]]);
+ 			if (i + data[i + 1] + 2 > j + data[j + 1] + 2) {
diff -Nru dhcpdump-1.8/debian/patches/dhcpdump-build.patch dhcpdump-1.8/debian/patches/dhcpdump-build.patch
--- dhcpdump-1.8/debian/patches/dhcpdump-build.patch	1970-01-01 00:00:00.000000000 +0000
+++ dhcpdump-1.8/debian/patches/dhcpdump-build.patch	2023-02-23 08:21:27.000000000 +0000
@@ -0,0 +1,21 @@
+Description: Fix makefile ignoring env vars
+ Append the local values to the already provided CFLAGS/LDFLAGS
+ from the environment. Add CPPFLAGS to CFLAGS - fixes hardening.
+ .
+Author: Boian Bonev <bbonev@ipacct.com>
+Origin: other
+Forwarded: by-email
+Last-Update: 2023-02-23
+
+--- a/Makefile
++++ b/Makefile
+@@ -1,6 +1,6 @@
+-CFLAGS=	 -Wall -g
+-LDFLAGS= -g
+-LIBS=	-lpcap
++CFLAGS += $(CPPFLAGS) -Wall -g
++LDFLAGS += -g
++LIBS += -lpcap
+ 
+ all: dhcpdump dhcpdump.8
+ 
diff -Nru dhcpdump-1.8/debian/patches/dhcpdump-spelling.patch dhcpdump-1.8/debian/patches/dhcpdump-spelling.patch
--- dhcpdump-1.8/debian/patches/dhcpdump-spelling.patch	1970-01-01 00:00:00.000000000 +0000
+++ dhcpdump-1.8/debian/patches/dhcpdump-spelling.patch	2023-02-23 08:23:24.000000000 +0000
@@ -0,0 +1,69 @@
+Description: Fix spelling and description
+ Fix several spelling errors and the program description
+ in the man page.
+ .
+Author: Boian Bonev <bbonev@ipacct.com>
+Origin: other
+Forwarded: by-email
+Last-Update: 2023-02-23
+
+--- a/dhcp_options.h
++++ b/dhcp_options.h
+@@ -118,7 +118,7 @@ const char *dhcp_options[] = {
+ /* 107 */	"???",
+ /* 108 */	"Swap Path",
+ /* 109 */	"???",
+-/* 110 */	"IPX Compatability",
++/* 110 */	"IPX Compatibility",
+ /* 111 */	"???",
+ /* 112 */	"Netinfo Address",
+ /* 113 */	"Netinfo Tag",
+--- a/dhcpdump.c
++++ b/dhcpdump.c
+@@ -95,7 +95,7 @@ int main(int argc, char **argv) {
+ 			interface = argv[++i];
+ 			break;
+ 		default:
+-			fprintf(stderr, "%s: %c: uknown option\n",
++			fprintf(stderr, "%s: %c: unknown option\n",
+ 			    argv[0], argv[i][1]);
+ 			usage();
+ 		}
+@@ -290,7 +290,7 @@ void printHex(u_char *data, int len) {
+ 	}
+ }
+ 
+-// print the data as a hex-list seperated by colons
++// print the data as a hex-list separated by colons
+ void printHexColon(u_char *data, int len) {
+ 	int i;
+ 
+--- a/dhcpdump.pod
++++ b/dhcpdump.pod
+@@ -12,7 +12,7 @@ B<dhcpdump> [B<-h> I<regular-expression>
+ 
+ =head1 DESCRIPTION
+ 
+-This command parses the output of tcpdump to display the dhcp-packets for
++This command listens on a network interface to display the dhcp-packets for
+ easier checking and debugging.
+ 
+ =head1 USAGE
+@@ -20,7 +20,7 @@ easier checking and debugging.
+ S<dhcpdump -i /dev/fxp0>
+ 
+ If you want to filter a specific Client Hardware Address (CHADDR), then
+-you can specifiy it as a regular expressions:
++you can specify it as a regular expressions:
+ 
+ S<dhcpdump -i /dev/fxp0 -h ^00:c0:4f>
+ 
+@@ -71,7 +71,7 @@ Privileged access is often needed for ac
+ Not all the parameter options are printed verbose, because of lack of
+ documentation. Not all the options are tested, because of lack of
+ clients/servers with these options. If you have a dump of one of
+-them, please send them to me and I'll incorperate them.
++them, please send them to me and I'll incorporate them.
+ 
+ =head1 THANKS TO
+ 
diff -Nru dhcpdump-1.8/debian/patches/dhcpdump-warnings.patch dhcpdump-1.8/debian/patches/dhcpdump-warnings.patch
--- dhcpdump-1.8/debian/patches/dhcpdump-warnings.patch	1970-01-01 00:00:00.000000000 +0000
+++ dhcpdump-1.8/debian/patches/dhcpdump-warnings.patch	2023-02-23 06:21:35.000000000 +0000
@@ -0,0 +1,19 @@
+Description: Fix a warning
+ Declare an unused parameter
+ .
+Author: Boian Bonev <bbonev@ipacct.com>
+Origin: other
+Forwarded: by-email
+Last-Update: 2023-02-20
+
+--- a/dhcpdump.c
++++ b/dhcpdump.c
+@@ -118,7 +118,7 @@ int main(int argc, char **argv) {
+ 	return 0;
+ }
+ 
+-void pcap_callback(u_char *user, const struct pcap_pkthdr *h, const u_char *sp) {
++void pcap_callback(u_char *user __attribute__((unused)), const struct pcap_pkthdr *h, const u_char *sp) {
+ 	struct ether_header *eh;
+ 	struct ip *ip;
+ 	struct udphdr *udp;
diff -Nru dhcpdump-1.8/debian/patches/dhcpdump.c.patch dhcpdump-1.8/debian/patches/dhcpdump.c.patch
--- dhcpdump-1.8/debian/patches/dhcpdump.c.patch	2022-12-05 15:08:35.000000000 +0000
+++ dhcpdump-1.8/debian/patches/dhcpdump.c.patch	2023-02-23 06:29:20.000000000 +0000
@@ -1,5 +1,14 @@
---- dhcpdump-1.8.orig/dhcpdump.c
-+++ dhcpdump-1.8/dhcpdump.c
+Description: Fix build system
+ Add missing headers.
+ Add conditional compiling for hurd and *bsd
+ Use char * for strings, keep unsigned char * for packet data
+ and explicitly cast it to char * where needed.
+ .
+Forwarded: not-needed
+Last-Update: 2023-02-23
+
+--- a/dhcpdump.c
++++ b/dhcpdump.c
 @@ -16,11 +16,13 @@
  #include <netinet/in.h>
  #include <netinet/ip.h>
@@ -82,22 +91,3 @@
  		buf[data[j + 1] - 3]=0;
  		printf("%s", buf);
  		break;
-@@ -518,6 +528,9 @@ int printdata(u_char *data, int data_len
- 	case 82:	// Relay Agent Information
- 		printf("\n");
- 		for (i = j + 2; i < j + data[j + 1]; ) {
-+			if (i != j+2) {
-+				printf("\n");
-+			}
- 			printf("%-17s %-13s ", " ",
- 			    data[i] > sizeof(relayagent_suboptions) ?
- 			    "*wrong value*" :
-@@ -527,7 +540,7 @@ int printdata(u_char *data, int data_len
- 				break;
- 			}
- 			printHexColon(data + i + 2, data[i + 1]);
--			i += data[i + 1];
-+			i += data[i + 1] + 2;
- 		}
- 		break;
- 
diff -Nru dhcpdump-1.8/debian/patches/series dhcpdump-1.8/debian/patches/series
--- dhcpdump-1.8/debian/patches/series	2022-12-05 15:08:35.000000000 +0000
+++ dhcpdump-1.8/debian/patches/series	2023-02-23 06:49:38.000000000 +0000
@@ -1 +1,8 @@
 dhcpdump.c.patch
+dhcpdump-build.patch
+dhcpdump-bugfix_ethertype.patch
+dhcpdump-bugfix_flags.patch
+dhcpdump-bugfix_opt82.patch
+dhcpdump-bugfix_strcounts.patch
+dhcpdump-warnings.patch
+dhcpdump-spelling.patch
diff -Nru dhcpdump-1.8/debian/rules dhcpdump-1.8/debian/rules
--- dhcpdump-1.8/debian/rules	2022-12-05 15:08:35.000000000 +0000
+++ dhcpdump-1.8/debian/rules	2023-02-23 08:26:23.000000000 +0000
@@ -1,113 +1,10 @@
 #! /usr/bin/make -f
 
-#   Copyright 1994-99,2001   joey@infodrom.org (Martin Schulze)
-#
-#   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.
-#
-#   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., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
-#
-SHELL=/bin/bash
+export DEB_BUILD_MAINT_OPTIONS=hardening=+all
 
-DEB_HOST_GNU_TYPE = $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+%:
+	dh $@
 
-# The name and version of the source
-#
-source = $(shell grep "^Source: " debian/control|head -1|sed 's/Source: \(.*\)/\1/g')
-package = $(shell grep "^Package: " debian/control|head -1|sed 's/Package: \(.*\)/\1/g')
-version = $(shell grep "^$(source) " debian/changelog|head -1 |sed 's/.*(\(.*\)\-[^\-]*).*/\1/g')
-revision = $(shell grep "^$(source) " debian/changelog|head -1 |sed 's/.*([^\-]*\-\(.*\)).*/\1/g')
-
-installbin = install -g root -o root -m 755
-installdoc = install -g root -o root -m 644
-
-# support non-Linux arches, see #622267
-EXTRAFLAG = $(shell dpkg-architecture -ilinux-any || echo "-D_BSD_SOURCE")
-
-ifeq ($(origin CC),default)
-CC = $(DEB_HOST_GNU_TYPE)-gcc
-endif
-
-ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
-CFLAGS = -g -O2 -Wall
-else
-CFLAGS = -O2 -Wall
-endif
-STRIP = $(DEB_HOST_GNU_TYPE)-strip
-ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
-STRIP = : strip
-endif
-
-build:
-	$(MAKE) CC=$(CC) CFLAGS="$(CFLAGS) $(EXTRAFLAG) -DHAVE_STRSEP"
-	touch stamp-build
-
-clean: debclean
-	rm -f stamp-build
-	$(MAKE) clean
-
-debclean:
-# Cleans debian binary directories to allow binary creation
-	rm -rf debian/tmp
-	rm -f debian/{files,substvars}
-
-binary-indep:
-# Nothing to be done here
-
-binary-arch: debclean
-	test -f stamp-build || $(MAKE) -f debian/rules build
-	$(installbin) -d debian/tmp/DEBIAN
-	chown -R root.root debian/tmp
-	chmod -R g-ws debian/tmp
-	$(installbin) -d debian/tmp/usr/share/doc/$(package)
-	$(installdoc) debian/changelog debian/tmp/usr/share/doc/$(package)/changelog.Debian
-	#
-	gzip -9nf debian/tmp/usr/share/doc/$(package)/changelog.Debian
-	#
-	$(installbin) -d debian/tmp/usr/sbin
-	$(STRIP) dhcpdump
-	$(installbin) dhcpdump debian/tmp/usr/sbin
-	#
-	$(installbin) -d debian/tmp/usr/share/man/man8
-	$(installdoc) dhcpdump.8 debian/tmp/usr/share/man/man8
-	gzip -9n debian/tmp/usr/share/man/man?/*
-	#
-	dpkg-shlibdeps debian/tmp/usr/sbin/dhcpdump
-	dpkg-gencontrol -isp
-	dpkg --build debian/tmp ..
-
-binary: binary-indep binary-arch
-
-source diff:
-	@echo >&2 'source and diff are obsolete - use dpkg-source -b' or dsc; false
-
-dsc:
-	-test -d debian/tmp && $(MAKE) -f debian/rules clean
-	if [ ! -f ../$(source)_$(version).orig.tar.gz -a -f ../orig/$(source)_$(version).orig.tar.gz ]; \
-	then \
-	  ln -s orig/$(source)_$(version).orig.tar.gz ../$(source)_$(version).orig.tar.gz; \
-	  touch /tmp/stamp-$(source)-link; \
-	fi; \
-	cd .. && dpkg-source -b $(source)-$(version)
-	if [ -f /tmp/stamp-$(source)-link ]; then \
-	  rm ../$(source)_$(version).orig.tar.gz /tmp/stamp-$(source)-link; \
-	fi
-
-checkroot:
-	$(checkdir)
-	test root = "`whoami`"
-
-dist: binary dsc
-
-build-arch: build
-build-indep: build
-
-.PHONY: build build-arch build-indep binary binary-arch binary-indep clean checkroot
+override_dh_install:
+	install -TDm 0755 dhcpdump debian/dhcpdump/usr/sbin/dhcpdump
+	install -TDm 0644 dhcpdump.8 debian/dhcpdump/usr/share/man/man8/dhcpdump.8
diff -Nru dhcpdump-1.8/debian/source/lintian-overrides dhcpdump-1.8/debian/source/lintian-overrides
--- dhcpdump-1.8/debian/source/lintian-overrides	1970-01-01 00:00:00.000000000 +0000
+++ dhcpdump-1.8/debian/source/lintian-overrides	2023-02-23 08:06:21.000000000 +0000
@@ -0,0 +1,2 @@
+# upstream does not sign the releases
+dhcpdump source: debian-watch-does-not-check-openpgp-signature [debian/watch]
diff -Nru dhcpdump-1.8/debian/upstream/metadata dhcpdump-1.8/debian/upstream/metadata
--- dhcpdump-1.8/debian/upstream/metadata	1970-01-01 00:00:00.000000000 +0000
+++ dhcpdump-1.8/debian/upstream/metadata	2023-02-17 22:38:21.000000000 +0000
@@ -0,0 +1,4 @@
+Name: dhcpdump
+Repository: http://www.mavetju.org/download/
+Repository-Browse: http://www.mavetju.org/download/
+Bug-Database: http://www.mavetju.org/contacts.php
diff -Nru dhcpdump-1.8/debian/watch dhcpdump-1.8/debian/watch
--- dhcpdump-1.8/debian/watch	1970-01-01 00:00:00.000000000 +0000
+++ dhcpdump-1.8/debian/watch	2023-02-23 06:25:04.000000000 +0000
@@ -0,0 +1,2 @@
+version=4
+https://www.mavetju.org/download/ dhcpdump-(.*)\.tar\.gz

Reply to: