Check existing path in mobike probing only if we still have a route

This commit is contained in:
Martin Willi
2009-11-26 10:30:59 +01:00
parent 4b55cf5d09
commit 387a6e6c32
2 changed files with 6 additions and 8 deletions
+2 -4
View File
@@ -233,6 +233,7 @@ static status_t retransmit(private_task_manager_t *this, u_int32_t message_id)
this->initiating.retransmitted, message_id);
}
packet = this->initiating.packet->clone(this->initiating.packet);
charon->sender->send(charon->sender, packet);
}
else
{ /* for routeability checks, we use a more aggressive behavior */
@@ -253,12 +254,9 @@ static status_t retransmit(private_task_manager_t *this, u_int32_t message_id)
DBG1(DBG_IKE, "path probing attempt %d",
this->initiating.retransmitted);
}
packet = this->initiating.packet->clone(this->initiating.packet);
mobike->transmit(mobike, packet);
mobike->transmit(mobike, this->initiating.packet);
}
charon->sender->send(charon->sender, packet);
this->initiating.retransmitted++;
job = (job_t*)retransmit_job_create(this->initiating.mid,
this->ike_sa->get_id(this->ike_sa));
+4 -4
View File
@@ -291,7 +291,10 @@ static void transmit(private_ike_mobike_t *this, packet_t *packet)
{
me->set_port(me, me->ip_equals(me, me_old) ?
me_old->get_port(me_old) : IKEV2_NATT_PORT);
packet->set_source(packet, me);
DBG1(DBG_IKE, "checking original path %#H - %#H", me, other_old);
copy = packet->clone(packet);
copy->set_source(copy, me);
charon->sender->send(charon->sender, copy);
}
iterator = this->ike_sa->create_additional_address_iterator(this->ike_sa);
@@ -320,9 +323,6 @@ static void transmit(private_ike_mobike_t *this, packet_t *packet)
}
}
iterator->destroy(iterator);
me = packet->get_source(packet);
other = packet->get_destination(packet);
DBG1(DBG_IKE, "checking path %#H - %#H", me, other);
}
/**