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:
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to