aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-x[-rw-r--r--]src/libcharon/sa/ikev1/tasks/xauth.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/libcharon/sa/ikev1/tasks/xauth.c b/src/libcharon/sa/ikev1/tasks/xauth.c
index f55299398..20d6d8a17 100644..100755
--- a/src/libcharon/sa/ikev1/tasks/xauth.c
+++ b/src/libcharon/sa/ikev1/tasks/xauth.c
@@ -65,6 +65,11 @@ struct private_xauth_t {
cp_payload_t *cp;
/**
+ * received identifier
+ */
+ u_int16_t identifier;
+
+ /**
* status of Xauth exchange
*/
xauth_status_t status;
@@ -197,6 +202,7 @@ METHOD(task_t, build_r_ack, status_t,
cp_payload_t *cp;
cp = cp_payload_create_type(CONFIGURATION_V1, CFG_ACK);
+ cp->set_identifier(cp, this->identifier);
cp->add_attribute(cp,
configuration_attribute_create_chunk(
CONFIGURATION_ATTRIBUTE_V1, XAUTH_STATUS, chunk_empty));
@@ -270,6 +276,7 @@ METHOD(task_t, process_r, status_t,
this->xauth->get_identity(this->xauth));
}
}
+ this->identifier = cp->get_identifier(cp);
this->public.task.build = _build_r_ack;
return NEED_MORE;
}