From e6047f470dbaf6f495530e7fec1c60f5084f2816 Mon Sep 17 00:00:00 2001 From: Michal Ruprich Date: Thu, 11 Feb 2021 14:51:43 +0100 Subject: [PATCH] New version 1.10.0 --- ...p-and-tcpslice-have-manpages-in-man8.patch | 19 +++--- ...ently-ctc-interfaces-on-s390-has-eth.patch | 2 +- 0004-invalid-ipv4.patch | 65 ------------------- libpcap.spec | 8 ++- 4 files changed, 16 insertions(+), 78 deletions(-) delete mode 100644 0004-invalid-ipv4.patch diff --git a/0001-man-tcpdump-and-tcpslice-have-manpages-in-man8.patch b/0001-man-tcpdump-and-tcpslice-have-manpages-in-man8.patch index 888bb9a..51c9aae 100644 --- a/0001-man-tcpdump-and-tcpslice-have-manpages-in-man8.patch +++ b/0001-man-tcpdump-and-tcpslice-have-manpages-in-man8.patch @@ -10,18 +10,19 @@ Both should be run only by root, hence manpages for them should be located in 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pcap.3pcap.in b/pcap.3pcap.in -index f5a7e0c..f220e68 100644 +index 492c227..46a2a4b 100644 --- a/pcap.3pcap.in +++ b/pcap.3pcap.in -@@ -882,7 +882,7 @@ use an - script or some other configuration script to check whether the libpcap +@@ -1025,8 +1025,8 @@ script or some other configuration script to check whether the libpcap 1.0 APIs are available and use them only if they are. .SH SEE ALSO --autoconf(1), tcpdump(1), tcpslice(1), pcap-filter(@MAN_MISC_INFO@), pfconfig(8), -+autoconf(1), tcpdump(8), tcpslice(8), pcap-filter(@MAN_MISC_INFO@), pfconfig(8), - usermod(@MAN_ADMIN_COMMANDS@) - .SH AUTHORS - The original authors of libpcap are: + .BR autoconf (1), +-.BR tcpdump (1), +-.BR tcpslice (1), ++.BR tcpdump (8), ++.BR tcpslice (8), + .BR pcap-filter (@MAN_MISC_INFO@), + .BR pfconfig (8), + .BR usermod (@MAN_ADMIN_COMMANDS@) -- 1.8.3.1 - diff --git a/0003-pcap-linux-apparently-ctc-interfaces-on-s390-has-eth.patch b/0003-pcap-linux-apparently-ctc-interfaces-on-s390-has-eth.patch index c2c9ca2..7f7d372 100644 --- a/0003-pcap-linux-apparently-ctc-interfaces-on-s390-has-eth.patch +++ b/0003-pcap-linux-apparently-ctc-interfaces-on-s390-has-eth.patch @@ -13,7 +13,7 @@ index 900ebbc..58292c3 100644 --- a/pcap-linux.c +++ b/pcap-linux.c @@ -3197,6 +3197,10 @@ activate_new(pcap_t *handle) - handle->linktype = DLT_LINUX_SLL; + } } + /* Hack to make things work on s390 ctc interfaces */ diff --git a/0004-invalid-ipv4.patch b/0004-invalid-ipv4.patch deleted file mode 100644 index d944d92..0000000 --- a/0004-invalid-ipv4.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 907070918d5e81a515315b395f334e52589fe0fb Mon Sep 17 00:00:00 2001 -From: Guy Harris -Date: Wed, 18 Dec 2019 15:06:53 -0800 -Subject: [PATCH] Check for invalid IPv4 addresses. - -This should fix GitHub issue #893. ---- - gencode.c | 9 ++++++++- - nametoaddr.c | 9 ++++++++- - 2 files changed, 16 insertions(+), 2 deletions(-) - -diff --git a/gencode.c b/gencode.c -index bdc35e646..040a55315 100644 ---- a/gencode.c -+++ b/gencode.c -@@ -6947,11 +6947,15 @@ gen_mcode(compiler_state_t *cstate, const char *s1, const char *s2, - return (NULL); - - nlen = __pcap_atoin(s1, &n); -+ if (nlen < 0) -+ bpf_error(cstate, "invalid IPv4 address '%s'", s1); - /* Promote short ipaddr */ - n <<= 32 - nlen; - - if (s2 != NULL) { - mlen = __pcap_atoin(s2, &m); -+ if (mlen < 0) -+ bpf_error(cstate, "invalid IPv4 address '%s'", s2); - /* Promote short ipaddr */ - m <<= 32 - mlen; - if ((n & ~m) != 0) -@@ -7009,8 +7013,11 @@ gen_ncode(compiler_state_t *cstate, const char *s, bpf_u_int32 v, struct qual q) - vlen = __pcap_atodn(s, &v); - if (vlen == 0) - bpf_error(cstate, "malformed decnet address '%s'", s); -- } else -+ } else { - vlen = __pcap_atoin(s, &v); -+ if (vlen < 0) -+ bpf_error(cstate, "invalid IPv4 address '%s'", s); -+ } - - switch (q.addr) { - -diff --git a/nametoaddr.c b/nametoaddr.c -index 53070a285..13bf4c683 100644 ---- a/nametoaddr.c -+++ b/nametoaddr.c -@@ -674,8 +674,15 @@ __pcap_atoin(const char *s, bpf_u_int32 *addr) - len = 0; - for (;;) { - n = 0; -- while (*s && *s != '.') -+ while (*s && *s != '.') { -+ if (n > 25) { -+ /* The result will be > 255 */ -+ return -1; -+ } - n = n * 10 + *s++ - '0'; -+ } -+ if (n > 255) -+ return -1; - *addr <<= 8; - *addr |= n & 0xff; - len += 8; diff --git a/libpcap.spec b/libpcap.spec index 0eb6247..43e3aec 100644 --- a/libpcap.spec +++ b/libpcap.spec @@ -1,7 +1,7 @@ Name: libpcap Epoch: 14 -Version: 1.9.1 -Release: 7%{?dist} +Version: 1.10.0 +Release: 1%{?dist} Summary: A system-independent interface for user-level packet capture License: BSD with advertising URL: https://www.tcpdump.org/ @@ -23,7 +23,6 @@ Source: https://www.tcpdump.org/release/%{name}-%{version}.tar.gz Patch0001: 0001-man-tcpdump-and-tcpslice-have-manpages-in-man8.patch Patch0002: 0002-pcap-config-mitigate-multilib-conflict.patch Patch0003: 0003-pcap-linux-apparently-ctc-interfaces-on-s390-has-eth.patch -Patch0004: 0004-invalid-ipv4.patch %description Libpcap provides a portable framework for low-level network @@ -93,6 +92,9 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libpcap.a %{_mandir}/man5/pcap*.5* %changelog +* Thu Feb 11 2021 Michal Ruprich - 14:1.10.0-1 +- New version 1.10.0 + * Tue Jan 26 2021 Fedora Release Engineering - 14:1.9.1-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild