History log of /dragonfly/sys/netproto/802_11/wlan/ieee80211_node.c (Results 1 – 25 of 40)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: v6.2.1, v6.2.0, v6.3.0, v6.0.1, v6.0.0, v6.0.0rc1, v6.1.0, v5.8.3, v5.8.2, v5.8.1, v5.8.0, v5.9.0, v5.8.0rc1, v5.6.3
# 161c3d83 13-Oct-2019 Sascha Wildner <saw@online.de>

world/kernel: Use the powerof2() macro in various places.


Revision tags: v5.6.2, v5.6.1, v5.6.0, v5.6.0rc1, v5.7.0, v5.4.3, v5.4.2, v5.4.1, v5.4.0, v5.5.0, v5.4.0rc1, v5.2.2, v5.2.1, v5.2.0, v5.3.0, v5.2.0rc, v5.0.2, v5.0.1, v5.0.0, v5.0.0rc2, v5.1.0, v5.0.0rc1, v4.8.1, v4.8.0, v4.6.2, v4.9.0, v4.8.0rc, v4.6.1, v4.6.0, v4.6.0rc2, v4.6.0rc, v4.7.0
# 4f655ef5 12-May-2016 Matthew Dillon <dillon@backplane.com>

wlan - Sync netproto/802_11 from FreeBSD part 1/N

* Sync netproto/802_11 from FreeBSD, fbsd git dd885b9a0a0e, May 11 2016.


Revision tags: v4.4.3, v4.4.2
# 4f898719 04-Jan-2016 Imre Vadász <imre@vdsz.com>

80211 - Update up to FreeBSD's r287029 (only skipping a few minor changes)

Taken-From: FreeBSD


Revision tags: v4.4.1, v4.4.0, v4.5.0, v4.4.0rc, v4.2.4, v4.3.1, v4.2.3, v4.2.1, v4.2.0, v4.0.6, v4.3.0, v4.2.0rc, v4.0.5, v4.0.4, v4.0.3
# 085ff963 11-Jan-2015 Matthew Dillon <dillon@apollo.backplane.com>

wlan - Update wlan from Adrian / FreeBSD

* Update the wlan infrastructure, initially working with ath.


Revision tags: v4.0.2, v4.0.1, v4.0.0, v4.0.0rc3, v4.0.0rc2, v4.0.0rc, v4.1.0, v3.8.2, v3.8.1, v3.6.3, v3.8.0, v3.8.0rc2, v3.9.0, v3.8.0rc, v3.6.2
# 4fbce6bd 04-Apr-2014 Sascha Wildner <saw@online.de>

kernel/802_11: More ratectl fixes (fixes an ath(4) panic).

Set the default rate control algorithm to NONE instead of AMRR and
add some missing ieee80211_ratectl_node_init()s which I had overlooked
e

kernel/802_11: More ratectl fixes (fixes an ath(4) panic).

Set the default rate control algorithm to NONE instead of AMRR and
add some missing ieee80211_ratectl_node_init()s which I had overlooked
earlier.

Reported-by: Johannes Hofmann <johannes.hofmann@gmx.de>
Tested-by: Imre Vadasz <imre@vdsz.com>

show more ...


# b437bb69 03-Apr-2014 Sascha Wildner <saw@online.de>

Move ieee80211_ratectl_node_init() from drivers into ieee80211.

This fixes the amrr_node_deinit() panics we were getting after my
recent ratectl commit broke it (it was trying to kfree a NULL
pointe

Move ieee80211_ratectl_node_init() from drivers into ieee80211.

This fixes the amrr_node_deinit() panics we were getting after my
recent ratectl commit broke it (it was trying to kfree a NULL
pointer).

It should also fix hostap mode for run(4) e.g.

This commit is essentially FreeBSD's r217511.

Pointed-out-by: Imre Vadasz <imre@vdsz.com>
Taken-from: FreeBSD

show more ...


Revision tags: v3.6.1, v3.6.0, v3.7.1, v3.6.0rc, v3.7.0
# cec73927 05-Sep-2013 Matthew Dillon <dillon@apollo.backplane.com>

kernel - Change time_second to time_uptime for all expiration calculations

* Vet the entire kernel and change use cases for expiration calculations
using time_second to use time_uptime instead.

*

kernel - Change time_second to time_uptime for all expiration calculations

* Vet the entire kernel and change use cases for expiration calculations
using time_second to use time_uptime instead.

* Protects these expiration calculations from step changes in the wall time,
particularly needed for route table entries.

* Probably requires further variable type adjustments but the use of
time_uptime instead if time_second is highly unlikely to ever overrun
any demotions to int still present.

show more ...


Revision tags: v3.4.3, v3.4.2, v3.4.0, v3.4.1, v3.4.0rc, v3.5.0
# 33e5766f 16-Jan-2013 Sascha Wildner <saw@online.de>

kernel: Fix the build of the SOEKRIS kernel config.

It's the only one that has if_ath and 80211 in the kernel and ATH_DEBUG
and IEEE80211_DEBUG isn't set at the same time. So it caught a few
ethstr[

kernel: Fix the build of the SOEKRIS kernel config.

It's the only one that has if_ath and 80211 in the kernel and ATH_DEBUG
and IEEE80211_DEBUG isn't set at the same time. So it caught a few
ethstr[] that were not yet under the proper #ifdef.

show more ...


# 1e290df3 28-Dec-2012 Antonio Huete Jimenez <tuxillo@quantumachine.net>

kern - Utilize new way of printing MAC addresses.

kether_aton() function is being used to return a buffer
with the human readable notation of an ethernet address.


Revision tags: v3.2.2, v3.2.1, v3.2.0, v3.3.0, v3.0.3, v3.0.2, v3.0.1, v3.1.0, v3.0.0
# 16fb0422 20-Jan-2012 Sascha Wildner <saw@online.de>

Remove empty DragonFly CVS IDs.


# 86d7f5d3 26-Nov-2011 John Marino <draco@marino.st>

Initial import of binutils 2.22 on the new vendor branch

Future versions of binutils will also reside on this branch rather
than continuing to create new binutils branches for each new version.


Revision tags: v2.12.0, v2.13.0, v2.10.1, v2.11.0, v2.10.0, v2.9.1, v2.8.2, v2.8.1, v2.8.0, v2.9.0, v2.6.3, v2.7.3, v2.6.2, v2.7.2, v2.7.1, v2.6.1, v2.7.0, v2.6.0, v2.5.1, v2.4.1, v2.5.0, v2.4.0, v2.3.2, v2.3.1, v2.2.1, v2.2.0, v2.3.0, v2.1.1, v2.0.1
# 0ca0cd25 20-Apr-2008 Sascha Wildner <swildner@dragonflybsd.org>

Another round of typo fixes (mostly in messages).


# f39a365a 04-Mar-2008 Sepherosa Ziehau <sephe@dragonflybsd.org>

Add capability flag to inform 802.11 generic layer that device will do auto
channel switching during scanning, so if beacon/prrob-resp's DS parameter
indicates different channel than ic_curchan, 802.

Add capability flag to inform 802.11 generic layer that device will do auto
channel switching during scanning, so if beacon/prrob-resp's DS parameter
indicates different channel than ic_curchan, 802.11 could adjust ic_curchan
according, instead of letting driver do the tedious and error prone beacon/
probe-resp parsing.

show more ...


# 215bf50c 06-Mar-2007 Sepherosa Ziehau <sephe@dragonflybsd.org>

Use random octet stream to create IBSS's BSSID as suggested by
IEEE Std 802.11, 1999 Edition.

Obtained-from: Sam Leffler


# 9639b71d 01-Jan-2007 Sepherosa Ziehau <sephe@dragonflybsd.org>

- In ieee80211_setmode(), don't mark basic rates on ieee80211com.ic_sup_rates.
The basic rates will be marked on ieee80211com.ic_sup_rates once we get the
BSS' basic rate set, in ieee80211_sta_jo

- In ieee80211_setmode(), don't mark basic rates on ieee80211com.ic_sup_rates.
The basic rates will be marked on ieee80211com.ic_sup_rates once we get the
BSS' basic rate set, in ieee80211_sta_join().
- Rename ieee80211_set11gbasicrates() to ieee80211_set_basicrates(). Add
additional parameter to indicate whether we are using Pure G or not.
- In ieee80211_set_basicrates():
o Extend basic rate set array by adding items for Turbo G mode (mixed 11B/G
basic rates) and Turbo A mode (11A mandatory rates).
o Add an assertion to make sure we will not go beyond the end of the basic
rate set array.
o Use a seperate constant for Pure G basic rate set.
o If 'mode' is 11G or Turbo G, and Pure G is required, use Pure G's basic
rate set, instead of mixed 11B/G basic rate set. This makes a standard
conforming 11B STA not try joining a Pure G BSS created by us.
- In ieee80211_recv_mgmt():
o Send probe response even if rate negotiation fails. According to
IEEE Std 802.11, 1999 Edition, subclause 11.1.3.2.1:
....
STAs, subject to criteria below, receiving Probe Request frames shall
respond with a probe response only if the SSID in the probe request is
the broadcast SSID or matches the specific SSID of the STA. ... ...
An AP shall respond to all probe requests meeting the above criteria.
In an IBSS, the STA that generated the last beacon shall be the STA that
responds to a probe request.
....

If we reach the rate negotiation step, then the "criteria" outlined by
the standard is already met.
o Don't do rate negotiation for temporary nodes, which are created just for
sending probe responses. This may save us some cpu time.
- Reset NIC for Pure G change, only if opmode is HOSTAP or IBSS(*), and phy
mode is either Turbo G or 11G.
- Don't allocate TX rate control data for temporary nodes, since they will be
reclaimed immediately after management frames are sent.

# (*) Actually, for IBSS opmode, we need to reset the NIC iff we are the only
# member of the current IBSS.

show more ...


# 208a1285 23-Dec-2006 Sepherosa Ziehau <sephe@dragonflybsd.org>

Massive 802_11 XRATE bug fixing.

- Correct ieee80211_fix_rate(IEEE80211_F_DODEL) operation by entering
IEEE80211_F_DONEGO code segment but avoiding real negotiation.
- In ieee80211_fix_rate(), rem

Massive 802_11 XRATE bug fixing.

- Correct ieee80211_fix_rate(IEEE80211_F_DODEL) operation by entering
IEEE80211_F_DONEGO code segment but avoiding real negotiation.
- In ieee80211_fix_rate(), remove duplicated rates if rate set is to
be sorted. This should be enough to protect us against maliciously
minted 802.11 management frames which contain supported rate and
extended supported rate ies. [*]
- In ieee80211_sta_join(), call ieee80211_fix_rate(IEEE80211_F_DODEL),
if the wireless NIC operates in STA mode. So drivers can depend on
ieee80211com.ic_bss's ni_rates even before entering RUN state, this
is *very important* for certain driver e.g. iwi(4) [*].
- Add ic_nbasicrates in ieee80211com, which records the number of
basic rates in the current BSS. [1]
- Add a new function ieee80211_copy_basicrates(). This function is
used to propagate IEEE80211_RATE_BASIC bit from second parameter
to the first parameter. It will return number of basic rates in
the second parameter. It is called in ieee80211_sta_join() to
properly setup basic rates in ieee80211com.ic_sup_rates and
ieee80211com.ic_nbasicrates. [2]
- Introduce extra parameter to ieee80211_setup_rates() and
ieee80211_fix_rate().
This parameter only affects how IEEE80211_F_DONEGO is done.
Adjust IEEE80211_F_DONEGO behavior after introducing this parameter:
If the new parameter is 1, then the negotiation is performed on the
behalf of a STA which wants to join either an infrastructured or an
independent BSS, and the rate set going to be negotiated is the BSS's
supported rate set:
o Don't overwrite the BSS basic rate set. So drivers and TX rate
control algorithm can have knowledge of the BSS basic rate set and
can do various setting accordingly.
o Avoid joining the BSS, if certain rates in the BSS basic rate set
are not supported.
If the new parameter is 0, then the negotiation is performed on the
behalf of a HOSTAP, or a STA that already joined/started an independent
BSS, and the rate set going to be negotiated is peer STA's supported
rate set:
o Overwrite the basic rates of peer STA's supported rate set with
basic rates in ieee80211com.ic_sup_rates, which is set up properly
in ieee80211_sta_join() by ieee80211_copy_basicrates() (see [2]),
so TX rate control algorithm can act accordingly.
o If the current operation mode is IEEE80211_M_HOSTAP, use a counter
to bookkeep how many basic rates got overwritten during negotiation.
If at the end of the negotiation the counter is less than
ieee80211com.ic_nbasicrates (see [1] and [2]), then it means that
the peer STA does not support certain rates in our basic rate set.
This kind of STA should not be allowed to join the current BSS.
This prevention mechanism should be more straightforword than the
old one in ieee80211_recv_mgmt(), nuke the old prevention mechanism
after this change.
- In ieee80211_init_neighbor(), do full rate set negotiation, so nodes
created by ieee80211_add_neighbor() or ieee80211_fakeup_adhoc_node(),
will not contain rates that the wireless NIC does not support.
- In ieee80211_{beacon,probe_resp}_alloc(), use ieee80211com.ic_sup_rates
to setup supported rates and extended supported rates ie, instead of
using ieee80211com.ic_bss's ni_rates. So two 11g STAs in a 11g/11b
mixed IBSS can comunicate with each other using OFDM rates, given proper
protection, like RTS-CTS/CTS-to-self, is applied. [**]
- In ieee80211_send_mgmt(), use ieee80211com.ic_sup_rates to create
supported rates and extended supported rates ie of (re)association
response. So these ies are consistent with what's in beacon and probe
response. [**]
- In ieee80211_send_mgmt(), use ieee80211_probe_resp_alloc() to create
frame body of probe response.
- Add more XRATE debug messages.

#
# [*] Details:
# http://lists.freebsd.org/pipermail/freebsd-current/2006-October/066679.html
#
# [**] Basic rates in ieee80211com.ic_sup_rates are set beforehand (see [2])
#

show more ...


# a6ec04bc 22-Dec-2006 Sascha Wildner <swildner@dragonflybsd.org>

Rename printf -> kprintf in sys/ and add some defines where necessary
(files which are used in userland, too).


# 476d885d 15-Dec-2006 Sepherosa Ziehau <sephe@dragonflybsd.org>

- Factor out ieee80211_print_rateset().
- Add a debug macro: IEEE80211_PRINT_NODERATES(). Replace two almost same
debug code segments with it.


# 89625b06 12-Dec-2006 Sepherosa Ziehau <sephe@dragonflybsd.org>

- Correct some debug messages format.
- In ieee80211_init_neighbor(), print neighbors' rate set.


# 21152d39 01-Dec-2006 Sepherosa Ziehau <sephe@dragonflybsd.org>

Add PBCC modulation support in netproto/802_11:
- Since ieee80211com.ic_caps is already crowded, add ieee80211com.ic_caps_ext
to extend it. Currently only IEEE80211_CEXT_PBCC, which should be set

Add PBCC modulation support in netproto/802_11:
- Since ieee80211com.ic_caps is already crowded, add ieee80211com.ic_caps_ext
to extend it. Currently only IEEE80211_CEXT_PBCC, which should be set by
the drivers capable of PBCC modulation, is defined for this field.
- Adapt SIOCG80211:IEEE80211_IOC_DRIVER_CAPS ioctl handling to expose the
content of ieee80211com.ic_caps_ext. Old semantic of this ioctl is not
changed, given ieee80211req is zeroed out before the ioctl call.
- Add debug information about peer node's rate set (after negociation)
- Set PBCC bit in Capability ie base on the value of
(ieee80211com.ic_caps_ext & IEEE80211_CEXT_PBCC). This is only done for 2GHz
channels.
- Teach ifconfig(8) to print ieee80211.ic_caps_ext upon "list caps" command.

show more ...


# ab0665aa 26-Nov-2006 Sepherosa Ziehau <sephe@dragonflybsd.org>

- Factor out front part of ieee80211_set_shortpreamble() into
ieee80211_update_shpreamble(). So that the former only turns
on/off short preamble and informs driver about the changes,
while the

- Factor out front part of ieee80211_set_shortpreamble() into
ieee80211_update_shpreamble(). So that the former only turns
on/off short preamble and informs driver about the changes,
while the latter makes the decision whether short preamble
should be turned on or off.
- Replace rest of the places where short preamble is turned on/off
manually with ieee80211_set_shortpreamble()
- For associated STAs, update short preamble state only when related
fields of ERP information or capability information in received
beacons are changed

show more ...


# 5d004897 25-Nov-2006 Sepherosa Ziehau <sephe@dragonflybsd.org>

Move conditional preprocessing out from the IEEE80211_DPRINTF macro
invocation. Per C99 6.10.3 paragraph 11 preprocessing directives
appearing as macro arguments yield undefined behavior.

Obtained-

Move conditional preprocessing out from the IEEE80211_DPRINTF macro
invocation. Per C99 6.10.3 paragraph 11 preprocessing directives
appearing as macro arguments yield undefined behavior.

Obtained-from: FreeBSD (dss@freebsd.org)

show more ...


# a6226bb4 25-Nov-2006 Sepherosa Ziehau <sephe@dragonflybsd.org>

Ensure outbound data packets in hostap mode are delivered only to stations
that are associated by making ieee80211_find_txnode return NULL when a
unicast frame is to be delivered to an unassociated s

Ensure outbound data packets in hostap mode are delivered only to stations
that are associated by making ieee80211_find_txnode return NULL when a
unicast frame is to be delivered to an unassociated station.

Obtained-from: FreeBSD (sam@freebsd.org)

show more ...


# 77652cad 05-Sep-2006 Matthew Dillon <dillon@dragonflybsd.org>

Rename malloc->kmalloc, free->kfree, and realloc->krealloc. Pass 2


# efda3bd0 05-Sep-2006 Matthew Dillon <dillon@dragonflybsd.org>

Rename malloc->kmalloc, free->kfree, and realloc->krealloc. Pass 1


12