bridge_softc
bstp_set_path_cost(struct bridge_softc *sc, struct bridge_iflist *bif,
bstp_ifupdstatus(struct bridge_softc *sc, struct bridge_iflist *bif)
struct bridge_softc *sc = arg;
static void bstp_initialize_port(struct bridge_softc *, struct bridge_iflist *);
static void bstp_ifupdstatus(struct bridge_softc *, struct bridge_iflist *);
static void bstp_enable_port(struct bridge_softc *, struct bridge_iflist *);
static void bstp_disable_port(struct bridge_softc *, struct bridge_iflist *);
static int bstp_root_bridge(struct bridge_softc *sc);
static int bstp_supersedes_port_info(struct bridge_softc *,
static int bstp_designated_port(struct bridge_softc *, struct bridge_iflist *);
static int bstp_designated_for_some_port(struct bridge_softc *);
static void bstp_transmit_config(struct bridge_softc *, struct bridge_iflist *);
static void bstp_transmit_tcn(struct bridge_softc *);
static void bstp_received_config_bpdu(struct bridge_softc *,
static void bstp_received_tcn_bpdu(struct bridge_softc *, struct bridge_iflist *,
static void bstp_record_config_information(struct bridge_softc *,
static void bstp_record_config_timeout_values(struct bridge_softc *,
static void bstp_config_bpdu_generation(struct bridge_softc *);
static void bstp_send_config_bpdu(struct bridge_softc *, struct bridge_iflist *,
static void bstp_configuration_update(struct bridge_softc *);
static void bstp_root_selection(struct bridge_softc *);
static void bstp_designated_port_selection(struct bridge_softc *);
static void bstp_become_designated_port(struct bridge_softc *,
static void bstp_port_state_selection(struct bridge_softc *);
static void bstp_make_forwarding(struct bridge_softc *, struct bridge_iflist *);
static void bstp_make_blocking(struct bridge_softc *, struct bridge_iflist *);
static void bstp_set_bridge_priority(struct bridge_softc *, uint64_t);
static void bstp_set_port_priority(struct bridge_softc *, struct bridge_iflist *,
static void bstp_set_path_cost(struct bridge_softc *, struct bridge_iflist *,
static void bstp_topology_change_detection(struct bridge_softc *);
static void bstp_topology_change_acknowledged(struct bridge_softc *);
static void bstp_acknowledge_topology_change(struct bridge_softc *,
static void bstp_hold_timer_expiry(struct bridge_softc *, struct bridge_iflist *);
static void bstp_message_age_timer_expiry(struct bridge_softc *,
static void bstp_forward_delay_timer_expiry(struct bridge_softc *,
static void bstp_topology_change_timer_expiry(struct bridge_softc *);
static void bstp_tcn_timer_expiry(struct bridge_softc *);
static void bstp_hello_timer_expiry(struct bridge_softc *);
bstp_transmit_config(struct bridge_softc *sc, struct bridge_iflist *bif)
bstp_send_config_bpdu(struct bridge_softc *sc, struct bridge_iflist *bif,
bstp_root_bridge(struct bridge_softc *sc)
bstp_supersedes_port_info(struct bridge_softc *sc, struct bridge_iflist *bif,
bstp_record_config_information(struct bridge_softc *sc,
bstp_record_config_timeout_values(struct bridge_softc *sc,
bstp_config_bpdu_generation(struct bridge_softc *sc)
bstp_designated_port(struct bridge_softc *sc, struct bridge_iflist *bif)
bstp_transmit_tcn(struct bridge_softc *sc)
bstp_configuration_update(struct bridge_softc *sc)
bstp_root_selection(struct bridge_softc *sc)
bstp_designated_port_selection(struct bridge_softc *sc)
bstp_become_designated_port(struct bridge_softc *sc, struct bridge_iflist *bif)
bstp_port_state_selection(struct bridge_softc *sc)
bstp_make_forwarding(struct bridge_softc *sc,
bstp_make_blocking(struct bridge_softc *sc, struct bridge_iflist *bif)
bstp_topology_change_detection(struct bridge_softc *sc)
bstp_topology_change_acknowledged(struct bridge_softc *sc)
bstp_acknowledge_topology_change(struct bridge_softc *sc,
bstp_input(struct bridge_softc *sc, struct bridge_iflist *bif, struct mbuf *m)
bstp_received_config_bpdu(struct bridge_softc *sc, struct bridge_iflist *bif,
bstp_received_tcn_bpdu(struct bridge_softc *sc, struct bridge_iflist *bif,
bstp_hello_timer_expiry(struct bridge_softc *sc)
bstp_message_age_timer_expiry(struct bridge_softc *sc,
bstp_forward_delay_timer_expiry(struct bridge_softc *sc,
bstp_designated_for_some_port(struct bridge_softc *sc)
bstp_tcn_timer_expiry(struct bridge_softc *sc)
bstp_topology_change_timer_expiry(struct bridge_softc *sc)
bstp_hold_timer_expiry(struct bridge_softc *sc, struct bridge_iflist *bif)
bstp_initialization(struct bridge_softc *sc)
bstp_stop(struct bridge_softc *sc)
bstp_initialize_port(struct bridge_softc *sc, struct bridge_iflist *bif)
bstp_enable_port(struct bridge_softc *sc, struct bridge_iflist *bif)
bstp_disable_port(struct bridge_softc *sc, struct bridge_iflist *bif)
bstp_set_bridge_priority(struct bridge_softc *sc, uint64_t new_bridge_id)
bstp_set_port_priority(struct bridge_softc *sc, struct bridge_iflist *bif,
struct bridge_softc;
struct bridge_softc
bridge_ioctl_scache(struct bridge_softc *sc, void *arg)
bridge_ioctl_gcache(struct bridge_softc *sc, void *arg)
bridge_ioctl_gifs(struct bridge_softc *sc, void *arg)
bridge_ioctl_rts(struct bridge_softc *sc, void *arg)
bridge_ioctl_saddr(struct bridge_softc *sc, void *arg)
bridge_ioctl_sto(struct bridge_softc *sc, void *arg)
bridge_ioctl_gto(struct bridge_softc *sc, void *arg)
bridge_ioctl_daddr(struct bridge_softc *sc, void *arg)
bridge_ioctl_flush(struct bridge_softc *sc, void *arg)
bridge_ioctl_gpri(struct bridge_softc *sc, void *arg)
bridge_ioctl_spri(struct bridge_softc *sc, void *arg)
bridge_ioctl_ght(struct bridge_softc *sc, void *arg)
bridge_ioctl_sht(struct bridge_softc *sc, void *arg)
bridge_ioctl_gfd(struct bridge_softc *sc, void *arg)
bridge_ioctl_sfd(struct bridge_softc *sc, void *arg)
bridge_ioctl_gma(struct bridge_softc *sc, void *arg)
bridge_ioctl_sma(struct bridge_softc *sc, void *arg)
bridge_ioctl_sifprio(struct bridge_softc *sc, void *arg)
bridge_ioctl_gfilt(struct bridge_softc *sc, void *arg)
bridge_ioctl_sfilt(struct bridge_softc *sc, void *arg)
bridge_ioctl_sifcost(struct bridge_softc *sc, void *arg)
struct bridge_softc *sc;
struct bridge_softc *sc = ifp->if_softc;
struct bridge_softc *sc = ifp->if_softc;
bridge_enqueue(struct bridge_softc *sc, struct ifnet *dst_ifp, struct mbuf *m,
struct bridge_softc *sc;
bridge_forward(struct bridge_softc *sc, struct mbuf *m)
struct bridge_softc *sc = ifp->if_bridge;
bridge_broadcast(struct bridge_softc *sc, struct ifnet *src_if,
bridge_rtalloc(struct bridge_softc *sc, const uint8_t *dst,
bridge_rtupdate(struct bridge_softc *sc, const uint8_t *dst,
bridge_rtlookup(struct bridge_softc *sc, const uint8_t *addr)
(struct bridge_softc *, struct bridge_rtnode *, bool *, void *);
bridge_rtlist_iterate_remove(struct bridge_softc *sc, bridge_iterate_cb_t func, void *arg)
bridge_rttrim0_cb(struct bridge_softc *sc, struct bridge_rtnode *brt,
bridge_rttrim0(struct bridge_softc *sc)
bridge_rttrim(struct bridge_softc *sc)
struct bridge_softc *sc = arg;
struct bridge_softc *sc = arg;
bridge_rtage_cb(struct bridge_softc *sc, struct bridge_rtnode *brt,
bridge_rtage(struct bridge_softc *sc)
static void bridge_forward(struct bridge_softc *, struct mbuf *);
bridge_rtflush_cb(struct bridge_softc *sc, struct bridge_rtnode *brt,
bridge_rtflush(struct bridge_softc *sc, int full)
bridge_rtdaddr(struct bridge_softc *sc, const uint8_t *addr)
static void bridge_broadcast(struct bridge_softc *, struct ifnet *, bool,
bridge_rtdelete(struct bridge_softc *sc, struct ifnet *ifp)
static int bridge_rtupdate(struct bridge_softc *, const uint8_t *,
bridge_rtable_init(struct bridge_softc *sc)
static struct ifnet *bridge_rtlookup(struct bridge_softc *, const uint8_t *);
static void bridge_rttrim(struct bridge_softc *);
bridge_rtable_fini(struct bridge_softc *sc)
static void bridge_rtage(struct bridge_softc *);
static void bridge_rtflush(struct bridge_softc *, int);
bridge_rthash(struct bridge_softc *sc, const uint8_t *addr)
static int bridge_rtdaddr(struct bridge_softc *, const uint8_t *);
static void bridge_rtdelete(struct bridge_softc *, struct ifnet *ifp);
bridge_rtnode_lookup(struct bridge_softc *sc, const uint8_t *addr)
static void bridge_rtable_init(struct bridge_softc *);
static void bridge_rtable_fini(struct bridge_softc *);
bridge_rtnode_insert(struct bridge_softc *sc, struct bridge_rtnode *brt)
static struct bridge_rtnode *bridge_rtnode_lookup(struct bridge_softc *,
bridge_rtnode_remove(struct bridge_softc *sc, struct bridge_rtnode *brt)
static int bridge_rtnode_insert(struct bridge_softc *,
static void bridge_rtnode_remove(struct bridge_softc *,
static struct bridge_iflist *bridge_lookup_member(struct bridge_softc *,
static struct bridge_iflist *bridge_lookup_member_if(struct bridge_softc *,
static void bridge_release_member(struct bridge_softc *, struct bridge_iflist *,
static void bridge_delete_member(struct bridge_softc *,
static void bridge_acquire_member(struct bridge_softc *sc,
static int bridge_ioctl_add(struct bridge_softc *, void *);
static int bridge_ioctl_del(struct bridge_softc *, void *);
static int bridge_ioctl_gifflags(struct bridge_softc *, void *);
static int bridge_ioctl_sifflags(struct bridge_softc *, void *);
static int bridge_ioctl_scache(struct bridge_softc *, void *);
static int bridge_ioctl_gcache(struct bridge_softc *, void *);
static int bridge_ioctl_gifs(struct bridge_softc *, void *);
static int bridge_ioctl_rts(struct bridge_softc *, void *);
static int bridge_ioctl_saddr(struct bridge_softc *, void *);
static int bridge_ioctl_sto(struct bridge_softc *, void *);
static int bridge_ioctl_gto(struct bridge_softc *, void *);
static int bridge_ioctl_daddr(struct bridge_softc *, void *);
static int bridge_ioctl_flush(struct bridge_softc *, void *);
static int bridge_ioctl_gpri(struct bridge_softc *, void *);
static int bridge_ioctl_spri(struct bridge_softc *, void *);
static int bridge_ioctl_ght(struct bridge_softc *, void *);
static int bridge_ioctl_sht(struct bridge_softc *, void *);
static int bridge_ioctl_gfd(struct bridge_softc *, void *);
static int bridge_ioctl_sfd(struct bridge_softc *, void *);
static int bridge_ioctl_gma(struct bridge_softc *, void *);
static int bridge_ioctl_sma(struct bridge_softc *, void *);
static int bridge_ioctl_sifprio(struct bridge_softc *, void *);
static int bridge_ioctl_sifcost(struct bridge_softc *, void *);
static int bridge_ioctl_gfilt(struct bridge_softc *, void *);
static int bridge_ioctl_sfilt(struct bridge_softc *, void *);
int (*bc_func)(struct bridge_softc *, void *);
struct bridge_softc *sc;
struct bridge_softc *sc = ifp->if_softc;
struct bridge_softc *sc = ifp->if_softc;
bridge_lookup_member(struct bridge_softc *sc, const char *name, struct psref *psref)
bridge_lookup_member_if(struct bridge_softc *sc, struct ifnet *member_ifp,
bridge_acquire_member(struct bridge_softc *sc, struct bridge_iflist *bif,
bridge_release_member(struct bridge_softc *sc, struct bridge_iflist *bif,
bridge_delete_member(struct bridge_softc *sc, struct bridge_iflist *bif)
bridge_calc_csum_flags(struct bridge_softc *sc)
struct bridge_softc *sc = xsc;
bridge_ioctl_add(struct bridge_softc *sc, void *arg)
bridge_ioctl_del(struct bridge_softc *sc, void *arg)
bridge_ioctl_gifflags(struct bridge_softc *sc, void *arg)
bridge_ioctl_sifflags(struct bridge_softc *sc, void *arg)
LIST_ENTRY(bridge_softc) sc_list;
void bstp_initialization(struct bridge_softc *);
void bstp_stop(struct bridge_softc *);
void bstp_input(struct bridge_softc *, struct bridge_iflist *, struct mbuf *);
void bridge_enqueue(struct bridge_softc *, struct ifnet *, struct mbuf *,
void bridge_calc_csum_flags(struct bridge_softc *);