summaryrefslogtreecommitdiffstats
path: root/target
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-04-28 19:16:24 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-04-28 19:16:24 +0000
commit92417eb67e67e7bc5dc3603ce9d1e3e49d913137 (patch)
treee599797de2aa11115258253cf4d9eecd0e39c9a7 /target
parentb645d7df22f212f2d518ab5b8c62a8d57e3cdb51 (diff)
fix a small bug in the socket type patch which broke dhcp
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15471 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target')
-rw-r--r--target/linux/generic-2.6/patches-2.6.28/240-packet_socket_type.patch2
-rw-r--r--target/linux/generic-2.6/patches-2.6.29/240-packet_socket_type.patch2
-rw-r--r--target/linux/generic-2.6/patches-2.6.30/240-packet_socket_type.patch12
3 files changed, 8 insertions, 8 deletions
diff --git a/target/linux/generic-2.6/patches-2.6.28/240-packet_socket_type.patch b/target/linux/generic-2.6/patches-2.6.28/240-packet_socket_type.patch
index 710b7c06a..720d3201f 100644
--- a/target/linux/generic-2.6/patches-2.6.28/240-packet_socket_type.patch
+++ b/target/linux/generic-2.6/patches-2.6.28/240-packet_socket_type.patch
@@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
spin_lock_init(&po->bind_lock);
mutex_init(&po->pg_vec_lock);
po->prot_hook.func = packet_rcv;
-+ po->pkt_type = PACKET_MASK_ANY & ~PACKET_LOOPBACK;
++ po->pkt_type = PACKET_MASK_ANY & ~(1 << PACKET_LOOPBACK);
if (sock->type == SOCK_PACKET)
po->prot_hook.func = packet_rcv_spkt;
diff --git a/target/linux/generic-2.6/patches-2.6.29/240-packet_socket_type.patch b/target/linux/generic-2.6/patches-2.6.29/240-packet_socket_type.patch
index 710b7c06a..720d3201f 100644
--- a/target/linux/generic-2.6/patches-2.6.29/240-packet_socket_type.patch
+++ b/target/linux/generic-2.6/patches-2.6.29/240-packet_socket_type.patch
@@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
spin_lock_init(&po->bind_lock);
mutex_init(&po->pg_vec_lock);
po->prot_hook.func = packet_rcv;
-+ po->pkt_type = PACKET_MASK_ANY & ~PACKET_LOOPBACK;
++ po->pkt_type = PACKET_MASK_ANY & ~(1 << PACKET_LOOPBACK);
if (sock->type == SOCK_PACKET)
po->prot_hook.func = packet_rcv_spkt;
diff --git a/target/linux/generic-2.6/patches-2.6.30/240-packet_socket_type.patch b/target/linux/generic-2.6/patches-2.6.30/240-packet_socket_type.patch
index b5af22597..d86fcf3bc 100644
--- a/target/linux/generic-2.6/patches-2.6.30/240-packet_socket_type.patch
+++ b/target/linux/generic-2.6/patches-2.6.30/240-packet_socket_type.patch
@@ -11,7 +11,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
/* These ones are invisible by user level */
#define PACKET_LOOPBACK 5 /* MC/BRD frame looped back */
#define PACKET_FASTROUTE 6 /* Fastrouted frame */
-+#define PACKET_ANY 0xffffffff
++#define PACKET_MASK_ANY 0xffffffff /* mask for packet type bits */
+
/* Packet socket options */
@@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
unsigned int tp_hdrlen;
unsigned int tp_reserve;
#endif
-+ int pkt_type;
++ unsigned int pkt_type;
};
struct packet_skb_cb {
@@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
spin_lock_init(&po->bind_lock);
mutex_init(&po->pg_vec_lock);
po->prot_hook.func = packet_rcv;
-+ po->pkt_type = PACKET_ANY & ~PACKET_LOOPBACK;
++ po->pkt_type = PACKET_MASK_ANY & ~(1 << PACKET_LOOPBACK);
if (sock->type == SOCK_PACKET)
po->prot_hook.func = packet_rcv_spkt;
@@ -105,7 +105,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
}
+ case PACKET_RECV_TYPE:
+ {
-+ int val;
++ unsigned int val;
+ if (optlen != sizeof(val))
+ return -EINVAL;
+ if (copy_from_user(&val, optval, sizeof(val)))
@@ -121,8 +121,8 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
data = &val;
break;
+ case PACKET_RECV_TYPE:
-+ if (len > sizeof(int))
-+ len = sizeof(int);
++ if (len > sizeof(unsigned int))
++ len = sizeof(unsigned int);
+ val = po->pkt_type;
+
+ data = &val;