mirror of
https://github.com/strongswan/strongswan.git
synced 2025-10-07 00:01:49 -04:00
Fix MOBIKE address update if responder address changed.
Use the source address of the current MOBIKE message as peer address instead of assuming the address cached on the IKE_SA is still valid.
This commit is contained in:
parent
a46fe56858
commit
53915f14ae
@ -138,7 +138,7 @@ static void process_payloads(private_ike_mobike_t *this, message_t *message)
|
|||||||
this->ike_sa->clear_peer_addresses(this->ike_sa);
|
this->ike_sa->clear_peer_addresses(this->ike_sa);
|
||||||
first = FALSE;
|
first = FALSE;
|
||||||
/* add the peer's current address to the list */
|
/* add the peer's current address to the list */
|
||||||
host = this->ike_sa->get_other_host(this->ike_sa);
|
host = message->get_source(message);
|
||||||
this->ike_sa->add_peer_address(this->ike_sa,
|
this->ike_sa->add_peer_address(this->ike_sa,
|
||||||
host->clone(host));
|
host->clone(host));
|
||||||
}
|
}
|
||||||
@ -158,7 +158,7 @@ static void process_payloads(private_ike_mobike_t *this, message_t *message)
|
|||||||
{
|
{
|
||||||
this->ike_sa->clear_peer_addresses(this->ike_sa);
|
this->ike_sa->clear_peer_addresses(this->ike_sa);
|
||||||
/* add the peer's current address to the list */
|
/* add the peer's current address to the list */
|
||||||
host = this->ike_sa->get_other_host(this->ike_sa);
|
host = message->get_source(message);
|
||||||
this->ike_sa->add_peer_address(this->ike_sa, host->clone(host));
|
this->ike_sa->add_peer_address(this->ike_sa, host->clone(host));
|
||||||
this->addresses_updated = TRUE;
|
this->addresses_updated = TRUE;
|
||||||
break;
|
break;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user