Skip to content

Commit 0980d5f

Browse files
committed
Wifi (BSD): correctly prioritize Wi-Fi protocol detection
by using an `if-else if` chain
1 parent d8c1b3b commit 0980d5f

File tree

2 files changed

+27
-26
lines changed

2 files changed

+27
-26
lines changed

src/detection/wifi/wifi_bsd.c

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -83,22 +83,23 @@ const char* ffDetectWifi(FFlist* result)
8383
item->conn.channel = curchan.ic_ieee;
8484
item->conn.frequency = curchan.ic_freq;
8585

86-
if (IEEE80211_IS_CHAN_FHSS(&curchan))
87-
ffStrbufSetStatic(&item->conn.protocol, "802.11 (FHSS)");
88-
if (IEEE80211_IS_CHAN_A(&curchan))
89-
ffStrbufSetStatic(&item->conn.protocol, "802.11a");
90-
if (IEEE80211_IS_CHAN_B(&curchan))
91-
ffStrbufSetStatic(&item->conn.protocol, "802.11b");
92-
if (IEEE80211_IS_CHAN_ANYG(&curchan))
93-
ffStrbufSetStatic(&item->conn.protocol, "802.11g");
94-
if (IEEE80211_IS_CHAN_HT(&curchan))
95-
ffStrbufSetStatic(&item->conn.protocol, "802.11n (Wi-Fi 4)");
96-
if (IEEE80211_IS_CHAN_VHT(&curchan))
97-
ffStrbufSetStatic(&item->conn.protocol, "802.11ac (Wi-Fi 5)");
9886
#ifdef IEEE80211_IS_CHAN_HE // for future use
9987
if (IEEE80211_IS_CHAN_HE(&curchan))
10088
ffStrbufSetStatic(&item->conn.protocol, "802.11ax (Wi-Fi 6)");
89+
else
10190
#endif
91+
if (IEEE80211_IS_CHAN_VHT(&curchan))
92+
ffStrbufSetStatic(&item->conn.protocol, "802.11ac (Wi-Fi 5)");
93+
else if (IEEE80211_IS_CHAN_HT(&curchan))
94+
ffStrbufSetStatic(&item->conn.protocol, "802.11n (Wi-Fi 4)");
95+
else if (IEEE80211_IS_CHAN_ANYG(&curchan))
96+
ffStrbufSetStatic(&item->conn.protocol, "802.11g");
97+
else if (IEEE80211_IS_CHAN_B(&curchan))
98+
ffStrbufSetStatic(&item->conn.protocol, "802.11b");
99+
else if (IEEE80211_IS_CHAN_A(&curchan))
100+
ffStrbufSetStatic(&item->conn.protocol, "802.11a");
101+
else if (IEEE80211_IS_CHAN_FHSS(&curchan))
102+
ffStrbufSetStatic(&item->conn.protocol, "802.11 (FHSS)");
102103
}
103104

104105
union {

src/detection/wifi/wifi_nbsd.c

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -94,23 +94,23 @@ const char* ffDetectWifi(FFlist* result)
9494
item->conn.channel = ffWifiFreqToChannel(curchan.ic_freq);
9595
item->conn.frequency = curchan.ic_freq;
9696

97-
if (IEEE80211_IS_CHAN_FHSS(&curchan))
98-
ffStrbufSetStatic(&item->conn.protocol, "802.11 (FHSS)");
99-
if (IEEE80211_IS_CHAN_A(&curchan))
100-
ffStrbufSetStatic(&item->conn.protocol, "802.11a");
101-
if (IEEE80211_IS_CHAN_B(&curchan))
102-
ffStrbufSetStatic(&item->conn.protocol, "802.11b");
103-
if (IEEE80211_IS_CHAN_ANYG(&curchan))
104-
ffStrbufSetStatic(&item->conn.protocol, "802.11g");
105-
106-
if (IEEE80211_IS_CHAN_HT(&curchan))
107-
ffStrbufSetStatic(&item->conn.protocol, "802.11n (Wi-Fi 4)");
108-
if (IEEE80211_IS_CHAN_VHT(&curchan))
109-
ffStrbufSetStatic(&item->conn.protocol, "802.11ac (Wi-Fi 5)");
110-
#ifdef IEEE80211_IS_CHAN_HE
97+
#ifdef IEEE80211_IS_CHAN_HE // for future use
11198
if (IEEE80211_IS_CHAN_HE(&curchan))
11299
ffStrbufSetStatic(&item->conn.protocol, "802.11ax (Wi-Fi 6)");
100+
else
113101
#endif
102+
if (IEEE80211_IS_CHAN_VHT(&curchan))
103+
ffStrbufSetStatic(&item->conn.protocol, "802.11ac (Wi-Fi 5)");
104+
else if (IEEE80211_IS_CHAN_HT(&curchan))
105+
ffStrbufSetStatic(&item->conn.protocol, "802.11n (Wi-Fi 4)");
106+
else if (IEEE80211_IS_CHAN_ANYG(&curchan))
107+
ffStrbufSetStatic(&item->conn.protocol, "802.11g");
108+
else if (IEEE80211_IS_CHAN_B(&curchan))
109+
ffStrbufSetStatic(&item->conn.protocol, "802.11b");
110+
else if (IEEE80211_IS_CHAN_A(&curchan))
111+
ffStrbufSetStatic(&item->conn.protocol, "802.11a");
112+
else if (IEEE80211_IS_CHAN_FHSS(&curchan))
113+
ffStrbufSetStatic(&item->conn.protocol, "802.11 (FHSS)");
114114
}
115115

116116
union {

0 commit comments

Comments
 (0)