diff options
author | Reyk Floeter <reyk@cvs.openbsd.org> | 2006-06-23 21:53:02 +0000 |
---|---|---|
committer | Reyk Floeter <reyk@cvs.openbsd.org> | 2006-06-23 21:53:02 +0000 |
commit | 9dca7703cc8f5d769e9db3a3d67d32f60b5a1d6f (patch) | |
tree | 0e0872bffe2c579a80357d8c655452336ac8c6c4 /usr.sbin | |
parent | 21922ab8d0860ad9ed70dc951d3ad2b304597347 (diff) |
set the RSSI Max value in ath(4) and use the new RSSI radiotap header
instead of the old db signal header. also allow tcpdump and hostapd to
print the new RSSI radiotap header values current/max rssi.
ok damien@ jsg@
Diffstat (limited to 'usr.sbin')
-rw-r--r-- | usr.sbin/hostapd/print-802_11.c | 14 | ||||
-rw-r--r-- | usr.sbin/tcpdump/print-802_11.c | 14 |
2 files changed, 26 insertions, 2 deletions
diff --git a/usr.sbin/hostapd/print-802_11.c b/usr.sbin/hostapd/print-802_11.c index 0c35d4171d2..b97992c2efb 100644 --- a/usr.sbin/hostapd/print-802_11.c +++ b/usr.sbin/hostapd/print-802_11.c @@ -1,4 +1,4 @@ -/* $OpenBSD: print-802_11.c,v 1.4 2006/06/01 22:09:09 reyk Exp $ */ +/* $OpenBSD: print-802_11.c,v 1.5 2006/06/23 21:53:01 reyk Exp $ */ /* * Copyright (c) 2005 Reyk Floeter <reyk@openbsd.org> @@ -618,6 +618,18 @@ ieee802_11_radio_if_print(u_int8_t *buf, u_int len) t += 4; } + if (RADIOTAP(RSSI)) { + u_int8_t rssi, max_rssi; + TCHECK(*t); + rssi = *(u_int8_t*)t; + t += 1; + TCHECK(*t); + max_rssi = *(u_int8_t*)t; + t += 1; + + printf(", rssi %u/%u", rssi, max_rssi); + } + #undef RADIOTAP PRINTF(">"); diff --git a/usr.sbin/tcpdump/print-802_11.c b/usr.sbin/tcpdump/print-802_11.c index 1fe6452231c..901538c50d8 100644 --- a/usr.sbin/tcpdump/print-802_11.c +++ b/usr.sbin/tcpdump/print-802_11.c @@ -1,4 +1,4 @@ -/* $OpenBSD: print-802_11.c,v 1.6 2005/12/18 17:52:46 reyk Exp $ */ +/* $OpenBSD: print-802_11.c,v 1.7 2006/06/23 21:53:01 reyk Exp $ */ /* * Copyright (c) 2005 Reyk Floeter <reyk@openbsd.org> @@ -640,6 +640,18 @@ ieee802_11_radio_if_print(u_char *user, const struct pcap_pkthdr *h, t += 4; } + if (RADIOTAP(RSSI)) { + u_int8_t rssi, max_rssi; + TCHECK(*t); + rssi = *(u_int8_t*)t; + t += 1; + TCHECK(*t); + max_rssi = *(u_int8_t*)t; + t += 1; + + printf(", rssi %u/%u", rssi, max_rssi); + } + #undef RADIOTAP putchar('>'); |