Define four new radiotap fields per discussions with John Bicket, Sam

Leffler, and others:

        IEEE80211_RADIOTAP_RX_FLAGS = 14,
        IEEE80211_RADIOTAP_TX_FLAGS = 15,
        IEEE80211_RADIOTAP_RTS_RETRIES = 16,
        IEEE80211_RADIOTAP_DATA_RETRIES = 17,

I describe the fields in the manual page and in comments in the
header file (cross-referenced by the manual page).
This commit is contained in:
dyoung 2007-03-26 04:32:14 +00:00
parent 1af43bae06
commit 9ff230d3d6
2 changed files with 51 additions and 4 deletions

View File

@ -1,8 +1,8 @@
.\" $NetBSD: ieee80211_radiotap.9,v 1.10 2006/03/12 10:40:13 wiz Exp $ .\" $NetBSD: ieee80211_radiotap.9,v 1.11 2007/03/26 04:32:14 dyoung Exp $
.\" .\"
.\" Copyright (c) 2004 Bruce M. Simpson <bms@spc.org>, .\" Copyright (c) 2004 Bruce M. Simpson <bms@spc.org>,
.\" Darron Broad <darron@kewl.org>, .\" Darron Broad <darron@kewl.org>.
.\" David Young <dyoung@pobox.com>. .\" Copyright (c) 2004, 2007 David Young <dyoung@pobox.com>.
.\" All rights reserved. .\" All rights reserved.
.\" .\"
.\" Redistribution and use in source and binary forms, with or without .\" Redistribution and use in source and binary forms, with or without
@ -201,6 +201,17 @@ arbitrary, fixed reference.
This field contains a single unsigned 8-bit value, which indicates the This field contains a single unsigned 8-bit value, which indicates the
RF noise power at the antenna, in decibels difference from an RF noise power at the antenna, in decibels difference from an
arbitrary, fixed reference. arbitrary, fixed reference.
.It Dv IEEE80211_RADIOTAP_RX_FLAGS
An unsigned 16-bit bitmap indicating properties of received frames.
.It Dv IEEE80211_RADIOTAP_TX_FLAGS
An unsigned 16-bit bitmap indicating properties of transmitted frames.
.It Dv IEEE80211_RADIOTAP_RTS_RETRIES u_int8_t data
Unsigned 8-bit value indicating how many times the NIC retransmitted
the Request to Send (RTS) in an RTS/CTS handshake before receiving
an 802.11 Clear to Send (CTS).
.It Dv IEEE80211_RADIOTAP_DATA_RETRIES
Unsigned 8-bit value indicating how many times the NIC retransmitted
a unicast data packet before receiving an 802.11 Acknowledgement.
.It Dv IEEE80211_RADIOTAP_EXT .It Dv IEEE80211_RADIOTAP_EXT
This bit is reserved for any future extensions to the This bit is reserved for any future extensions to the
.Vt radiotap .Vt radiotap

View File

@ -1,5 +1,5 @@
/* $FreeBSD: src/sys/net80211/ieee80211_radiotap.h,v 1.5 2005/01/22 20:12:05 sam Exp $ */ /* $FreeBSD: src/sys/net80211/ieee80211_radiotap.h,v 1.5 2005/01/22 20:12:05 sam Exp $ */
/* $NetBSD: ieee80211_radiotap.h,v 1.16 2007/01/06 05:51:15 dyoung Exp $ */ /* $NetBSD: ieee80211_radiotap.h,v 1.17 2007/03/26 04:32:14 dyoung Exp $ */
/*- /*-
* Copyright (c) 2003, 2004 David Young. All rights reserved. * Copyright (c) 2003, 2004 David Young. All rights reserved.
@ -163,6 +163,22 @@ struct ieee80211_radiotap_header {
* *
* Unitless indication of the Rx/Tx antenna for this packet. * Unitless indication of the Rx/Tx antenna for this packet.
* The first antenna is antenna 0. * The first antenna is antenna 0.
*
* IEEE80211_RADIOTAP_RX_FLAGS u_int16_t bitmap
*
* Properties of received frames. See flags defined below.
*
* IEEE80211_RADIOTAP_TX_FLAGS u_int16_t bitmap
*
* Properties of transmitted frames. See flags defined below.
*
* IEEE80211_RADIOTAP_RTS_RETRIES u_int8_t data
*
* Number of rts retries a transmitted frame used.
*
* IEEE80211_RADIOTAP_DATA_RETRIES u_int8_t data
*
* Number of unicast retries a transmitted frame used.
*/ */
enum ieee80211_radiotap_type { enum ieee80211_radiotap_type {
IEEE80211_RADIOTAP_TSFT = 0, IEEE80211_RADIOTAP_TSFT = 0,
@ -179,6 +195,10 @@ enum ieee80211_radiotap_type {
IEEE80211_RADIOTAP_ANTENNA = 11, IEEE80211_RADIOTAP_ANTENNA = 11,
IEEE80211_RADIOTAP_DB_ANTSIGNAL = 12, IEEE80211_RADIOTAP_DB_ANTSIGNAL = 12,
IEEE80211_RADIOTAP_DB_ANTNOISE = 13, IEEE80211_RADIOTAP_DB_ANTNOISE = 13,
IEEE80211_RADIOTAP_RX_FLAGS = 14,
IEEE80211_RADIOTAP_TX_FLAGS = 15,
IEEE80211_RADIOTAP_RTS_RETRIES = 16,
IEEE80211_RADIOTAP_DATA_RETRIES = 17,
IEEE80211_RADIOTAP_EXT = 31, IEEE80211_RADIOTAP_EXT = 31,
}; };
@ -215,4 +235,20 @@ enum ieee80211_radiotap_type {
*/ */
#define IEEE80211_RADIOTAP_F_BADFCS 0x40 /* does not pass FCS check */ #define IEEE80211_RADIOTAP_F_BADFCS 0x40 /* does not pass FCS check */
/* For IEEE80211_RADIOTAP_RX_FLAGS */
#define IEEE80211_RADIOTAP_F_RX_BADFCS 0x0001 /* Frame failed CRC check.
*
* Deprecated: use the flag
* IEEE80211_RADIOTAP_F_FCS in
* the IEEE80211_RADIOTAP_FLAGS
* field, instead.
*/
/* For IEEE80211_RADIOTAP_TX_FLAGS */
#define IEEE80211_RADIOTAP_F_TX_FAIL 0x0001 /* failed due to excessive
* retries
*/
#define IEEE80211_RADIOTAP_F_TX_CTS 0x0002 /* used cts 'protection' */
#define IEEE80211_RADIOTAP_F_TX_RTS 0x0004 /* used rts/cts handshake */
#endif /* !_NET80211_IEEE80211_RADIOTAP_H_ */ #endif /* !_NET80211_IEEE80211_RADIOTAP_H_ */