diff options
author | thompsa <thompsa@FreeBSD.org> | 2007-05-07 00:18:56 +0000 |
---|---|---|
committer | thompsa <thompsa@FreeBSD.org> | 2007-05-07 00:18:56 +0000 |
commit | caab23fd294a310227a4c2f4912f639cdebc28e2 (patch) | |
tree | ce0d3495b9167705eac6cf537e571262085ec09e /sys/net/if_lagg.h | |
parent | 38031925b7d011576f9184b9a3788e787ae55aa1 (diff) | |
download | FreeBSD-src-caab23fd294a310227a4c2f4912f639cdebc28e2.zip FreeBSD-src-caab23fd294a310227a4c2f4912f639cdebc28e2.tar.gz |
Change from using if_delmulti() to if_delmulti_ifma() as it simplifies the code
and is safe to use if the ifp has disappeared.
Suggested by: bms
Diffstat (limited to 'sys/net/if_lagg.h')
-rw-r--r-- | sys/net/if_lagg.h | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/sys/net/if_lagg.h b/sys/net/if_lagg.h index a717d39..3c648f0 100644 --- a/sys/net/if_lagg.h +++ b/sys/net/if_lagg.h @@ -136,12 +136,8 @@ struct lagg_lb { }; struct lagg_mc { - union { - struct ether_multi *mcu_enm; - } mc_u; - struct sockaddr_storage mc_addr; - - SLIST_ENTRY(lagg_mc) mc_entries; + struct ifmultiaddr *mc_ifma; + SLIST_ENTRY(lagg_mc) mc_entries; }; struct lagg_softc { @@ -156,8 +152,6 @@ struct lagg_softc { SLIST_HEAD(__tplhd, lagg_port) sc_ports; /* list of interfaces */ SLIST_ENTRY(lagg_softc) sc_entries; - SLIST_HEAD(__mclhd, lagg_mc) sc_mc_head; /* multicast addresses */ - /* lagg protocol callbacks */ int (*sc_detach)(struct lagg_softc *); int (*sc_start)(struct lagg_softc *, struct mbuf *); @@ -183,6 +177,8 @@ struct lagg_port { void *lh_cookie; /* if state hook */ caddr_t lp_psc; /* protocol data */ + SLIST_HEAD(__mclhd, lagg_mc) lp_mc_head; /* multicast addresses */ + /* Redirected callbacks */ int (*lp_ioctl)(struct ifnet *, u_long, caddr_t); int (*lp_output)(struct ifnet *, struct mbuf *, struct sockaddr *, |