OpenBSD CVS

CVS log for src/sys/net80211/ieee80211_proto.h


[BACK] Up to [local] / src / sys / net80211

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.49 / (download) - annotate - [select for diffs], Wed May 29 00:48:15 2024 UTC (13 days, 17 hours ago) by jsg
Branch: MAIN
CVS Tags: HEAD
Changes since 1.48: +1 -3 lines
Diff to previous 1.48 (colored)

remove prototypes with no matching function

Revision 1.48 / (download) - annotate - [select for diffs], Mon Mar 14 15:07:24 2022 UTC (2 years, 2 months ago) by stsp
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE, OPENBSD_7_5, OPENBSD_7_4_BASE, OPENBSD_7_4, OPENBSD_7_3_BASE, OPENBSD_7_3, OPENBSD_7_2_BASE, OPENBSD_7_2, OPENBSD_7_1_BASE, OPENBSD_7_1
Changes since 1.47: +4 -1 lines
Diff to previous 1.47 (colored)

Add initial 802.11ac (VHT) support to net80211.

Add VHT capability and operation IE definitions to ieee80211.h.
Introduce channel flags to identify 80MHz and 160MHz capable channels.

Parse VHT IEs in beacons, announce the driver's VHT capabilities in
probe requests and assoc requests, and hop into 11ac mode after
association to the AP if possible.

Enable VHT by default if the driver announces support for it.

ok claudio@

Revision 1.47 / (download) - annotate - [select for diffs], Sun Dec 5 11:33:45 2021 UTC (2 years, 6 months ago) by stsp
Branch: MAIN
Changes since 1.46: +2 -1 lines
Diff to previous 1.46 (colored)

Defer rtm_80211info() call from ieee80211_set_link_state() to a task context.

Sending routing messages requires a socket lock which may sleep.
ieee80211_set_link_state() is called from interrupts and timeouts where
sleeping is not allowed. mvs@ pointed out that if_link_state_change()
is already using a task for this reason.

Should fix a witness-related panic reported by cheloha@

ok mvs@ tobhe@ florian@

Revision 1.46 / (download) - annotate - [select for diffs], Thu Sep 12 12:55:07 2019 UTC (4 years, 9 months ago) by stsp
Branch: MAIN
CVS Tags: OPENBSD_7_0_BASE, OPENBSD_7_0, OPENBSD_6_9_BASE, OPENBSD_6_9, OPENBSD_6_8_BASE, OPENBSD_6_8, OPENBSD_6_7_BASE, OPENBSD_6_7, OPENBSD_6_6_BASE, OPENBSD_6_6
Changes since 1.45: +4 -1 lines
Diff to previous 1.45 (colored)

Make wireless drivers call if_input() only once per interrupt.

This reduces drops caused by the ifq pressure drop mechanism and hence
increases throughput. Such drops are visible with e.g. 'netstat -dnI iwm0'.

Not all affected drivers have been tested yet but these changes are largely
mechanical and should be safe. As usual, please report any regressions.

With help from dlg@ and mpi@

Problem found by robert@
Tested by robert, jmc, Tracey Emer, Matthias Schmidt, florian, Björn Ketelaars
ok mpi@

Revision 1.45 / (download) - annotate - [select for diffs], Mon Jul 29 10:50:09 2019 UTC (4 years, 10 months ago) by stsp
Branch: MAIN
Changes since 1.44: +17 -2 lines
Diff to previous 1.44 (colored)

Add support for 802.11n Tx aggregation to net80211 and the iwn(4) driver.

In particular, add Tx block ack session management to net80211, with
enough funcionality to support Tx aggregation on devices which perform
A-MPDU subframe scheduling in firmware.
Make use of the iwn(4) firmware Tx scheduler to build A-MPDUs.

net80211's QoS support code is now enabled and used by Tx aggregation.

A-MSDU frames inside A-MPDUs have been tested and work in principle.
For now, this feature is disabled because unfair TCP connection sharing
was observed during testing, where bursts of TCP Ack frames for a single
tcpbench(1) connection arriving in A-MSDUs made other TCP connections stall.
Switch off support for A-MSDUs inside A-MPDUs on the Rx side as well.

Tested on iwn chipsets 1000, 4965, 5100, 5300, 2200, 6200, 6205, 6300
(committed version of tested diff has all debug printfs removed)
tests/ok benno kmos mlarkin kevlo

Revision 1.44 / (download) - annotate - [select for diffs], Mon Feb 5 08:44:13 2018 UTC (6 years, 4 months ago) by stsp
Branch: MAIN
CVS Tags: OPENBSD_6_5_BASE, OPENBSD_6_5, OPENBSD_6_4_BASE, OPENBSD_6_4, OPENBSD_6_3_BASE, OPENBSD_6_3
Changes since 1.43: +3 -1 lines
Diff to previous 1.43 (colored)

Add a new function hook to struct ieee80211com which wireless drivers
can use to process, and then acknowledge or reject, incoming AUTH
requests in hostap mode.

net80211 accepts an AUTH request from any STA which fits into the node
cache. This behaviour doesn't work for devices which have a lower limit
on concurrent STAs they can serve, so such drivers need an override.

This will be used by our athn(4) USB driver soon.

ok kevlo@

Revision 1.43 / (download) - annotate - [select for diffs], Sat Oct 21 20:15:17 2017 UTC (6 years, 7 months ago) by patrick
Branch: MAIN
Changes since 1.42: +2 -1 lines
Diff to previous 1.42 (colored)

Make ieee80211_classify() available in a header so we can make the
priority visible to underlying bus protocols like bwfm(4)'s bcdc.

Revision 1.42 / (download) - annotate - [select for diffs], Wed Sep 21 12:21:27 2016 UTC (7 years, 8 months ago) by stsp
Branch: MAIN
CVS Tags: OPENBSD_6_2_BASE, OPENBSD_6_2, OPENBSD_6_1_BASE, OPENBSD_6_1
Changes since 1.41: +6 -1 lines
Diff to previous 1.41 (colored)

When processing an ADDBA request, iwm(4) runs a task which sends a
command to the firmware and waits for confirmation. This command can
fail and there was no way we could recover from such an error.

Allow drivers to return EBUSY from their ic_ampdu_rx_start() handler to
tell the stack not to send a confirmation just yet. The stack provides
functions which the driver can call to accept or refuse the request.

There is no functional change yet. This just shuffles code around so
drivers may insert themselves into the process.

ok mpi@

Revision 1.41 / (download) - annotate - [select for diffs], Tue Jan 5 18:41:16 2016 UTC (8 years, 5 months ago) by stsp
Branch: MAIN
CVS Tags: OPENBSD_6_0_BASE, OPENBSD_6_0, OPENBSD_5_9_BASE, OPENBSD_5_9
Changes since 1.40: +1 -3 lines
Diff to previous 1.40 (colored)

Remove the IEEE80211_NO_HT macro. Reduces ifdef spaghetti, enables 11n mode
in bsd.rd, and might uncover some bugs. Suggested by tedu@ and deraadt@.
ok sthen@ jasper@ deraadt@

Revision 1.40 / (download) - annotate - [select for diffs], Sun Nov 15 11:14:17 2015 UTC (8 years, 6 months ago) by stsp
Branch: MAIN
Changes since 1.39: +3 -1 lines
Diff to previous 1.39 (colored)

Parse 11n HT capabilities and operational info from association response
frames, negotiate HT with the AP, and move the interface into or out of
11n mode accordingly. If running as AP negotiate HT with nodes joining the BSS.

ok deraadt mpi kettenis guenther

Revision 1.39 / (download) - annotate - [select for diffs], Sat Nov 21 18:09:31 2009 UTC (14 years, 6 months ago) by damien
Branch: MAIN
CVS Tags: OPENBSD_5_8_BASE, OPENBSD_5_8, OPENBSD_5_7_BASE, OPENBSD_5_7, OPENBSD_5_6_BASE, OPENBSD_5_6, OPENBSD_5_5_BASE, OPENBSD_5_5, OPENBSD_5_4_BASE, OPENBSD_5_4, OPENBSD_5_3_BASE, OPENBSD_5_3, OPENBSD_5_2_BASE, OPENBSD_5_2, OPENBSD_5_1_BASE, OPENBSD_5_1, OPENBSD_5_0_BASE, OPENBSD_5_0, OPENBSD_4_9_BASE, OPENBSD_4_9, OPENBSD_4_8_BASE, OPENBSD_4_8, OPENBSD_4_7_BASE, OPENBSD_4_7
Changes since 1.38: +2 -1 lines
Diff to previous 1.38 (colored)

when wpa is enabled, defer setting the link up until the 802.1X
port is valid (keys have been successfully exchanged.)
this avoids dhclient timeouts when wpa is enabled.

Revision 1.38 / (download) - annotate - [select for diffs], Wed Jan 28 18:55:18 2009 UTC (15 years, 4 months ago) by damien
Branch: MAIN
CVS Tags: OPENBSD_4_6_BASE, OPENBSD_4_6, OPENBSD_4_5_BASE, OPENBSD_4_5
Changes since 1.37: +4 -3 lines
Diff to previous 1.37 (colored)

Block Ack agreements are unidirectional.
Maintain state for both originator and recipient roles separately.
Do not allocate receive reordering buffer in addba_request().
Test the "initiator" bit in incoming DELBA frames and set it appropriately
in outgoing DELBA frames.
Separate callbacks for Tx/Rx too.

no binary change since all this is #ifdef'ed out.

Revision 1.37 / (download) - annotate - [select for diffs], Mon Jan 26 19:09:41 2009 UTC (15 years, 4 months ago) by damien
Branch: MAIN
Changes since 1.36: +21 -4 lines
Diff to previous 1.36 (colored)

Add some initial HT bits (not enabled yet) based on 802.11n Draft 7.01:
- implement A-MPDU frames buffering and reordering
- implement A-MSDU decapsulation
- process/send ADDBA Request, ADDBA Response and DELBA action frames
- process Block Ack Request control frames (including MTBAR)
- implement PBAC support (Protected Block Ack)
- add some incomplete HT Capabilities and HT Operation IEs parsing

Add more Management Frame Protection bits based on 802.11w Draft 7.0:
- implement SA Query procedure (both AP and STA)
- cleanup BIP

Fix some bugs:
- fix check for WEP key length that otherwise caused a stack smash in
  ieee80211_wep_encrypt (pointed out by Xavier Santolaria on macppc)
- properly stop EAPOL timeout: fixes a panic that occured in HostAP mode
  when turning the interface down while a 4-way handshake is in progress
  (pointed out by Doughertys)

Did some code cleanup too.

The HT bits are currently not compiled in (IEEE80211_NO_HT is defined)
because they won't be ready until after the next release and I didn't
want to grow the kernel or to inadvertently introduce new bugs.
They are here such that other people can look at the code.
Notice that I had to add an extra parameter to ic_send_mgmt() for
action frames, that is why there are small changes in drivers defining
their own ic_send_mgmt() handler.

Sorry for the not very incremental diff but this has been sitting in
my tree for too long now.

Revision 1.36 / (download) - annotate - [select for diffs], Sun Sep 28 06:43:07 2008 UTC (15 years, 8 months ago) by damien
Branch: MAIN
Changes since 1.35: +1 -0 lines
Diff to previous 1.35 (colored)

unbreak the tree.
pointed out by deraadt@, Markus Peloquin

sorry guys.

Revision 1.35 / (download) - annotate - [select for diffs], Sat Sep 27 15:00:08 2008 UTC (15 years, 8 months ago) by damien
Branch: MAIN
Changes since 1.34: +3 -2 lines
Diff to previous 1.34 (colored)

Add some inline functions to test the presence of optional 802.11
header fields (Sequence Control, Address 4, QoS Control, +HTC) and
use them where appropriate.

Add ieee80211_get_qos() inline function to extract the QoS control
field of an 802.11 header instead of duplicating the same scary
code everywhere (the location of this field depends on the presence
of an Address 4 field).

Export ieee80211_up_to_ac() so that drivers can select the access
category to use based on the TID subfield of the QoS Control field.

Define more QoS-related bits for the RSN Capabilities field of RSN IE
(will be used later).

Revision 1.34 / (download) - annotate - [select for diffs], Mon Sep 1 19:41:10 2008 UTC (15 years, 9 months ago) by damien
Branch: MAIN
Changes since 1.33: +3 -3 lines
Diff to previous 1.33 (colored)

rework previously unused ieee80211_pwrsave() function, call it from
ieee80211_mgmt_output() and ieee80211_encap().
use new IEEE80211_C_APPMGT capability flag where appropriate.
rename ic_tim_mcast to ic_tim_mcast_pending.

Revision 1.33 / (download) - annotate - [select for diffs], Thu Aug 14 15:51:43 2008 UTC (15 years, 10 months ago) by damien
Branch: MAIN
Changes since 1.32: +3 -1 lines
Diff to previous 1.32 (colored)

put ieee80211_dump_pkt() under #ifdef IEEE80211_DEBUG

Revision 1.32 / (download) - annotate - [select for diffs], Tue Aug 12 17:53:13 2008 UTC (15 years, 10 months ago) by damien
Branch: MAIN
Changes since 1.31: +2 -2 lines
Diff to previous 1.31 (colored)

Change the way we process EAPOL-Key frames.
Free the mbuf in the ieee80211_eapol_key_input() function.
Do not assume the frame is contiguous, call m_pullup2() if it is not.
We need the frame to be contiguous to process KDEs efficiently in
EAPOL-Key frames (just like we process IEs in management frames).
However, there are drivers like upgt(4) that use m_devget() in the
RX path.  m_devget() can return fragmented mbuf chains.
Notice that we should do the same m_pullup2() for management frames.
This will be done later.
Remove the ic_recv_eapol callback.

Revision 1.31 / (download) - annotate - [select for diffs], Mon Jul 21 19:05:21 2008 UTC (15 years, 10 months ago) by damien
Branch: MAIN
CVS Tags: OPENBSD_4_4_BASE, OPENBSD_4_4
Changes since 1.30: +6 -1 lines
Diff to previous 1.30 (colored)

move processing of EAPOL frames away from ieee80211_{input,output}.c

Revision 1.30 / (download) - annotate - [select for diffs], Mon Jul 21 18:43:18 2008 UTC (15 years, 10 months ago) by damien
Branch: MAIN
Changes since 1.29: +6 -5 lines
Diff to previous 1.29 (colored)

instead of passing rx tstamp and rssi to the ieee80211_input function,
pass a pointer to an ieee80211_rxinfo structure containing those two
fields plus an extra flags field that indicates whether the frame was
decrypted by hardware or not.
required for a future fix.

Revision 1.29 / (download) - annotate - [select for diffs], Mon Apr 21 19:37:18 2008 UTC (16 years, 1 month ago) by damien
Branch: MAIN
Changes since 1.28: +4 -9 lines
Diff to previous 1.28 (colored)

move ieee80211_auth_open() to ieee80211_proto.c
move ieee80211_setup_rates() to ieee80211_node.c
move some prototypes from ieee80211_proto.h to ieee80211_crypto.h

Revision 1.28 / (download) - annotate - [select for diffs], Wed Apr 16 18:32:15 2008 UTC (16 years, 1 month ago) by damien
Branch: MAIN
Changes since 1.27: +9 -3 lines
Diff to previous 1.27 (colored)

Kernel implementation of the 4-way handshake and group-key
handshake protocols (both supplicant and authenticator state
machines) as defined in the IEEE 802.11i standard.

Software implementation of the TKIP (Temporal Key Integrity
Protocol) and CCMP (CTR with CBC-MAC Protocol) protocols.

This diff doesn't implement any of the 802.1X authentication
protocols and thus only PSK authentication (using pre-shared
keys) is currently supported.

In concrete terms, this adds support for WPA-PSK and WPA2-PSK
protocols, both in station and hostap modes.

The following drivers are marked as WPA-capable and should
work:  bwi(4), malo(4), ral(4), iwn(4), wpi(4), ural(4),
rum(4), upgt(4), and zyd(4)

The following options have been added to ifconfig(8):
wpa, wpapsk, wpaprotos, wpaakms, wpaciphers, wpagroupcipher

wpa-psk(8) can be used to generate keys from passphrases.

tested by many@
ok deraadt@

Revision 1.27 / (download) - annotate - [select for diffs], Thu Aug 23 16:59:32 2007 UTC (16 years, 9 months ago) by damien
Branch: MAIN
CVS Tags: OPENBSD_4_3_BASE, OPENBSD_4_3
Changes since 1.26: +2 -1 lines
Diff to previous 1.26 (colored)

add ieee80211_get_hdrlen() to compute the size of the 802.11 header
of a management or data frame  (check if the i_qos, i_ht or i_addr4
are present).

Revision 1.26 / (download) - annotate - [select for diffs], Fri Aug 3 16:51:06 2007 UTC (16 years, 10 months ago) by damien
Branch: MAIN
CVS Tags: OPENBSD_4_2_BASE, OPENBSD_4_2
Changes since 1.25: +3 -3 lines
Diff to previous 1.25 (colored)

add a ni_eapol_desc field to struct ieee80211_node to know whether
a station is using WPA1 or RSN descriptors.
make sure that a station that advertises WPA1 capability in an IE
uses the WPA1 EAPOL-Key descriptor type and not the RSN one.
fix construction of EAPOL-Key frames for WPA1.
i can now successfuly complete a 4-way and group-key handshake
with both a WPA1 and a WPA2 access point.
add some TKIP encapsulation code (no SW crypto yet).

ok deraadt@

Revision 1.25 / (download) - annotate - [select for diffs], Wed Aug 1 12:47:55 2007 UTC (16 years, 10 months ago) by damien
Branch: MAIN
Changes since 1.24: +2 -2 lines
Diff to previous 1.24 (colored)

pass the supplicant's nonce generated on reception of message 1 of the
4-way handshake to ieee80211_send_4way_msg2().

Revision 1.24 / (download) - annotate - [select for diffs], Sat Jul 28 11:24:06 2007 UTC (16 years, 10 months ago) by damien
Branch: MAIN
Changes since 1.23: +17 -1 lines
Diff to previous 1.23 (colored)

adds functions to parse and to build EAPOL-Key frames used in
the 4-way and group-key handshake.
the state machine is still missing though so this is not used
anywhere yet.

Revision 1.23 / (download) - annotate - [select for diffs], Tue Jul 24 20:34:16 2007 UTC (16 years, 10 months ago) by damien
Branch: MAIN
Changes since 1.22: +3 -1 lines
Diff to previous 1.22 (colored)

new function to check the MIC of a received EAPOL-Key frame.

Revision 1.22 / (download) - annotate - [select for diffs], Tue Jul 24 16:53:03 2007 UTC (16 years, 10 months ago) by damien
Branch: MAIN
Changes since 1.21: +7 -1 lines
Diff to previous 1.21 (colored)

add functions to compute EAPOL-Key Key MIC fields and to encrypt/decrypt
EAPOL-Key Data fields.

Revision 1.21 / (download) - annotate - [select for diffs], Sat Jul 14 19:58:05 2007 UTC (16 years, 11 months ago) by damien
Branch: MAIN
Changes since 1.20: +2 -2 lines
Diff to previous 1.20 (colored)

update QoS Tx/Rx sequence numbers for each TID.
add a parameter to ieee80211_decap() to handle different 802.11
header sizes.
cleanup and clarify ieee80211_classify().

Revision 1.20 / (download) - annotate - [select for diffs], Fri Jul 6 18:18:43 2007 UTC (16 years, 11 months ago) by damien
Branch: MAIN
Changes since 1.19: +1 -2 lines
Diff to previous 1.19 (colored)

remove remaining bits for pre-RSNA shared authmode support.
it has been #if 0'd since 3.9 and we have never supported this mode (no
ifconfig option etc...).

Revision 1.19 / (download) - annotate - [select for diffs], Thu Jul 5 20:19:21 2007 UTC (16 years, 11 months ago) by damien
Branch: MAIN
Changes since 1.18: +3 -1 lines
Diff to previous 1.18 (colored)

split ieee80211_add_rsn() so that the code can be reused for
vendor-specific IE.

Revision 1.18 / (download) - annotate - [select for diffs], Tue Jul 3 19:44:54 2007 UTC (16 years, 11 months ago) by damien
Branch: MAIN
Changes since 1.17: +3 -1 lines
Diff to previous 1.17 (colored)

add a function that builds an RSN IE (ieee80211_add_rsn).

Revision 1.17 / (download) - annotate - [select for diffs], Tue Jul 3 16:43:41 2007 UTC (16 years, 11 months ago) by damien
Branch: MAIN
Changes since 1.16: +16 -7 lines
Diff to previous 1.16 (colored)

move construction of IEs into individual functions so that we don't
duplicate the same code multiple times.
add references to the spec for all these functions.
fixes beacon_alloc() for FH PHYs as a side-effect.

Revision 1.16 / (download) - annotate - [select for diffs], Mon Jul 2 16:46:44 2007 UTC (16 years, 11 months ago) by damien
Branch: MAIN
Changes since 1.15: +2 -1 lines
Diff to previous 1.15 (colored)

initial bits for proper TIM support.

Revision 1.15 / (download) - annotate - [select for diffs], Thu Jun 21 21:06:12 2007 UTC (16 years, 11 months ago) by damien
Branch: MAIN
Changes since 1.14: +4 -1 lines
Diff to previous 1.14 (colored)

add EDCA Parameter Set and QoS capability IEs to appropriate frames
when QoS is supported and activated.

Revision 1.14 / (download) - annotate - [select for diffs], Sat Jun 16 13:17:05 2007 UTC (17 years ago) by damien
Branch: MAIN
Changes since 1.13: +6 -6 lines
Diff to previous 1.13 (colored)

constify

Revision 1.13 / (download) - annotate - [select for diffs], Thu Jun 7 20:20:15 2007 UTC (17 years ago) by damien
Branch: MAIN
Changes since 1.12: +1 -4 lines
Diff to previous 1.12 (colored)

move ieee80211_compute_duration() and ieee80211_compute_duration1()
functions into the two drivers that use them (atw and rtw.)
this code is not generic enough to be used by other drivers and
there is no chance that it will ever be used in newer driver since
it supports 802.11b only.
plus, it hurts my eyes each time i look into ieee80211_output.c.

"fine with me as long as the logic doesn't change in the functions" jsg@

Revision 1.12 / (download) - annotate - [select for diffs], Wed Jun 6 19:31:07 2007 UTC (17 years ago) by damien
Branch: MAIN
Changes since 1.11: +1 -5 lines
Diff to previous 1.11 (colored)

The license permits us to redistribute this code under the BSD or the GPLv2.
Choose the BSD license so that future enhancements will be BSD-only.

ok jsg@ reyk@ deraadt@

Revision 1.11 / (download) - annotate - [select for diffs], Mon Dec 25 19:24:27 2006 UTC (17 years, 5 months ago) by reyk
Branch: MAIN
CVS Tags: OPENBSD_4_1_BASE, OPENBSD_4_1
Changes since 1.10: +2 -1 lines
Diff to previous 1.10 (colored)

print the phy mode in IFF_DEBUG status output which helps to debug
dual/multi mode chipset operation.

ok jsg@

Revision 1.10 / (download) - annotate - [select for diffs], Fri Nov 3 19:02:08 2006 UTC (17 years, 7 months ago) by damien
Branch: MAIN
Changes since 1.9: +5 -1 lines
Diff to previous 1.9 (colored)

Add two new functions:
- ieee80211_get_rts
- ieee80211_get_cts_to_self
that can be use by drivers for chipsets that don't offer hardware assisted
RTS/CTS protection (like ral/ural/rum).

"no objections here" jsg@

Revision 1.9 / (download) - annotate - [select for diffs], Sun Jun 18 18:39:41 2006 UTC (17 years, 11 months ago) by damien
Branch: MAIN
CVS Tags: OPENBSD_4_0_BASE, OPENBSD_4_0
Changes since 1.8: +4 -1 lines
Diff to previous 1.8 (colored)

Improve 802.11b/g interoperability and move toward better compliance
with IEEE Std 802.11g-2003 standard:

- add ERP Information Element in probe responses and beacons
- keep track of the number of associated non-ERP STAs and non-short slot
  time capable STAs in the BSS
- enable use of RTS/CTS or CTS-to-self protection when required by the BSS
- add a ic_updateslot() callback to notify drivers of slot time changes
- cleanup computation of mgmt frames sizes in ieee80211_output.c
- nuke unnecessary <sys/cdefs.h> includes
- remove an unused macro (LOGICALLY_EQUAL) while i'm here

From {free,net}bsd, with additional fixes.

ok brad@, reyk@

Revision 1.8 / (download) - annotate - [select for diffs], Fri May 19 18:06:50 2006 UTC (18 years ago) by damien
Branch: MAIN
Changes since 1.7: +2 -1 lines
Diff to previous 1.7 (colored)

- export ieee80211_add_ssid() just like ieee80211_add_(x)rates() so I don't
  need to duplicate the code in wpi(4)
- fix ieee80211_alloc_beacon()
- clean two comments while i'm here

Revision 1.7 / (download) - annotate - [select for diffs], Wed Apr 20 19:52:43 2005 UTC (19 years, 1 month ago) by reyk
Branch: MAIN
CVS Tags: OPENBSD_3_9_BASE, OPENBSD_3_9, OPENBSD_3_8_BASE, OPENBSD_3_8
Changes since 1.6: +3 -1 lines
Diff to previous 1.6 (colored)

send raw 802.11 frames with bpf(4) using the IEEE802_11 or
IEEE802_11_RADIO data link types.

ok canacar@ damien@

Revision 1.6 / (download) - annotate - [select for diffs], Thu Mar 3 14:36:41 2005 UTC (19 years, 3 months ago) by damien
Branch: MAIN
CVS Tags: OPENBSD_3_7_BASE, OPENBSD_3_7
Changes since 1.5: +3 -1 lines
Diff to previous 1.5 (colored)

addtion of a generic function for allocating beacons: ieee80211_beacon_alloc().
ok jsg@, reyk@, dlg@

Revision 1.5 / (download) - annotate - [select for diffs], Sat Dec 25 20:40:19 2004 UTC (19 years, 5 months ago) by deraadt
Branch: MAIN
Changes since 1.4: +2 -2 lines
Diff to previous 1.4 (colored)

in real C, there is not , after the last enum entry; ok reyk

Revision 1.4 / (download) - annotate - [select for diffs], Thu Dec 23 12:27:25 2004 UTC (19 years, 5 months ago) by jsg
Branch: MAIN
Changes since 1.3: +2 -2 lines
Diff to previous 1.3 (colored)

From dyoung@NetBSD:

ieee80211.h r 1.9

#define the difference in microseconds between a fast and a slow
preamble and PLCP header.

ieee80211_output.c r 1.19

Fix a bug in ieee80211_compute_duration: the 802.11 Duration field
in an 802.11 unicast data packet is equal to the duration of the
SIFS and Acknowledgement.  That is, the amount of time reserved
*after* the packet has finished transmitting.

Change the arguments to ieee80211_compute_duration: pass the entire
packet length, not just the payload length.  Add a 'debug' argument
to ieee80211_compute_duration and its helper subroutine,
ieee80211_compute_duration1.

If debug != 0, ieee80211_compute_duration printfs its arguments
and several local variables.

In rtw(4), load the 802.11 Duration field with the result from
ieee80211_compute_duration.

Revision 1.3 / (download) - annotate - [select for diffs], Thu Dec 23 11:54:09 2004 UTC (19 years, 5 months ago) by jsg
Branch: MAIN
Changes since 1.2: +4 -1 lines
Diff to previous 1.2 (colored)

From dyoung@NetBSD:

Define for more bits in the Service field of the 802.11 PLCP Header.

For use by the subroutine ieee80211_compute_duration, add struct
ieee80211_duration, and #define a number of microsecond constants
used for the transmit timing of 802.11 packets.

Add the subroutine ieee80211_compute_duration, which computes for
any packet the appropriate 802.11 Duration field, the PLCP Length
field, as well as the Duration and Length fields for an RTS frame.

atw(4), rtw(4), future drivers, and possibly ath(4) will share
ieee80211_compute_duration.

ok millert@

Revision 1.2 / (download) - annotate - [select for diffs], Tue Nov 2 02:15:49 2004 UTC (19 years, 7 months ago) by reyk
Branch: MAIN
Changes since 1.1: +3 -1 lines
Diff to previous 1.1 (colored)

some changes merged in from netbsd. ieee80211_regdomain.# will be used
by sdr (software defined radios).

ok deraadt@ millert@ damien@

Revision 1.1 / (download) - annotate - [select for diffs], Tue Jun 22 22:53:52 2004 UTC (19 years, 11 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_3_6_BASE, OPENBSD_3_6

Import current NetBSD/FreeBSD 802.11 framework.
Based in part on a diff from Matthew Gream.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.