diff options
author | wollman <wollman@FreeBSD.org> | 1997-01-08 13:20:25 +0000 |
---|---|---|
committer | wollman <wollman@FreeBSD.org> | 1997-01-08 13:20:25 +0000 |
commit | 18b2a70a7d49403de96eece39647adc7bede4c58 (patch) | |
tree | df1b27a28f9dceb3141666ddaff5ff4dead407a4 /sys/net/if_var.h | |
parent | bf70ac7d48b1d04e4034ae5559d632caba564706 (diff) | |
download | FreeBSD-src-18b2a70a7d49403de96eece39647adc7bede4c58.zip FreeBSD-src-18b2a70a7d49403de96eece39647adc7bede4c58.tar.gz |
Fix a few oversights in the new multicast membership interface.
Diffstat (limited to 'sys/net/if_var.h')
-rw-r--r-- | sys/net/if_var.h | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/sys/net/if_var.h b/sys/net/if_var.h index 98842df..75b5489 100644 --- a/sys/net/if_var.h +++ b/sys/net/if_var.h @@ -264,11 +264,12 @@ struct ifaddr { * address, not a count of pointers to this structure. */ struct ifmultiaddr { - LIST_ENTRY(ifmultiaddr) ifma_link; - struct sockaddr *ifma_addr; - struct sockaddr *ifma_lladdr; - struct ifnet *ifma_ifp; - u_int ifma_refcount; + LIST_ENTRY(ifmultiaddr) ifma_link; /* queue macro glue */ + struct sockaddr *ifma_addr; /* address this membership is for */ + struct sockaddr *ifma_lladdr; /* link-layer translation, if any */ + struct ifnet *ifma_ifp; /* back-pointer to interface */ + u_int ifma_refcount; /* reference count */ + void *ifma_protospec; /* protocol-specific state, if any */ }; #ifdef KERNEL @@ -290,7 +291,8 @@ int ether_output __P((struct ifnet *, struct mbuf *, struct sockaddr *, struct rtentry *)); int ether_ioctl __P((struct ifnet *, int, caddr_t)); -int if_addmulti __P((struct ifnet *, struct sockaddr *)); +int if_addmulti __P((struct ifnet *, struct sockaddr *, + struct ifmultiaddr **)); int if_allmulti __P((struct ifnet *, int)); void if_attach __P((struct ifnet *)); int if_delmulti __P((struct ifnet *, struct sockaddr *)); @@ -319,6 +321,9 @@ struct ifaddr *ifa_ifwithroute __P((int, struct sockaddr *, struct ifaddr *ifaof_ifpforaddr __P((struct sockaddr *, struct ifnet *)); void ifafree __P((struct ifaddr *)); +struct ifmultiaddr *ifmaof_ifpforaddr __P((struct sockaddr *, + struct ifnet *)); + int looutput __P((struct ifnet *, struct mbuf *, struct sockaddr *, struct rtentry *)); #endif /* KERNEL */ |