Committer: Tim Just <tim.just@xxxxxxxxxxxxxx> Date: 27/03/2010 at 15:56:17 Revision: 3733 Revision-id: tim.just@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Branch nick: tiny Log: Enabled immediate update triggering on address change. Therefore the variable 'address_change_time_counter' is used by the core and the UPDATE module. Modified: M hipd/hipd.c M hipd/netdev.c M modules/update/hipd/update.c === modified file 'hipd/hipd.c' --- hipd/hipd.c 2010-03-25 15:24:20 +0000 +++ hipd/hipd.c 2010-03-27 13:54:20 +0000 @@ -114,7 +114,7 @@ int hip_shotgun_status = HIP_MSG_SHOTGUN_OFF; int hip_trigger_update_on_heart_beat_failure = 1; -int hip_wait_addr_changes_to_stabilize = 1; +int hip_wait_addr_changes_to_stabilize = 0; int hip_use_opptcp = 0; // false === modified file 'hipd/netdev.c' --- hipd/netdev.c 2010-03-26 15:59:15 +0000 +++ hipd/netdev.c 2010-03-27 13:54:20 +0000 @@ -1267,12 +1267,7 @@ if (hip_wait_addr_changes_to_stabilize) { address_change_time_counter = HIP_ADDRESS_CHANGE_WAIT_INTERVAL; } else { - /** - * @todo Re-enable UPDATE triggering from here and remove dependency - * between netdev.c and UPDATE. - * - * See trac Ticket#11 for details. - */ + address_change_time_counter = 1; } if (err) { === modified file 'modules/update/hipd/update.c' --- modules/update/hipd/update.c 2010-03-27 13:39:18 +0000 +++ modules/update/hipd/update.c 2010-03-27 13:54:20 +0000 @@ -767,22 +767,19 @@ { int err = 0; - if (hip_wait_addr_changes_to_stabilize && - address_change_time_counter != -1) { - if (address_change_time_counter == 0) { - address_change_time_counter = -1; - - HIP_DEBUG("Triggering UPDATE\n"); - err = hip_send_locators_to_all_peers(); - - if (err) { - HIP_ERROR("Error sending UPDATE\n"); - } - } else { - HIP_DEBUG("Delay mobility triggering (count %d)\n", - address_change_time_counter - 1); - address_change_time_counter--; + if (address_change_time_counter == 0) { + address_change_time_counter = -1; + + HIP_DEBUG("Triggering UPDATE\n"); + err = hip_send_locators_to_all_peers(); + + if (err) { + HIP_ERROR("Error sending UPDATE\n"); } + } else if (address_change_time_counter > 0) { + HIP_DEBUG("Delay mobility triggering (count %d)\n", + address_change_time_counter - 1); + address_change_time_counter--; } return err;