diff options
author | Felix Fietkau <nbd@openwrt.org> | 2009-04-28 10:59:20 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2009-04-28 10:59:20 +0000 |
commit | 2fcc705fc5562b577cdded39e61ef725ee64d124 (patch) | |
tree | 21eec72d0942fd094f1579c64dcfd795185309eb /target/linux/generic-2.6/patches-2.6.29/240-packet_socket_type.patch | |
parent | c5c15d11d021db5ab589eb1a04632e577a719881 (diff) | |
download | master-187ad058-2fcc705fc5562b577cdded39e61ef725ee64d124.tar.gz master-187ad058-2fcc705fc5562b577cdded39e61ef725ee64d124.tar.bz2 master-187ad058-2fcc705fc5562b577cdded39e61ef725ee64d124.zip |
minor cleanup for packet socket type filter
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15467 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/generic-2.6/patches-2.6.29/240-packet_socket_type.patch')
-rw-r--r-- | target/linux/generic-2.6/patches-2.6.29/240-packet_socket_type.patch | 12 |
1 files changed, 6 insertions, 6 deletions
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 741966bc6c..710b7c06ab 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 @@ -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 & ~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; |