aboutsummaryrefslogtreecommitdiffstats
path: root/net/xfrm/xfrm_user.c
diff options
context:
space:
mode:
authorJamal Hadi Salim <hadi@cyberus.ca>2006-12-03 01:22:25 -0500
committerDavid S. Miller <davem@davemloft.net>2006-12-03 01:22:25 -0500
commit2b5f6dcce5bf94b9b119e9ed8d537098ec61c3d2 (patch)
tree930dd667fff96a11b7585e14acc594a9c9a632a4 /net/xfrm/xfrm_user.c
parent02dba025b0bc881432cf325bfb124fae523087d5 (diff)
[XFRM]: Fix aevent structuring to be more complete.
aevents can not uniquely identify an SA. We break the ABI with this patch, but consensus is that since it is not yet utilized by any (known) application then it is fine (better do it now than later). Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/xfrm/xfrm_user.c')
-rw-r--r--net/xfrm/xfrm_user.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/net/xfrm/xfrm_user.c b/net/xfrm/xfrm_user.c
index 055b72fb37bc..6f97665983d2 100644
--- a/net/xfrm/xfrm_user.c
+++ b/net/xfrm/xfrm_user.c
@@ -1281,10 +1281,12 @@ static int build_aevent(struct sk_buff *skb, struct xfrm_state *x, struct km_eve
1281 id = NLMSG_DATA(nlh); 1281 id = NLMSG_DATA(nlh);
1282 nlh->nlmsg_flags = 0; 1282 nlh->nlmsg_flags = 0;
1283 1283
1284 id->sa_id.daddr = x->id.daddr; 1284 memcpy(&id->sa_id.daddr, &x->id.daddr,sizeof(x->id.daddr));
1285 id->sa_id.spi = x->id.spi; 1285 id->sa_id.spi = x->id.spi;
1286 id->sa_id.family = x->props.family; 1286 id->sa_id.family = x->props.family;
1287 id->sa_id.proto = x->id.proto; 1287 id->sa_id.proto = x->id.proto;
1288 memcpy(&id->saddr, &x->props.saddr,sizeof(x->props.saddr));
1289 id->reqid = x->props.reqid;
1288 id->flags = c->data.aevent; 1290 id->flags = c->data.aevent;
1289 1291
1290 RTA_PUT(skb, XFRMA_REPLAY_VAL, sizeof(x->replay), &x->replay); 1292 RTA_PUT(skb, XFRMA_REPLAY_VAL, sizeof(x->replay), &x->replay);