strlcpy(nr.nr_ifname, interface, sizeof(nr.nr_ifname));
if (ioctl(s, SIOCG80211NODE, &nr) == 0 && nr.nr_rssi) {
+ info->signal_level = nr.nr_rssi;
if (nr.nr_max_rssi)
- info->signal_level_max = IEEE80211_NODEREQ_RSSI(&nr);
- else
- info->signal_level = nr.nr_rssi;
+ info->signal_level_max = nr.nr_max_rssi;
info->flags |= WIRELESS_INFO_FLAG_HAS_SIGNAL;
}
if (info.flags & WIRELESS_INFO_FLAG_HAS_QUALITY)
START_COLOR((info.quality < info.quality_average ? "color_degraded" : "color_good"));
else
- START_COLOR("color_good");
+ START_COLOR((BEGINS_WITH(ip_address, "no IP") ? "color_degraded" : "color_good"));
} else {
walk = format_down;
START_COLOR("color_bad");