diff options
Diffstat (limited to 'src/libcharon/sa/child_sa.c')
-rw-r--r-- | src/libcharon/sa/child_sa.c | 23 |
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); |