aboutsummaryrefslogtreecommitdiff
path: root/sys/netipsec/key.c
diff options
context:
space:
mode:
authorAndrey V. Elsukov <ae@FreeBSD.org>2015-05-20 11:59:53 +0000
committerAndrey V. Elsukov <ae@FreeBSD.org>2015-05-20 11:59:53 +0000
commitdc4ea824d4519f3df0b30e059a866231a68db2c1 (patch)
tree44615fafac25b9d39e6ba4358601c7a36c852aeb /sys/netipsec/key.c
parent2e4335f79b71918b8cbb6403fe4905640793f9bf (diff)
downloadsrc-dc4ea824d4519f3df0b30e059a866231a68db2c1.tar.gz
src-dc4ea824d4519f3df0b30e059a866231a68db2c1.zip
In the reply to SADB_X_SPDGET message use the same sequence number that
was in the request. Some IKE deamons expect it will the same. Linux and NetBSD also follow this behaviour. PR: 137309 MFC after: 2 weeks
Notes
Notes: svn path=/head/; revision=283146
Diffstat (limited to 'sys/netipsec/key.c')
-rw-r--r--sys/netipsec/key.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/netipsec/key.c b/sys/netipsec/key.c
index 6eae0f57f570..f642ff46d57f 100644
--- a/sys/netipsec/key.c
+++ b/sys/netipsec/key.c
@@ -2199,7 +2199,7 @@ key_spddelete2(struct socket *so, struct mbuf *m,
}
/*
- * SADB_X_GET processing
+ * SADB_X_SPDGET processing
* receive
* <base, policy(*)>
* from the user(?),
@@ -2237,7 +2237,8 @@ key_spdget(struct socket *so, struct mbuf *m, const struct sadb_msghdr *mhp)
return key_senderror(so, m, ENOENT);
}
- n = key_setdumpsp(sp, SADB_X_SPDGET, 0, mhp->msg->sadb_msg_pid);
+ n = key_setdumpsp(sp, SADB_X_SPDGET, mhp->msg->sadb_msg_seq,
+ mhp->msg->sadb_msg_pid);
KEY_FREESP(&sp);
if (n != NULL) {
m_freem(m);