svn commit: r343698 - head/sbin/ifconfig

Andriy Voskoboinyk avos at FreeBSD.org
Sun Feb 3 03:03:01 UTC 2019


Author: avos
Date: Sun Feb  3 03:02:59 2019
New Revision: 343698
URL: https://svnweb.freebsd.org/changeset/base/343698

Log:
  ifconfig(8): display management / multicast wlan(4) rates properly
  
  For 11n / 11ac we are still using non-11n rates for management and
  multicast traffic by default; check 'MCS rate' bit to determine how
  to print them correctly.
  
  PR:		161035
  MFC after:	1 week

Modified:
  head/sbin/ifconfig/ifieee80211.c

Modified: head/sbin/ifconfig/ifieee80211.c
==============================================================================
--- head/sbin/ifconfig/ifieee80211.c	Sun Feb  3 02:32:13 2019	(r343697)
+++ head/sbin/ifconfig/ifieee80211.c	Sun Feb  3 03:02:59 2019	(r343698)
@@ -4324,6 +4324,13 @@ list_roam(int s)
 	}
 }
 
+/* XXX TODO: rate-to-string method... */
+static const char*
+get_mcs_mbs_rate_str(uint8_t rate)
+{
+	return (rate & IEEE80211_RATE_MCS) ? "MCS " : "Mb/s";
+}
+
 static void
 list_txparams(int s)
 {
@@ -4340,19 +4347,23 @@ list_txparams(int s)
 		    mode == IEEE80211_MODE_VHT_2GHZ ||
 		    mode == IEEE80211_MODE_VHT_5GHZ) {
 			if (tp->ucastrate == IEEE80211_FIXED_RATE_NONE)
-				LINE_CHECK("%-7.7s ucast NONE    mgmt %2u MCS  "
-				    "mcast %2u MCS  maxretry %u",
+				LINE_CHECK("%-7.7s ucast NONE    mgmt %2u %s "
+				    "mcast %2u %s maxretry %u",
 				    modename[mode],
 				    tp->mgmtrate &~ IEEE80211_RATE_MCS,
+				    get_mcs_mbs_rate_str(tp->mgmtrate),
 				    tp->mcastrate &~ IEEE80211_RATE_MCS,
+				    get_mcs_mbs_rate_str(tp->mcastrate),
 				    tp->maxretry);
 			else
-				LINE_CHECK("%-7.7s ucast %2u MCS  mgmt %2u MCS  "
-				    "mcast %2u MCS  maxretry %u",
+				LINE_CHECK("%-7.7s ucast %2u MCS  mgmt %2u %s "
+				    "mcast %2u %s maxretry %u",
 				    modename[mode],
 				    tp->ucastrate &~ IEEE80211_RATE_MCS,
 				    tp->mgmtrate &~ IEEE80211_RATE_MCS,
+				    get_mcs_mbs_rate_str(tp->mgmtrate),
 				    tp->mcastrate &~ IEEE80211_RATE_MCS,
+				    get_mcs_mbs_rate_str(tp->mcastrate),
 				    tp->maxretry);
 		} else {
 			if (tp->ucastrate == IEEE80211_FIXED_RATE_NONE)


More information about the svn-src-all mailing list