freebsd-dev/sys/net80211
Andre Oppermann 78ba57b9e1 Move ethernet VLAN tags from mtags to its own mbuf packet header field
m_pkthdr.ether_vlan.  The presence of the M_VLANTAG flag on the mbuf
signifies the presence and validity of its content.

Drivers that support hardware VLAN tag stripping fill in the received
VLAN tag (containing both vlan and priority information) into the
ether_vtag mbuf packet header field:

	m->m_pkthdr.ether_vtag = vlan_id;	/* ntohs()? */
	m->m_flags |= M_VLANTAG;

to mark the packet m with the specified VLAN tag.

On output the driver should check the mbuf for the M_VLANTAG flag to
see if a VLAN tag is present and valid:

	if (m->m_flags & M_VLANTAG) {
		... = m->m_pkthdr.ether_vtag;	/* htons()? */
		... pass tag to hardware ...
	}

VLAN tags are stored in host byte order.  Byte swapping may be necessary.

(Note: This driver conversion was mechanic and did not add or remove any
byte swapping in the drivers.)

Remove zone_mtag_vlan UMA zone and MTAG_VLAN definition.  No more tag
memory allocation have to be done.

Reviewed by:	thompsa, yar
Sponsored by:	TCP/IP Optimization Fundraise 2005
2006-09-17 13:33:30 +00:00
..
_ieee80211.h add some useful definitions that'll be used soon 2005-12-12 17:57:00 +00:00
ieee80211_acl.c
ieee80211_crypto_ccmp.c disallow module unload when there are dynamic references 2005-12-12 19:07:48 +00:00
ieee80211_crypto_none.c
ieee80211_crypto_tkip.c disallow module unload when there are dynamic references 2005-12-12 19:07:48 +00:00
ieee80211_crypto_wep.c disallow module unload when there are dynamic references 2005-12-12 19:07:48 +00:00
ieee80211_crypto.c
ieee80211_crypto.h
ieee80211_freebsd.c remove duplicate ifname in debug msg 2006-06-24 18:00:17 +00:00
ieee80211_freebsd.h add support for 802.11 packet injection via bpf 2006-07-26 03:15:16 +00:00
ieee80211_input.c Move ethernet VLAN tags from mtags to its own mbuf packet header field 2006-09-17 13:33:30 +00:00
ieee80211_ioctl.c More statistics fixups: 2006-08-10 06:04:00 +00:00
ieee80211_ioctl.h More statistics fixups: 2006-08-10 06:04:00 +00:00
ieee80211_node.c Move conditional preprocessing out from the IEEE80211_DPRINTF macro 2006-06-01 14:06:32 +00:00
ieee80211_node.h when scanning channels marked passive defer probe request until 2006-03-06 17:23:26 +00:00
ieee80211_output.c Move ethernet VLAN tags from mtags to its own mbuf packet header field 2006-09-17 13:33:30 +00:00
ieee80211_proto.c add support for 802.11 packet injection via bpf 2006-07-26 03:15:16 +00:00
ieee80211_proto.h add support for 802.11 packet injection via bpf 2006-07-26 03:15:16 +00:00
ieee80211_radiotap.h add flag to tag frames w/ a known bad FCS 2006-01-09 17:04:56 +00:00
ieee80211_var.h add support for 802.11 packet injection via bpf 2006-07-26 03:15:16 +00:00
ieee80211_xauth.c
ieee80211.c add support for 802.11 packet injection via bpf 2006-07-26 03:15:16 +00:00
ieee80211.h o move min/max beacon interval and dtim period to public location 2006-07-26 03:05:34 +00:00