summaryrefslogtreecommitdiff
path: root/sbin/isakmpd/exchange.c
diff options
context:
space:
mode:
Diffstat (limited to 'sbin/isakmpd/exchange.c')
-rw-r--r--sbin/isakmpd/exchange.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/sbin/isakmpd/exchange.c b/sbin/isakmpd/exchange.c
index ec497c51010..2f373bcf1a3 100644
--- a/sbin/isakmpd/exchange.c
+++ b/sbin/isakmpd/exchange.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: exchange.c,v 1.40 2001/01/27 12:03:32 niklas Exp $ */
+/* $OpenBSD: exchange.c,v 1.41 2001/02/24 03:59:54 angelos Exp $ */
/* $EOM: exchange.c,v 1.143 2000/12/04 00:02:25 angelos Exp $ */
/*
@@ -838,6 +838,7 @@ exchange_establish_p2 (struct sa *isakmp_sa, u_int8_t type, char *name,
int i;
char *tag, *str;
u_int32_t doi = ISAKMP_DOI_ISAKMP;
+ u_int32_t seq = 0;
if (isakmp_sa)
doi = isakmp_sa->doi->id;
@@ -853,6 +854,8 @@ exchange_establish_p2 (struct sa *isakmp_sa, u_int8_t type, char *name,
return;
}
+ seq = (u_int32_t) conf_get_num (name, "Acquire-ID", 0);
+
/* Figure out the DOI. */
str = conf_get_str (tag, "DOI");
if (!str || strcasecmp (str, "IPSEC") == 0)
@@ -906,6 +909,7 @@ exchange_establish_p2 (struct sa *isakmp_sa, u_int8_t type, char *name,
exchange->policy = name ? conf_get_str (name, "Configuration") : 0;
exchange->finalize = finalize;
exchange->finalize_arg = arg;
+ exchange->seq = seq;
memcpy (exchange->cookies, isakmp_sa->cookies, ISAKMP_HDR_COOKIES_LEN);
getrandom (exchange->message_id, ISAKMP_HDR_MESSAGE_ID_LEN);
exchange->flags |= EXCHANGE_FLAG_ENCRYPT;