summaryrefslogtreecommitdiff
path: root/iwinfo_cli.c
diff options
context:
space:
mode:
authorAndre Heider <a.heider@gmail.com>2022-11-21 17:27:20 +0100
committerJo-Philipp Wich <jo@mein.io>2022-12-16 00:09:07 +0100
commit87529770f6494189f3f21252c3a83d708f1faacf (patch)
tree3b2b75161be1399760358228a3c6c82dba941c92 /iwinfo_cli.c
parent02f433e3052a5f2ee1c26c38a8beaf7a52fff645 (diff)
downloadiwinfo-87529770f6494189f3f21252c3a83d708f1faacf.tar.gz
utils: add and use iwinfo_format_hwmodes()
Unify how hwmodes are displayed, e.g.: "802.11ac/ax/b/g/n" instead of "802.11bgnacax". Luci currently uses a natural sort order, but that probably doesn't work as intended once "be" is added, so let's do this here. Signed-off-by: Andre Heider <a.heider@gmail.com>
Diffstat (limited to 'iwinfo_cli.c')
-rw-r--r--iwinfo_cli.c13
1 files changed, 2 insertions, 11 deletions
diff --git a/iwinfo_cli.c b/iwinfo_cli.c
index b533ffe..caefac6 100644
--- a/iwinfo_cli.c
+++ b/iwinfo_cli.c
@@ -282,19 +282,10 @@ static char * format_encryption(struct iwinfo_crypto_entry *c)
static char * format_hwmodes(int modes)
{
- static char buf[17];
+ static char buf[32] = "802.11";
- if (modes <= 0)
+ if (iwinfo_format_hwmodes(modes, buf + 6, sizeof(buf) - 6) < 1)
snprintf(buf, sizeof(buf), "unknown");
- else
- snprintf(buf, sizeof(buf), "802.11%s%s%s%s%s%s%s",
- (modes & IWINFO_80211_A) ? "a" : "",
- (modes & IWINFO_80211_B) ? "b" : "",
- (modes & IWINFO_80211_G) ? "g" : "",
- (modes & IWINFO_80211_N) ? "n" : "",
- (modes & IWINFO_80211_AC) ? "ac" : "",
- (modes & IWINFO_80211_AD) ? "ad" : "",
- (modes & IWINFO_80211_AX) ? "ax" : "");
return buf;
}