예제 #1
0
static void
update_link_status( broadcast_helper *broadcast_helper, size_t n_entries,
                              const topology_link_status *status ) {
  for ( size_t i = 0; i < n_entries; i++ ) {
    update_port_status_by_link( broadcast_helper->switches, &status[ i ] );
  }
}
예제 #2
0
static void
update_link_status( sliceable_switch *sliceable_switch, size_t n_entries,
                    const topology_link_status *status ) {
  for ( size_t i = 0; i < n_entries; i++ ) {
    update_topology( sliceable_switch->pathresolver, &status[ i ] );
    update_port_status_by_link( sliceable_switch->switches, &status[ i ] );
  }
}
예제 #3
0
static void
link_status_updated( void *user_data, const topology_link_status *status ) {
  assert( user_data != NULL );
  assert( status != NULL );

  broadcast_helper *broadcast_helper = user_data;
  update_port_status_by_link( broadcast_helper->switches, status );
}
static void
link_status_updated( void *user_data, const topology_link_status *status ) {
  assert( user_data != NULL );
  assert( status != NULL );

  routing_switch *routing_switch = user_data;
  update_topology( routing_switch->pathresolver, status );
  update_port_status_by_link( routing_switch->switches, status );
}
예제 #5
0
static void
link_status_updated( void *user_data, const topology_link_status *status ) {
  assert( user_data != NULL );
  assert( status != NULL );

  sliceable_switch *sliceable_switch = user_data;
  if ( sliceable_switch->last_stage_down == false ) {
    return;
  }

  update_topology( sliceable_switch->pathresolver, status );
  update_port_status_by_link( sliceable_switch->switches, status );
}