int device_bitrate(const char *ifname) { int speed_c, speed_w; /* Probe for speed rates */ speed_c = ethtool_bitrate(ifname); speed_w = wireless_bitrate(ifname); return (speed_c == 0 ? speed_w : speed_c); }
u32 device_bitrate(const char *ifname) { u32 scopper, swireless; scopper = ethtool_bitrate(ifname); swireless = wireless_bitrate(ifname); return scopper ? : swireless; }
static int wifi_stats(const char *ifname, struct ifstat *s) { int ret; struct iw_statistics ws; ret = wireless_sigqual(ifname, &ws); if (ret != 0) { /* We don't want to trouble in case of eth* */ s->wifi_bitrate = 0; return 0; } s->wifi_bitrate = wireless_bitrate(ifname); s->wifi_signal_level = adjust_dbm_level(ws.qual.level); s->wifi_noise_level = adjust_dbm_level(ws.qual.noise); s->wifi_link_qual = ws.qual.qual; s->wifi_link_qual_max = wireless_rangemax_sigqual(ifname); return ret; }