diff options
Diffstat (limited to 'sys/net/if_vlan_var.h')
-rw-r--r-- | sys/net/if_vlan_var.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/sys/net/if_vlan_var.h b/sys/net/if_vlan_var.h index 83bb41b..7498cbf 100644 --- a/sys/net/if_vlan_var.h +++ b/sys/net/if_vlan_var.h @@ -26,13 +26,18 @@ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $Id: if_vlan_var.h,v 1.3 1999/03/15 00:33:02 wpaul Exp $ */ #ifndef _NET_IF_VLAN_VAR_H_ #define _NET_IF_VLAN_VAR_H_ 1 #ifdef KERNEL +struct vlan_mc_entry { + struct ether_addr mc_addr; + SLIST_ENTRY(vlan_mc_entry) mc_entries; +}; + struct ifvlan { struct arpcom ifv_ac; /* make this an interface */ struct ifnet *ifv_p; /* parent inteface of this vlan */ @@ -41,6 +46,7 @@ struct ifvlan { u_int16_t ifvm_proto; /* encapsulation ethertype */ u_int16_t ifvm_tag; /* tag to apply on packets leaving if */ } ifv_mib; + SLIST_HEAD(__vlan_mchead, vlan_mc_entry) vlan_mc_listhead; }; #define ifv_if ifv_ac.ac_if #define ifv_tag ifv_mib.ifvm_tag @@ -79,6 +85,8 @@ struct vlanreq { /* shared with if_ethersubr.c: */ extern u_int vlan_proto; extern int vlan_input(struct ether_header *eh, struct mbuf *m); +extern void vlan_input_tag(struct ether_header *eh, + struct mbuf *m, u_int16_t t); #endif #endif /* _NET_IF_VLAN_VAR_H_ */ |