diff options
author | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2008-04-15 06:11:23 +0000 |
---|---|---|
committer | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2008-04-15 06:11:23 +0000 |
commit | a58eaf210a223672f67c03d2070fa2fefdb2595b (patch) | |
tree | afa05fc32fd52e099867c546d48d880948f8be5a /target/linux/generic-2.6/patches/999-backport_ip_hdr_and_friends.patch | |
parent | 3a26d2990b9a481e44f1ddd36dfc84536c2ab39f (diff) |
update iptables to 1.4.0 (2.6 kernels only), refresh kernel patches
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10843 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/generic-2.6/patches/999-backport_ip_hdr_and_friends.patch')
-rw-r--r-- | target/linux/generic-2.6/patches/999-backport_ip_hdr_and_friends.patch | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/target/linux/generic-2.6/patches/999-backport_ip_hdr_and_friends.patch b/target/linux/generic-2.6/patches/999-backport_ip_hdr_and_friends.patch new file mode 100644 index 000000000..bb8f4f334 --- /dev/null +++ b/target/linux/generic-2.6/patches/999-backport_ip_hdr_and_friends.patch @@ -0,0 +1,58 @@ +Index: linux-2.6.21.7/include/linux/ip.h +=================================================================== +--- linux-2.6.21.7.orig/include/linux/ip.h ++++ linux-2.6.21.7/include/linux/ip.h +@@ -104,6 +104,16 @@ struct iphdr { + /*The options start here. */ + }; + ++#ifdef __KERNEL__ ++#include <linux/skbuff.h> ++ ++static inline struct iphdr *ip_hdr(const struct sk_buff *skb) ++{ ++ return (struct iphdr *)skb_network_header(skb); ++} ++ ++#endif ++ + struct ip_auth_hdr { + __u8 nexthdr; + __u8 hdrlen; /* This one is measured in 32 bit units! */ +Index: linux-2.6.21.7/include/linux/skbuff.h +=================================================================== +--- linux-2.6.21.7.orig/include/linux/skbuff.h ++++ linux-2.6.21.7/include/linux/skbuff.h +@@ -966,6 +966,16 @@ static inline void skb_reserve(struct sk + skb->tail += len; + } + ++static inline unsigned char *skb_network_header(const struct sk_buff *skb) ++{ ++ return skb->nh.raw; ++} ++ ++static inline unsigned char *skb_tail_pointer(const struct sk_buff *skb) ++{ ++ return skb->tail; ++} ++ + /* + * CPUs often take a performance hit when accessing unaligned memory + * locations. The actual performance hit varies, it can be small if the +Index: linux-2.6.21.7/include/net/ip.h +=================================================================== +--- linux-2.6.21.7.orig/include/net/ip.h ++++ linux-2.6.21.7/include/net/ip.h +@@ -43,6 +43,11 @@ struct inet_skb_parm + #define IPSKB_REROUTED 16 + }; + ++static inline unsigned int ip_hdrlen(const struct sk_buff *skb) ++{ ++ return ip_hdr(skb)->ihl * 4; ++} ++ + struct ipcm_cookie + { + __be32 addr; |