From 904e3609366f1e3446ce08d9967ef63ddf4f5bf0 Mon Sep 17 00:00:00 2001 From: Mark Huang Date: Mon, 10 Jan 2005 19:31:58 +0000 Subject: [PATCH] - backport 2.6.9 addition of skb_header_pointer() macro to support pptp-conntrack-nat patch --- include/linux/skbuff.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h index 111bb7367..5156e432d 100644 --- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h @@ -1106,6 +1106,20 @@ extern void skb_copy_and_csum_dev(const struct sk_buff *skb, u8 *to); extern void skb_split(struct sk_buff *skb, struct sk_buff *skb1, const u32 len); +static inline void *skb_header_pointer(const struct sk_buff *skb, int offset, + int len, void *buffer) +{ + int hlen = skb_headlen(skb); + + if (offset + len <= hlen) + return skb->data + offset; + + if (skb_copy_bits(skb, offset, buffer, len) < 0) + return NULL; + + return buffer; +} + extern void skb_init(void); extern void skb_add_mtu(int mtu); -- 2.47.0