summaryrefslogtreecommitdiff
path: root/recipes/iptables/iptables-1.3.8/getsockopt-failed.patch
diff options
context:
space:
mode:
authorChris Larson <clarson@mvista.com>2010-01-06 16:32:40 -0700
committerChris Larson <clarson@mvista.com>2010-01-22 09:39:10 -0700
commitc6088e990601e67708bba32a45a92aecb7e43d5c (patch)
tree057bf665963064573785940fd9a90bad5ca81b22 /recipes/iptables/iptables-1.3.8/getsockopt-failed.patch
parent0174458a6214e8111f527c0030a868aecf876e05 (diff)
iptables: unbork the 1.3.8 build, merge iptables-utils into iptables.
In recent iptables versions, the -save and -restore files are just symlinks pointing to the main, merged binary, so the separate package is a bit unnecessary. Signed-off-by: Chris Larson <clarson@mvista.com>
Diffstat (limited to 'recipes/iptables/iptables-1.3.8/getsockopt-failed.patch')
-rw-r--r--recipes/iptables/iptables-1.3.8/getsockopt-failed.patch28
1 files changed, 28 insertions, 0 deletions
diff --git a/recipes/iptables/iptables-1.3.8/getsockopt-failed.patch b/recipes/iptables/iptables-1.3.8/getsockopt-failed.patch
new file mode 100644
index 0000000000..bba9bdaafb
--- /dev/null
+++ b/recipes/iptables/iptables-1.3.8/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) {