svn commit: r187845 - head/sbin/ifconfig

Sam Leffler sam at FreeBSD.org
Wed Jan 28 11:24:31 PST 2009


Author: sam
Date: Wed Jan 28 19:24:29 2009
New Revision: 187845
URL: http://svn.freebsd.org/changeset/base/187845

Log:
  include the channel list in list caps when -v is set; ieee channel
  #'s are not available and we have to hack around the mapchan routine
  but it lets us see the calibration table w/o forcing the debug regdomain

Modified:
  head/sbin/ifconfig/ifieee80211.c

Modified: head/sbin/ifconfig/ifieee80211.c
==============================================================================
--- head/sbin/ifconfig/ifieee80211.c	Wed Jan 28 19:23:12 2009	(r187844)
+++ head/sbin/ifconfig/ifieee80211.c	Wed Jan 28 19:24:29 2009	(r187845)
@@ -3342,10 +3342,13 @@ list_capabilities(int s)
 {
 	struct ieee80211_devcaps_req *dc;
 
-	dc = malloc(IEEE80211_DEVCAPS_SIZE(1));
+	if (verbose)
+		dc = malloc(IEEE80211_DEVCAPS_SIZE(MAXCHAN));
+	else
+		dc = malloc(IEEE80211_DEVCAPS_SIZE(1));
 	if (dc == NULL)
 		errx(1, "no space for device capabilities");
-	dc->dc_chaninfo.ic_nchans = 1;
+	dc->dc_chaninfo.ic_nchans = verbose ? MAXCHAN : 1;
 	getdevcaps(s, dc);
 	printb("drivercaps", dc->dc_drivercaps, IEEE80211_C_BITS);
 	if (dc->dc_cryptocaps != 0 || verbose) {
@@ -3357,6 +3360,10 @@ list_capabilities(int s)
 		printb("htcaps", dc->dc_htcaps, IEEE80211_HTCAP_BITS);
 	}
 	putchar('\n');
+	if (verbose) {
+		chaninfo = &dc->dc_chaninfo;	/* XXX */
+		print_channels(s, &dc->dc_chaninfo, 1/*allchans*/, verbose);
+	}
 	free(dc);
 }
 


More information about the svn-src-all mailing list