Changeset 5245
- Timestamp:
- 08/09/09 03:45:05 (4 years ago)
- Files:
-
- 1 modified
-
luci/trunk/libs/iwinfo/src/iwinfo_wl.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
luci/trunk/libs/iwinfo/src/iwinfo_wl.c
r5244 r5245 153 153 wl_ioctl(ifname, WLC_GET_BSS_INFO, tmp, WLC_IOCTL_MAXLEN); 154 154 155 rssi = 0;156 rssi_count = 0;157 158 155 if( !wl_ioctl(ifname, WLC_GET_AP, &ap, sizeof(ap)) && !ap ) 159 156 { 160 rssi = tmp[WL_BSS_RSSI_OFFSET]; 161 rssi_count = 1; 157 *buf = tmp[WL_BSS_RSSI_OFFSET]; 162 158 } 163 159 else 164 160 { 161 rssi = rssi_count = 0; 162 165 163 /* Calculate average rssi from conntected stations */ 166 164 if( (macs = wl_read_assoclist(ifname)) != NULL ) … … 172 170 if( !wl_ioctl(ifname, WLC_GET_RSSI, &starssi, 12) ) 173 171 { 174 rssi += starssi.rssi;172 rssi -= starssi.rssi; 175 173 rssi_count++; 176 174 } … … 179 177 free(macs); 180 178 } 181 } 182 183 *buf = (rssi == 0 || rssi_count == 0) ? 1 : (rssi / rssi_count);179 180 *buf = (rssi == 0 || rssi_count == 0) ? 1 : -(rssi / rssi_count); 181 } 184 182 185 183 return 0;
