/* Handle interface addition */ void if_add_update (struct interface *ifp) { struct zebra_if *if_data; if_data = ifp->info; if (if_data->multicast == IF_ZEBRA_MULTICAST_ON) if_set_flags (ifp, IFF_MULTICAST); else if (if_data->multicast == IF_ZEBRA_MULTICAST_OFF) if_unset_flags (ifp, IFF_MULTICAST); zebra_interface_add_update (ifp); if (! CHECK_FLAG (ifp->status, ZEBRA_INTERFACE_ACTIVE)) { SET_FLAG (ifp->status, ZEBRA_INTERFACE_ACTIVE); if_addr_wakeup (ifp); if (IS_ZEBRA_DEBUG_KERNEL) zlog_debug ("interface %s index %d becomes active.", ifp->name, ifp->ifindex); } else { if (IS_ZEBRA_DEBUG_KERNEL) zlog_debug ("interface %s index %d is added.", ifp->name, ifp->ifindex); } }
/* Handle interface addition */ void if_add_update (struct interface *ifp) { struct zebra_if *if_data; if_data = ifp->info; assert(if_data); if (if_data->multicast == IF_ZEBRA_MULTICAST_ON) if_set_flags (ifp, IFF_MULTICAST); else if (if_data->multicast == IF_ZEBRA_MULTICAST_OFF) if_unset_flags (ifp, IFF_MULTICAST); zebra_interface_add_update (ifp); if (! CHECK_FLAG (ifp->status, ZEBRA_INTERFACE_ACTIVE)) { SET_FLAG (ifp->status, ZEBRA_INTERFACE_ACTIVE); if (if_data && if_data->shutdown == IF_ZEBRA_SHUTDOWN_ON) { if (IS_ZEBRA_DEBUG_KERNEL) zlog_debug ("interface %s vrf %u index %d is shutdown. " "Won't wake it up.", ifp->name, ifp->vrf_id, ifp->ifindex); return; } if_addr_wakeup (ifp); if (IS_ZEBRA_DEBUG_KERNEL) zlog_debug ("interface %s vrf %u index %d becomes active.", ifp->name, ifp->vrf_id, ifp->ifindex); } else { if (IS_ZEBRA_DEBUG_KERNEL) zlog_debug ("interface %s vrf %u index %d is added.", ifp->name, ifp->vrf_id, ifp->ifindex); } }
/* Handle interface addition */ void if_add_update (struct interface *ifp) { zebra_interface_add_update (ifp); if (! CHECK_FLAG (ifp->status, ZEBRA_INTERFACE_ACTIVE)) { SET_FLAG (ifp->status, ZEBRA_INTERFACE_ACTIVE); if_addr_wakeup (ifp); if (IS_ZEBRA_DEBUG_KERNEL) zlog_info ("interface %s index %d becomes active.", ifp->name, ifp->ifindex); } else { if (IS_ZEBRA_DEBUG_KERNEL) zlog_info ("interface %s index %d is added.", ifp->name, ifp->ifindex); } }