[Buildroot] [PATCH 12/13] tcpdump: bump to version 4.2.1

Gustavo Zacarias gustavo at zacarias.com.ar
Thu Jan 26 16:51:31 UTC 2012


Signed-off-by: Gustavo Zacarias <gustavo at zacarias.com.ar>
---
 package/tcpdump/tcpdump-4.1.1-vfork.patch |  127 -----------------------------
 package/tcpdump/tcpdump.mk                |   12 ++--
 2 files changed, 6 insertions(+), 133 deletions(-)
 delete mode 100644 package/tcpdump/tcpdump-4.1.1-vfork.patch

diff --git a/package/tcpdump/tcpdump-4.1.1-vfork.patch b/package/tcpdump/tcpdump-4.1.1-vfork.patch
deleted file mode 100644
index 8213f35..0000000
--- a/package/tcpdump/tcpdump-4.1.1-vfork.patch
+++ /dev/null
@@ -1,127 +0,0 @@
-https://sourceforge.net/tracker/?func=detail&aid=3120897&group_id=53066&atid=469575
-
-From 6f8927c609d1f986a45010b7acae0eb570668642 Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier at gentoo.org>
-Date: Sat, 27 Nov 2010 17:18:05 -0500
-Subject: [PATCH] add support for nommu systems
-
-Rather than hardcode the WIN32 define, add proper fork checks to the
-configure script and check those.  This fixes building for nommu systems
-which lack the fork function.
-
-While we're here though, add support for this functionality via vfork
-so that it does work on nommu systems.  And fix an old bug where we
-exit properly in the forked child when the exec failed instead of just
-returning to the calling code (which isn't expecting it).
-
-Signed-off-by: Mike Frysinger <vapier at gentoo.org>
----
-
---- tcpdump-4.0.0/config.h.in
-+++ tcpdump-4.0.0/config.h.in
-@@ -151,6 +151,9 @@
- /* Define to 1 if you have the <fcntl.h> header file. */
- #undef HAVE_FCNTL_H
- 
-+/* Define to 1 if you have the `fork' function. */
-+#undef HAVE_FORK
-+
- /* Define to 1 if you have the `getnameinfo' function. */
- #undef HAVE_GETNAMEINFO
- 
-@@ -274,6 +277,9 @@
- /* Define to 1 if you have the <unistd.h> header file. */
- #undef HAVE_UNISTD_H
- 
-+/* Define to 1 if you have the `vfork' function. */
-+#undef HAVE_VFORK
-+
- /* Define to 1 if you have the `vfprintf' function. */
- #undef HAVE_VFPRINTF
- 
---- tcpdump-4.0.0/configure
-+++ tcpdump-4.0.0/configure
-@@ -7976,7 +7976,7 @@ done
- 
- 
- 
--for ac_func in strftime
-+for ac_func in fork vfork strftime
- do
- as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
- { echo "$as_me:$LINENO: checking for $ac_func" >&5
-diff --git a/tcpdump.c b/tcpdump.c
-index c8da36b..abf3e69 100644
---- a/tcpdump.c
-+++ b/tcpdump.c
-@@ -1250,8 +1250,10 @@ main(int argc, char **argv)
- 	(void)setsignal(SIGPIPE, cleanup);
- 	(void)setsignal(SIGTERM, cleanup);
- 	(void)setsignal(SIGINT, cleanup);
--	(void)setsignal(SIGCHLD, child_cleanup);
- #endif /* WIN32 */
-+#if defined(HAVE_FORK) || defined(HAVE_VFORK)
-+	(void)setsignal(SIGCHLD, child_cleanup);
-+#endif
- 	/* Cooperate with nohup(1) */
- #ifndef WIN32	
- 	if ((oldhandler = setsignal(SIGHUP, cleanup)) != SIG_DFL)
-@@ -1464,13 +1466,13 @@ cleanup(int signo _U_)
-   On windows, we do not use a fork, so we do not care less about
-   waiting a child processes to die
-  */
--#ifndef WIN32
-+#if defined(HAVE_FORK) || defined(HAVE_VFORK)
- static RETSIGTYPE
- child_cleanup(int signo _U_)
- {
-   wait(NULL);
- }
--#endif /* WIN32 */
-+#endif /* HAVE_FORK || HAVE_VFORK */
- 
- static void
- info(register int verbose)
-@@ -1514,11 +1516,15 @@ info(register int verbose)
- 	infoprint = 0;
- }
- 
--#ifndef WIN32
-+#if defined(HAVE_FORK) || defined(HAVE_VFORK)
- static void
- compress_savefile(const char *filename)
- {
-+# ifdef HAVE_FORK
- 	if (fork())
-+# else
-+	if (vfork())
-+# endif
- 		return;
- 	/*
- 	 * Set to lowest priority so that this doesn't disturb the capture
-@@ -1534,15 +1540,20 @@ compress_savefile(const char *filename)
- 			zflag,
- 			filename,
- 			strerror(errno));
-+# ifdef HAVE_FORK
-+	exit(1);
-+# else
-+	_exit(1);
-+# endif
- }
--#else  /* WIN32 */
-+#else  /* HAVE_FORK || HAVE_VFORK */
- static void
- compress_savefile(const char *filename)
- {
- 	fprintf(stderr,
--		"compress_savefile failed. Functionality not implemented under windows\n");
-+		"compress_savefile failed. Functionality not implemented under your system\n");
- }
--#endif /* WIN32 */
-+#endif /* HAVE_FORK || HAVE_VFORK */
- 
- static void
- dump_packet_and_trunc(u_char *user, const struct pcap_pkthdr *h, const u_char *sp)
--- 
-1.7.3.1
diff --git a/package/tcpdump/tcpdump.mk b/package/tcpdump/tcpdump.mk
index 1534543..cf23df3 100644
--- a/package/tcpdump/tcpdump.mk
+++ b/package/tcpdump/tcpdump.mk
@@ -6,13 +6,13 @@
 # Copyright (C) 2001-2003 by Erik Andersen <andersen at codepoet.org>
 # Copyright (C) 2002 by Tim Riker <Tim at Rikers.org>
 
-TCPDUMP_VERSION:=4.1.1
-TCPDUMP_SITE:=http://www.tcpdump.org/release
-TCPDUMP_SOURCE:=tcpdump-$(TCPDUMP_VERSION).tar.gz
-TCPDUMP_CONF_ENV:=ac_cv_linux_vers=2
-TCPDUMP_CONF_OPT:=--without-crypto \
+TCPDUMP_VERSION = 4.2.1
+TCPDUMP_SITE = http://www.tcpdump.org/release
+TCPDUMP_SOURCE = tcpdump-$(TCPDUMP_VERSION).tar.gz
+TCPDUMP_CONF_ENV = ac_cv_linux_vers=2
+TCPDUMP_CONF_OPT = --without-crypto \
 		$(if $(BR2_PACKAGE_TCPDUMP_SMB),--enable-smb,--disable-smb)
-TCPDUMP_DEPENDENCIES:=zlib libpcap
+TCPDUMP_DEPENDENCIES = zlib libpcap
 
 # make install installs an unneeded extra copy of the tcpdump binary
 define TCPDUMP_REMOVE_DUPLICATED_BINARY
-- 
1.7.3.4



More information about the buildroot mailing list