summaryrefslogtreecommitdiffstats
path: root/sys/netipsec/key.c
diff options
context:
space:
mode:
authorae <ae@FreeBSD.org>2015-06-03 02:50:58 +0000
committerae <ae@FreeBSD.org>2015-06-03 02:50:58 +0000
commit78931b5bd8d2c14e89ec9ef7932e7b4f10e3baf4 (patch)
treed31e2200a6f80a93306a55183f3abf46e52d5e9e /sys/netipsec/key.c
parent44bead40e54f48b541aa36e35eba7e34fb5bb4e1 (diff)
downloadFreeBSD-src-78931b5bd8d2c14e89ec9ef7932e7b4f10e3baf4.zip
FreeBSD-src-78931b5bd8d2c14e89ec9ef7932e7b4f10e3baf4.tar.gz
MFC r283146:
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
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 ba10fb4..b72a143 100644
--- a/sys/netipsec/key.c
+++ b/sys/netipsec/key.c
@@ -2226,7 +2226,7 @@ key_spddelete2(struct socket *so, struct mbuf *m,
}
/*
- * SADB_X_GET processing
+ * SADB_X_SPDGET processing
* receive
* <base, policy(*)>
* from the user(?),
@@ -2264,7 +2264,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);
OpenPOWER on IntegriCloud