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
/
xfrm4_policy.c
diff --git
a/net/ipv4/xfrm4_policy.c
b/net/ipv4/xfrm4_policy.c
index
8604c74
..
0955360
100644
(file)
--- a/
net/ipv4/xfrm4_policy.c
+++ b/
net/ipv4/xfrm4_policy.c
@@
-221,7
+221,7
@@
_decode_session4(struct sk_buff *skb, struct flowi *fl)
if (pskb_may_pull(skb, xprth + 4 - skb->data)) {
u16 *ipcomp_hdr = (u16 *)xprth;
if (pskb_may_pull(skb, xprth + 4 - skb->data)) {
u16 *ipcomp_hdr = (u16 *)xprth;
- fl->fl_ipsec_spi =
hton
l(ntohs(ipcomp_hdr[1]));
+ fl->fl_ipsec_spi =
ntoh
l(ntohs(ipcomp_hdr[1]));
}
break;
default:
}
break;
default:
@@
-257,6
+257,8
@@
static void xfrm4_dst_destroy(struct dst_entry *dst)
if (likely(xdst->u.rt.idev))
in_dev_put(xdst->u.rt.idev);
if (likely(xdst->u.rt.idev))
in_dev_put(xdst->u.rt.idev);
+ if (likely(xdst->u.rt.peer))
+ inet_putpeer(xdst->u.rt.peer);
xfrm_dst_destroy(xdst);
}
xfrm_dst_destroy(xdst);
}