freebsd-dev/sys/net80211
Adrian Chadd 9b40530293 [net80211] handle action frames in adhoc mode from the node that created the BSS.
We don't have a separate bss node; instead we dup the first node we saw
and turn that into the BSS node.  This means that action frames from
that node would be rejected.

So, check that the node is the bss node /and/ the MAC doesn't match ni_macaddr.
That's the "right" way for now to verify it's an unknown node.

This fixes handling action frames in adhoc mode, which includes negotiating
11n aggregation via ADDBA/DELBA.

This by itself isn't enough to correctly create 11n adhoc networks; but
it is required for aggregation to be negotiated.

Tested:

* AR9380, 11n adhoc mode
* broadcom 11ac adhoc (vendor platform)

Sponsored by:	Eva Automation, Inc.
2016-04-28 20:29:49 +00:00
..
_ieee80211.h Perform some rather amusing layering violations to add mbuf tags to the 2015-09-26 00:53:37 +00:00
ieee80211_acl.c These files were getting sys/malloc.h and vm/uma.h with header pollution 2016-02-01 17:41:21 +00:00
ieee80211_action.c These files were getting sys/malloc.h and vm/uma.h with header pollution 2016-02-01 17:41:21 +00:00
ieee80211_action.h
ieee80211_adhoc.c [net80211] handle action frames in adhoc mode from the node that created the BSS. 2016-04-28 20:29:49 +00:00
ieee80211_adhoc.h
ieee80211_ageq.c These files were getting sys/malloc.h and vm/uma.h with header pollution 2016-02-01 17:41:21 +00:00
ieee80211_ageq.h
ieee80211_alq.c
ieee80211_alq.h
ieee80211_amrr.c [net80211] Begin implementing rate control module stats. 2016-03-16 02:07:04 +00:00
ieee80211_amrr.h
ieee80211_crypto_ccmp.c net80211: add new method for ieee80211_cipher (ic_setiv). 2015-10-03 00:50:13 +00:00
ieee80211_crypto_none.c These files were getting sys/malloc.h and vm/uma.h with header pollution 2016-02-01 17:41:21 +00:00
ieee80211_crypto_tkip.c net80211: add new method for ieee80211_cipher (ic_setiv). 2015-10-03 00:50:13 +00:00
ieee80211_crypto_wep.c net80211: add new method for ieee80211_cipher (ic_setiv). 2015-10-03 00:50:13 +00:00
ieee80211_crypto.c net80211: drop redundant 3rd parameter from iv_key_set(). 2015-10-03 21:48:27 +00:00
ieee80211_crypto.h net80211: add a possibility to retrieve current TX key without encapsulation. 2015-10-03 00:57:33 +00:00
ieee80211_ddb.c These files were getting sys/malloc.h and vm/uma.h with header pollution 2016-02-01 17:41:21 +00:00
ieee80211_dfs.c [net80211] migrate the time_* macros to ieee80211_* namespace. 2016-03-30 00:44:10 +00:00
ieee80211_dfs.h
ieee80211_freebsd.c sys: use our roundup2/rounddown2() macros when param.h is available. 2016-04-21 19:57:40 +00:00
ieee80211_freebsd.h [net80211] note that M_FF will soon mean "fast-frames" or "A-MSDU." 2016-04-05 21:54:42 +00:00
ieee80211_hostap.c net80211: hide subtype mask & shift in function call. 2016-04-20 21:15:55 +00:00
ieee80211_hostap.h
ieee80211_ht.c [net80211] add STBC capability flags to iv_flags_ht. 2016-04-26 01:29:03 +00:00
ieee80211_ht.h [net80211] Initial A-MSDU support for testing / evaluation 2016-04-06 01:21:51 +00:00
ieee80211_hwmp.c net80211: replace internal LE_READ_*/LE_WRITE_* macro with system 2016-04-20 18:29:30 +00:00
ieee80211_input.c net80211: hide subtype mask & shift in function call. 2016-04-20 21:15:55 +00:00
ieee80211_input.h net80211: hide subtype mask & shift in function call. 2016-04-20 21:15:55 +00:00
ieee80211_ioctl.c [net80211] add the STBC ioctl support. 2016-04-26 01:29:26 +00:00
ieee80211_ioctl.h [net80211] add an ioctl for LDPC configuration. 2016-04-26 01:26:11 +00:00
ieee80211_mesh.c net80211: hide subtype mask & shift in function call. 2016-04-20 21:15:55 +00:00
ieee80211_mesh.h Migrate the 802.11s locks out into ieee80211_freebsd.h, so they can be 2015-05-26 04:25:11 +00:00
ieee80211_monitor.c Begin plumbing ieee80211_rx_stats through the receive path. 2015-05-25 16:37:41 +00:00
ieee80211_monitor.h
ieee80211_node.c Try to unbreak the build: the 'vap' variable is only used if ieee80211 2016-04-09 09:31:28 +00:00
ieee80211_node.h [net8021] Pull out the ibss check code into a public function. 2016-04-09 00:55:55 +00:00
ieee80211_output.c net80211: hide subtype mask & shift in function call. 2016-04-20 21:15:55 +00:00
ieee80211_phy.c [net80211] rename 11n rate macros into a useful spot 2016-04-05 22:01:56 +00:00
ieee80211_phy.h [net80211] rename 11n rate macros into a useful spot 2016-04-05 22:01:56 +00:00
ieee80211_power.c [net80211] migrate the time_* macros to ieee80211_* namespace. 2016-03-30 00:44:10 +00:00
ieee80211_power.h Begin fleshing out support for net80211 provided (legacy) sleep management. 2014-04-24 01:39:53 +00:00
ieee80211_proto.c net80211: hide subtype mask & shift in function call. 2016-04-20 21:15:55 +00:00
ieee80211_proto.h net80211: hide subtype mask & shift in function call. 2016-04-20 21:15:55 +00:00
ieee80211_radiotap.c Remove unused include. 2015-05-25 14:54:10 +00:00
ieee80211_radiotap.h
ieee80211_ratectl_none.c Move counter.h include into ieee80211_freebsd.h. Should fix build. 2015-05-27 14:05:46 +00:00
ieee80211_ratectl.c [net80211] Begin implementing rate control module stats. 2016-03-16 02:07:04 +00:00
ieee80211_ratectl.h [net80211] Begin implementing rate control module stats. 2016-03-16 02:07:04 +00:00
ieee80211_regdomain.c Replay r286410. Change KPI of how device drivers that provide wireless 2015-08-27 08:56:39 +00:00
ieee80211_regdomain.h
ieee80211_rssadapt.c Convert malloc/free back to #define's, as part of OS portability work. 2015-05-25 19:18:16 +00:00
ieee80211_rssadapt.h
ieee80211_scan_sta.c net80211: replace internal LE_READ_*/LE_WRITE_* macro with system 2016-04-20 18:29:30 +00:00
ieee80211_scan_sw.c net80211: refresh comments for ieee80211_scan_next() and 2016-04-21 06:19:33 +00:00
ieee80211_scan_sw.h Break out the current 802.11 software scan methods into an indirect table. 2015-06-08 02:35:43 +00:00
ieee80211_scan.c net80211: refresh comments for ieee80211_scan_next() and 2016-04-21 06:19:33 +00:00
ieee80211_scan.h Break out the current 802.11 software scan methods into an indirect table. 2015-06-08 02:35:43 +00:00
ieee80211_sta.c net80211: hide subtype mask & shift in function call. 2016-04-20 21:15:55 +00:00
ieee80211_sta.h
ieee80211_superg.c net80211: replace internal LE_READ_*/LE_WRITE_* macro with system 2016-04-20 18:29:30 +00:00
ieee80211_superg.h [net80211] Initial A-MSDU support for testing / evaluation 2016-04-06 01:21:51 +00:00
ieee80211_tdma.c net80211: hide subtype mask & shift in function call. 2016-04-20 21:15:55 +00:00
ieee80211_tdma.h Begin plumbing ieee80211_rx_stats through the receive path. 2015-05-25 16:37:41 +00:00
ieee80211_var.h [net80211] Add a new capability flag to indicate that the stack should 2016-04-05 21:54:07 +00:00
ieee80211_wds.c net80211: hide subtype mask & shift in function call. 2016-04-20 21:15:55 +00:00
ieee80211_wds.h
ieee80211_xauth.c These files were getting sys/malloc.h and vm/uma.h with header pollution 2016-02-01 17:41:21 +00:00
ieee80211.c net80211: enable promiscuous mode state change for non-monitor/ahdemo modes 2016-04-21 05:47:47 +00:00
ieee80211.h [net80211] Add fields to decode uAPSD fields. 2016-03-30 00:42:18 +00:00