summaryrefslogtreecommitdiff
path: root/iwinfo_cli.c
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2016-01-25 15:02:50 +0100
committerJo-Philipp Wich <jow@openwrt.org>2016-01-25 15:02:50 +0100
commit78f0fafa591754c3c5bbd3f408a0a91b78690141 (patch)
treefa2789e78a304766db4613dc10e4b9875b9836c1 /iwinfo_cli.c
parentbc8682aa5ee323f5a6e272a28ef348f2f7534d55 (diff)
downloadiwinfo-78f0fafa591754c3c5bbd3f408a0a91b78690141.tar.gz
cli: support reporting VHT rates
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
Diffstat (limited to 'iwinfo_cli.c')
-rw-r--r--iwinfo_cli.c18
1 files changed, 13 insertions, 5 deletions
diff --git a/iwinfo_cli.c b/iwinfo_cli.c
index 7cb90c2..aab6ae6 100644
--- a/iwinfo_cli.c
+++ b/iwinfo_cli.c
@@ -280,7 +280,7 @@ static char * format_hwmodes(int modes)
static char * format_assocrate(struct iwinfo_rate_entry *r)
{
- static char buf[40];
+ static char buf[80];
char *p = buf;
int l = sizeof(buf);
@@ -293,13 +293,21 @@ static char * format_assocrate(struct iwinfo_rate_entry *r)
p += snprintf(p, l, "%s", format_rate(r->rate));
l = sizeof(buf) - (p - buf);
- if (r->mcs >= 0)
+ if (r->is_ht)
{
- p += snprintf(p, l, ", MCS %d, %dMHz", r->mcs, 20 + r->is_40mhz*20);
+ p += snprintf(p, l, ", MCS %d, %dMHz", r->mcs, r->mhz);
+ l = sizeof(buf) - (p - buf);
+ }
+ else if (r->is_vht)
+ {
+ p += snprintf(p, l, ", VHT-MCS %d, %dMHz", r->mcs, r->mhz);
l = sizeof(buf) - (p - buf);
- if (r->is_short_gi)
- p += snprintf(p, l, ", short GI");
+ if (r->nss)
+ {
+ p += snprintf(p, l, ", VHT-NSS %d", r->nss);
+ l = sizeof(buf) - (p - buf);
+ }
}
}