svn commit: r295795 - head/sys/net80211

Andriy Voskoboinyk avos at FreeBSD.org
Fri Feb 19 05:59:40 UTC 2016


Author: avos
Date: Fri Feb 19 05:59:38 2016
New Revision: 295795
URL: https://svnweb.freebsd.org/changeset/base/295795

Log:
  net80211: add few missing subtype names.
  
  - Add definitions for Timing Advertisement and Control Wrapper frames.
  - Refresh ieee80211_mgt_subtype_name and ieee80211_ctl_subtype_name
  arrays.
  - Count Timing Advertisement frames as discarded management frames in all
  modes.
  
  Approved by:	adrian (mentor)
  Differential Revision:	https://reviews.freebsd.org/D5331

Modified:
  head/sys/net80211/ieee80211.h
  head/sys/net80211/ieee80211_adhoc.c
  head/sys/net80211/ieee80211_hostap.c
  head/sys/net80211/ieee80211_mesh.c
  head/sys/net80211/ieee80211_proto.c
  head/sys/net80211/ieee80211_sta.c
  head/sys/net80211/ieee80211_wds.c

Modified: head/sys/net80211/ieee80211.h
==============================================================================
--- head/sys/net80211/ieee80211.h	Fri Feb 19 05:13:56 2016	(r295794)
+++ head/sys/net80211/ieee80211.h	Fri Feb 19 05:59:38 2016	(r295795)
@@ -129,6 +129,7 @@ struct ieee80211_qosframe_addr4 {
 #define	IEEE80211_FC0_SUBTYPE_REASSOC_RESP	0x30
 #define	IEEE80211_FC0_SUBTYPE_PROBE_REQ		0x40
 #define	IEEE80211_FC0_SUBTYPE_PROBE_RESP	0x50
+#define	IEEE80211_FC0_SUBTYPE_TIMING_ADV	0x60
 #define	IEEE80211_FC0_SUBTYPE_BEACON		0x80
 #define	IEEE80211_FC0_SUBTYPE_ATIM		0x90
 #define	IEEE80211_FC0_SUBTYPE_DISASSOC		0xa0
@@ -137,6 +138,7 @@ struct ieee80211_qosframe_addr4 {
 #define	IEEE80211_FC0_SUBTYPE_ACTION		0xd0
 #define	IEEE80211_FC0_SUBTYPE_ACTION_NOACK	0xe0
 /* for TYPE_CTL */
+#define	IEEE80211_FC0_SUBTYPE_CONTROL_WRAP	0x70
 #define	IEEE80211_FC0_SUBTYPE_BAR		0x80
 #define	IEEE80211_FC0_SUBTYPE_BA		0x90
 #define	IEEE80211_FC0_SUBTYPE_PS_POLL		0xa0

Modified: head/sys/net80211/ieee80211_adhoc.c
==============================================================================
--- head/sys/net80211/ieee80211_adhoc.c	Fri Feb 19 05:13:56 2016	(r295794)
+++ head/sys/net80211/ieee80211_adhoc.c	Fri Feb 19 05:59:38 2016	(r295795)
@@ -899,6 +899,7 @@ adhoc_recv_mgmt(struct ieee80211_node *n
 	case IEEE80211_FC0_SUBTYPE_ASSOC_RESP:
 	case IEEE80211_FC0_SUBTYPE_REASSOC_REQ:
 	case IEEE80211_FC0_SUBTYPE_REASSOC_RESP:
+	case IEEE80211_FC0_SUBTYPE_TIMING_ADV:
 	case IEEE80211_FC0_SUBTYPE_ATIM:
 	case IEEE80211_FC0_SUBTYPE_DISASSOC:
 	case IEEE80211_FC0_SUBTYPE_AUTH:
@@ -941,6 +942,7 @@ ahdemo_recv_mgmt(struct ieee80211_node *
 		case IEEE80211_FC0_SUBTYPE_REASSOC_RESP:
 		case IEEE80211_FC0_SUBTYPE_PROBE_REQ:
 		case IEEE80211_FC0_SUBTYPE_PROBE_RESP:
+		case IEEE80211_FC0_SUBTYPE_TIMING_ADV:
 		case IEEE80211_FC0_SUBTYPE_BEACON:
 		case IEEE80211_FC0_SUBTYPE_ATIM:
 		case IEEE80211_FC0_SUBTYPE_DISASSOC:

Modified: head/sys/net80211/ieee80211_hostap.c
==============================================================================
--- head/sys/net80211/ieee80211_hostap.c	Fri Feb 19 05:13:56 2016	(r295794)
+++ head/sys/net80211/ieee80211_hostap.c	Fri Feb 19 05:59:38 2016	(r295795)
@@ -2226,6 +2226,7 @@ hostap_recv_mgmt(struct ieee80211_node *
 
 	case IEEE80211_FC0_SUBTYPE_ASSOC_RESP:
 	case IEEE80211_FC0_SUBTYPE_REASSOC_RESP:
+	case IEEE80211_FC0_SUBTYPE_TIMING_ADV:
 	case IEEE80211_FC0_SUBTYPE_ATIM:
 		IEEE80211_DISCARD(vap, IEEE80211_MSG_INPUT,
 		    wh, NULL, "%s", "not handled");

Modified: head/sys/net80211/ieee80211_mesh.c
==============================================================================
--- head/sys/net80211/ieee80211_mesh.c	Fri Feb 19 05:13:56 2016	(r295794)
+++ head/sys/net80211/ieee80211_mesh.c	Fri Feb 19 05:59:38 2016	(r295795)
@@ -2093,6 +2093,7 @@ mesh_recv_mgmt(struct ieee80211_node *ni
 	case IEEE80211_FC0_SUBTYPE_ASSOC_RESP:
 	case IEEE80211_FC0_SUBTYPE_REASSOC_REQ:
 	case IEEE80211_FC0_SUBTYPE_REASSOC_RESP:
+	case IEEE80211_FC0_SUBTYPE_TIMING_ADV:
 	case IEEE80211_FC0_SUBTYPE_ATIM:
 	case IEEE80211_FC0_SUBTYPE_DISASSOC:
 	case IEEE80211_FC0_SUBTYPE_AUTH:

Modified: head/sys/net80211/ieee80211_proto.c
==============================================================================
--- head/sys/net80211/ieee80211_proto.c	Fri Feb 19 05:13:56 2016	(r295794)
+++ head/sys/net80211/ieee80211_proto.c	Fri Feb 19 05:59:38 2016	(r295795)
@@ -64,14 +64,14 @@ __FBSDID("$FreeBSD$");
 
 const char *ieee80211_mgt_subtype_name[] = {
 	"assoc_req",	"assoc_resp",	"reassoc_req",	"reassoc_resp",
-	"probe_req",	"probe_resp",	"reserved#6",	"reserved#7",
+	"probe_req",	"probe_resp",	"timing_adv",	"reserved#7",
 	"beacon",	"atim",		"disassoc",	"auth",
 	"deauth",	"action",	"action_noack",	"reserved#15"
 };
 const char *ieee80211_ctl_subtype_name[] = {
 	"reserved#0",	"reserved#1",	"reserved#2",	"reserved#3",
-	"reserved#3",	"reserved#5",	"reserved#6",	"reserved#7",
-	"reserved#8",	"reserved#9",	"ps_poll",	"rts",
+	"reserved#4",	"reserved#5",	"reserved#6",	"control_wrap",
+	"bar",		"ba",		"ps_poll",	"rts",
 	"cts",		"ack",		"cf_end",	"cf_end_ack"
 };
 const char *ieee80211_opmode_name[IEEE80211_OPMODE_MAX] = {

Modified: head/sys/net80211/ieee80211_sta.c
==============================================================================
--- head/sys/net80211/ieee80211_sta.c	Fri Feb 19 05:13:56 2016	(r295794)
+++ head/sys/net80211/ieee80211_sta.c	Fri Feb 19 05:59:38 2016	(r295795)
@@ -1851,6 +1851,7 @@ sta_recv_mgmt(struct ieee80211_node *ni,
 	case IEEE80211_FC0_SUBTYPE_ASSOC_REQ:
 	case IEEE80211_FC0_SUBTYPE_REASSOC_REQ:
 	case IEEE80211_FC0_SUBTYPE_PROBE_REQ:
+	case IEEE80211_FC0_SUBTYPE_TIMING_ADV:
 	case IEEE80211_FC0_SUBTYPE_ATIM:
 		IEEE80211_DISCARD(vap, IEEE80211_MSG_INPUT,
 		    wh, NULL, "%s", "not handled");

Modified: head/sys/net80211/ieee80211_wds.c
==============================================================================
--- head/sys/net80211/ieee80211_wds.c	Fri Feb 19 05:13:56 2016	(r295794)
+++ head/sys/net80211/ieee80211_wds.c	Fri Feb 19 05:59:38 2016	(r295795)
@@ -782,6 +782,7 @@ wds_recv_mgmt(struct ieee80211_node *ni,
 	case IEEE80211_FC0_SUBTYPE_REASSOC_RESP:
 	case IEEE80211_FC0_SUBTYPE_PROBE_REQ:
 	case IEEE80211_FC0_SUBTYPE_PROBE_RESP:
+	case IEEE80211_FC0_SUBTYPE_TIMING_ADV:
 	case IEEE80211_FC0_SUBTYPE_BEACON:
 	case IEEE80211_FC0_SUBTYPE_ATIM:
 	case IEEE80211_FC0_SUBTYPE_DISASSOC:


More information about the svn-src-head mailing list