The addresses observed by the client behind the NAT are exactly the same if
the NAT router gets restarted.
Fixes: 2b255f01afbc ("ike-mobike: Use ike_sa_t::update_hosts() to trigger events")
}
else if (message->get_exchange_type(message) == INFORMATIONAL)
{
+ bool force = FALSE;
+
if (is_newer_update_queued(this))
{
return SUCCESS;
}
else if (this->natd->has_mapping_changed(this->natd))
{ /* force a check/update if mappings have changed during a DPD */
+ force = TRUE;
this->check = TRUE;
DBG1(DBG_IKE, "detected changes in NAT mappings, "
"initiating MOBIKE update");
{
other_new = other;
}
- if (me_new || other_new)
+ if (me_new || other_new || force)
{
this->ike_sa->update_hosts(this->ike_sa, me_new, other_new,
UPDATE_HOSTS_FORCE_ALL);