The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=d201e4e8491901d1de6bcaeb581a0bf958bf86f2
commit d201e4e8491901d1de6bcaeb581a0bf958bf86f2 Author: Bjoern A. Zeeb <[email protected]> AuthorDate: 2026-05-13 21:14:39 +0000 Commit: Bjoern A. Zeeb <[email protected]> CommitDate: 2026-05-15 21:59:07 +0000 wtap: use typed rssi and noise floor values Adjust the rssi and nf arguments to typed int8_t and adjust the maths for rssi to be consistant with what net80211 expects. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: lwhsu, adrian Differential Revision: https://reviews.freebsd.org/D57020 --- sys/dev/wtap/if_wtap.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/sys/dev/wtap/if_wtap.c b/sys/dev/wtap/if_wtap.c index dd332c538c8f..376b63e38f2b 100644 --- a/sys/dev/wtap/if_wtap.c +++ b/sys/dev/wtap/if_wtap.c @@ -495,6 +495,7 @@ wtap_rx_proc(void *arg, int npending) struct mbuf *m; struct ieee80211_node *ni; struct wtap_buf *bf; + int8_t rssi, nf; #if 0 DWTAP_PRINTF("%s\n", __func__); @@ -528,6 +529,15 @@ wtap_rx_proc(void *arg, int npending) ieee80211_dump_pkt(ic, mtod(m, caddr_t), 0,0,0); #endif + /* + * Use arbitrary but sane values, and do the correct conversion + * for net80211 using 0.5 dBm values relative to the noise floor. + */ + nf = -95; + rssi = 42; + rssi -= nf; + rssi *= 2; + /* * Locate the node for sender, track state, and then * pass the (referenced) node up to the 802.11 layer @@ -540,10 +550,10 @@ wtap_rx_proc(void *arg, int npending) /* * Sending station is known, dispatch directly. */ - ieee80211_input(ni, m, 1<<7, 10); + ieee80211_input(ni, m, rssi, nf); ieee80211_free_node(ni); } else { - ieee80211_input_all(ic, m, 1<<7, 10); + ieee80211_input_all(ic, m, rssi, nf); } /* The mbufs are freed by the Net80211 stack */
