summaryrefslogtreecommitdiffstats
path: root/net/ipv6
diff options
context:
space:
mode:
authorMasahide NAKAMURA <nakam@linux-ipv6.org>2006-08-23 18:20:16 -0700
committerDavid S. Miller <davem@sunset.davemloft.net>2006-09-22 15:06:43 -0700
commit9afaca057980c02771f4657c455cc7592fcd7373 (patch)
tree3ef6e1b304248fad27c8063b7fbffdba966a0671 /net/ipv6
parent060f02a3bdd4d9ba8aa3c48e9b470672b1f3a585 (diff)
downloadkernel-crypto-9afaca057980c02771f4657c455cc7592fcd7373.tar.gz
kernel-crypto-9afaca057980c02771f4657c455cc7592fcd7373.tar.xz
kernel-crypto-9afaca057980c02771f4657c455cc7592fcd7373.zip
[XFRM] IPV6: Update outbound state timestamp for each sending.
With this patch transformation state is updated last used time for each sending. Xtime is used for it like other state lifetime expiration. Mobile IPv6 enabled nodes will want to know traffic status of each binding (e.g. judgement to request binding refresh by correspondent node, or to keep home/care-of nonce alive by mobile node). The last used timestamp is an important hint about it. Based on MIPL2 kernel patch. This patch was also written by: Henrik Petander <petander@tcs.hut.fi> Signed-off-by: Masahide NAKAMURA <nakam@linux-ipv6.org> Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6')
-rw-r--r--net/ipv6/xfrm6_output.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/ipv6/xfrm6_output.c b/net/ipv6/xfrm6_output.c
index b4628fbf8ff..db58104e710 100644
--- a/net/ipv6/xfrm6_output.c
+++ b/net/ipv6/xfrm6_output.c
@@ -75,6 +75,8 @@ static int xfrm6_output_one(struct sk_buff *skb)
x->curlft.bytes += skb->len;
x->curlft.packets++;
+ if (x->props.mode == XFRM_MODE_ROUTEOPTIMIZATION)
+ x->lastused = (u64)xtime.tv_sec;
spin_unlock_bh(&x->lock);