summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Laine <jeremy.laine@m4x.org>2007-11-17 12:50:56 +0000
committerJeremy Laine <jeremy.laine@m4x.org>2007-11-17 12:50:56 +0000
commit5ae7e3eaad3b15176a7f8d5076d4764e9280db96 (patch)
treed1c741885e9f94584d41daa260972401846dbe2b
parent16ddc0d8855b835d7cf831e71b40efda56095058 (diff)
iptables: backport fix for "getsockopt failed strangely" (Closes: #3260)
-rw-r--r--packages/iptables/files/getsockopt-failed.patch28
-rw-r--r--packages/iptables/iptables_1.3.8.bb3
2 files changed, 30 insertions, 1 deletions
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}"