summaryrefslogtreecommitdiff
path: root/src/libcharon/sa/child_sa.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libcharon/sa/child_sa.c')
-rw-r--r--src/libcharon/sa/child_sa.c23
1 files changed, 4 insertions, 19 deletions
diff --git a/src/libcharon/sa/child_sa.c b/src/libcharon/sa/child_sa.c
index a29e692fd..dc42ba787 100644
--- a/src/libcharon/sa/child_sa.c
+++ b/src/libcharon/sa/child_sa.c
@@ -559,21 +559,15 @@ METHOD(child_sa_t, alloc_cpi, u_int16_t,
METHOD(child_sa_t, install, status_t,
private_child_sa_t *this, chunk_t encr, chunk_t integ, u_int32_t spi,
-<<<<<<< HEAD
- u_int16_t cpi, bool inbound, linked_list_t *my_ts,
-=======
u_int16_t cpi, bool inbound, bool tfcv3, linked_list_t *my_ts,
->>>>>>> upstream/4.5.1
linked_list_t *other_ts)
{
u_int16_t enc_alg = ENCR_UNDEFINED, int_alg = AUTH_UNDEFINED, size;
+ u_int16_t esn = NO_EXT_SEQ_NUMBERS;
traffic_selector_t *src_ts = NULL, *dst_ts = NULL;
time_t now;
lifetime_cfg_t *lifetime;
-<<<<<<< HEAD
-=======
u_int32_t tfc = 0;
->>>>>>> upstream/4.5.1
host_t *src, *dst;
status_t status;
bool update = FALSE;
@@ -598,14 +592,11 @@ METHOD(child_sa_t, install, status_t,
dst = this->other_addr;
this->other_spi = spi;
this->other_cpi = cpi;
-<<<<<<< HEAD
-=======
if (tfcv3)
{
tfc = this->config->get_tfc(this->config);
}
->>>>>>> upstream/4.5.1
}
DBG2(DBG_CHD, "adding %s %N SA", inbound ? "inbound" : "outbound",
@@ -618,6 +609,8 @@ METHOD(child_sa_t, install, status_t,
&enc_alg, &size);
this->proposal->get_algorithm(this->proposal, INTEGRITY_ALGORITHM,
&int_alg, &size);
+ this->proposal->get_algorithm(this->proposal, EXTENDED_SEQUENCE_NUMBERS,
+ &esn, NULL);
lifetime = this->config->get_lifetime(this->config);
@@ -636,11 +629,7 @@ METHOD(child_sa_t, install, status_t,
lifetime->time.rekey = 0;
}
-<<<<<<< HEAD
- if (this->mode == MODE_BEET)
-=======
if (this->mode == MODE_BEET || this->mode == MODE_TRANSPORT)
->>>>>>> upstream/4.5.1
{
/* BEET requires the bound address from the traffic selectors.
* TODO: We add just the first traffic selector for now, as the
@@ -659,13 +648,9 @@ METHOD(child_sa_t, install, status_t,
status = hydra->kernel_interface->add_sa(hydra->kernel_interface,
src, dst, spi, proto_ike2ip(this->protocol), this->reqid,
-<<<<<<< HEAD
- inbound ? this->mark_in : this->mark_out,
-=======
inbound ? this->mark_in : this->mark_out, tfc,
->>>>>>> upstream/4.5.1
lifetime, enc_alg, encr, int_alg, integ, this->mode,
- this->ipcomp, cpi, this->encap, update, src_ts, dst_ts);
+ this->ipcomp, cpi, this->encap, esn, update, src_ts, dst_ts);
free(lifetime);