From 5ae7e3eaad3b15176a7f8d5076d4764e9280db96 Mon Sep 17 00:00:00 2001 From: Jeremy Laine Date: Sat, 17 Nov 2007 12:50:56 +0000 Subject: iptables: backport fix for "getsockopt failed strangely" (Closes: #3260) --- packages/iptables/files/getsockopt-failed.patch | 28 +++++++++++++++++++++++++ packages/iptables/iptables_1.3.8.bb | 3 ++- 2 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 packages/iptables/files/getsockopt-failed.patch (limited to 'packages/iptables') diff --git a/packages/iptables/files/getsockopt-failed.patch b/packages/iptables/files/getsockopt-failed.patch new file mode 100644 index 0000000000..bba9bdaafb --- /dev/null +++ b/packages/iptables/files/getsockopt-failed.patch @@ -0,0 +1,28 @@ +This patch fixes an issue where iptables throws the following error: +"getsockopt failed strangely". This patch is taken from the netfilter +svn (and it's included in iptable 1.4.0rc1): + +http://svn.netfilter.org/cgi-bin/viewcvs.cgi?rev=6890&view=rev + +--- iptables/iptables.c 2007/04/30 00:01:39 6815 ++++ iptables/iptables.c 2007/06/26 15:29:45 6890 +@@ -1158,7 +1158,7 @@ + max_rev = getsockopt(sockfd, IPPROTO_IP, opt, &rev, &s); + if (max_rev < 0) { + /* Definitely don't support this? */ +- if (errno == EPROTONOSUPPORT) { ++ if (errno == ENOENT || errno == EPROTONOSUPPORT) { + close(sockfd); + return 0; + } else if (errno == ENOPROTOOPT) { +--- iptables/ip6tables.c 2007/06/25 14:55:18 6889 ++++ iptables/ip6tables.c 2007/06/26 15:29:45 6890 +@@ -1130,7 +1130,7 @@ + max_rev = getsockopt(sockfd, IPPROTO_IPV6, opt, &rev, &s); + if (max_rev < 0) { + /* Definitely don't support this? */ +- if (errno == EPROTONOSUPPORT) { ++ if (errno == ENOENT || errno == EPROTONOSUPPORT) { + close(sockfd); + return 0; + } else if (errno == ENOPROTOOPT) { diff --git a/packages/iptables/iptables_1.3.8.bb b/packages/iptables/iptables_1.3.8.bb index eccc1c077a..3b63c478ba 100644 --- a/packages/iptables/iptables_1.3.8.bb +++ b/packages/iptables/iptables_1.3.8.bb @@ -3,8 +3,9 @@ HOMEPAGE = "http://www.netfilter.org/" SECTION = "console/utils" LICENSE = "GPL" RRECOMMENDS = "kernel-module-ip-tables kernel-module-iptable-filter" -PR = "r0" +PR = "r1" SRC_URI = "http://netfilter.org/projects/iptables/files/iptables-${PV}.tar.bz2 \ + file://getsockopt-failed.patch;patch=1 \ " S = "${WORKDIR}/iptables-${PV}" -- cgit v1.2.3