git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git]
/
net
/
ipv4
/
netfilter
/
ipt_esp.c
diff --git
a/net/ipv4/netfilter/ipt_esp.c
b/net/ipv4/netfilter/ipt_esp.c
index
e1d0dd3
..
9de191a
100644
(file)
--- a/
net/ipv4/netfilter/ipt_esp.c
+++ b/
net/ipv4/netfilter/ipt_esp.c
@@
-42,6
+42,7
@@
match(const struct sk_buff *skb,
const struct net_device *out,
const void *matchinfo,
int offset,
const struct net_device *out,
const void *matchinfo,
int offset,
+ unsigned int protoff,
int *hotdrop)
{
struct ip_esp_hdr _esp, *eh;
int *hotdrop)
{
struct ip_esp_hdr _esp, *eh;
@@
-51,7
+52,7
@@
match(const struct sk_buff *skb,
if (offset)
return 0;
if (offset)
return 0;
- eh = skb_header_pointer(skb,
skb->nh.iph->ihl * 4
,
+ eh = skb_header_pointer(skb,
protoff
,
sizeof(_esp), &_esp);
if (eh == NULL) {
/* We've been asked to examine this packet, and we
sizeof(_esp), &_esp);
if (eh == NULL) {
/* We've been asked to examine this packet, and we
@@
-70,12
+71,13
@@
match(const struct sk_buff *skb,
/* Called when user tries to insert an entry of this type. */
static int
checkentry(const char *tablename,
/* Called when user tries to insert an entry of this type. */
static int
checkentry(const char *tablename,
- const
struct ipt_ip *ip
,
+ const
void *ip_void
,
void *matchinfo,
unsigned int matchinfosize,
unsigned int hook_mask)
{
const struct ipt_esp *espinfo = matchinfo;
void *matchinfo,
unsigned int matchinfosize,
unsigned int hook_mask)
{
const struct ipt_esp *espinfo = matchinfo;
+ const struct ipt_ip *ip = ip_void;
/* Must specify proto == ESP, and no unknown invflags */
if (ip->proto != IPPROTO_ESP || (ip->invflags & IPT_INV_PROTO)) {
/* Must specify proto == ESP, and no unknown invflags */
if (ip->proto != IPPROTO_ESP || (ip->invflags & IPT_INV_PROTO)) {