83 lines
2.8 KiB
Diff
83 lines
2.8 KiB
Diff
--- acx-20080210/ioctl.c 2008-02-10 14:06:42.000000000 -0600
|
|
+++ ioctl.c 2008-11-16 02:08:58.000000000 -0600
|
|
@@ -488,6 +488,7 @@
|
|
/* helper. not sure whether it's really a _s_leeping fn */
|
|
static char*
|
|
acx_s_scan_add_station(
|
|
+ struct iw_request_info *info,
|
|
acx_device_t *adev,
|
|
char *ptr,
|
|
char *end_buf,
|
|
@@ -503,14 +504,14 @@
|
|
iwe.u.ap_addr.sa_family = ARPHRD_ETHER;
|
|
MAC_COPY(iwe.u.ap_addr.sa_data, bss->bssid);
|
|
acxlog_mac(L_IOCTL, "scan, station address: ", bss->bssid, "\n");
|
|
- ptr = iwe_stream_add_event(ptr, end_buf, &iwe, IW_EV_ADDR_LEN);
|
|
+ ptr = iwe_stream_add_event(info, ptr, end_buf, &iwe, IW_EV_ADDR_LEN);
|
|
|
|
/* Add ESSID */
|
|
iwe.cmd = SIOCGIWESSID;
|
|
iwe.u.data.length = bss->essid_len;
|
|
iwe.u.data.flags = 1;
|
|
log(L_IOCTL, "scan, essid: %s\n", bss->essid);
|
|
- ptr = iwe_stream_add_point(ptr, end_buf, &iwe, bss->essid);
|
|
+ ptr = iwe_stream_add_point(info, ptr, end_buf, &iwe, bss->essid);
|
|
|
|
/* Add mode */
|
|
iwe.cmd = SIOCGIWMODE;
|
|
@@ -520,7 +521,7 @@
|
|
else
|
|
iwe.u.mode = IW_MODE_ADHOC;
|
|
log(L_IOCTL, "scan, mode: %d\n", iwe.u.mode);
|
|
- ptr = iwe_stream_add_event(ptr, end_buf, &iwe, IW_EV_UINT_LEN);
|
|
+ ptr = iwe_stream_add_event(info, ptr, end_buf, &iwe, IW_EV_UINT_LEN);
|
|
}
|
|
|
|
/* Add frequency */
|
|
@@ -528,7 +529,7 @@
|
|
iwe.u.freq.m = acx_channel_freq[bss->channel - 1] * 100000;
|
|
iwe.u.freq.e = 1;
|
|
log(L_IOCTL, "scan, frequency: %d\n", iwe.u.freq.m);
|
|
- ptr = iwe_stream_add_event(ptr, end_buf, &iwe, IW_EV_FREQ_LEN);
|
|
+ ptr = iwe_stream_add_event(info, ptr, end_buf, &iwe, IW_EV_FREQ_LEN);
|
|
|
|
/* Add link quality */
|
|
iwe.cmd = IWEVQUAL;
|
|
@@ -546,7 +547,7 @@
|
|
iwe.u.qual.updated = 7;
|
|
log(L_IOCTL, "scan, link quality: %d/%d/%d\n",
|
|
iwe.u.qual.level, iwe.u.qual.noise, iwe.u.qual.qual);
|
|
- ptr = iwe_stream_add_event(ptr, end_buf, &iwe, IW_EV_QUAL_LEN);
|
|
+ ptr = iwe_stream_add_event(info, ptr, end_buf, &iwe, IW_EV_QUAL_LEN);
|
|
|
|
/* Add encryption */
|
|
iwe.cmd = SIOCGIWENCODE;
|
|
@@ -556,7 +557,7 @@
|
|
iwe.u.data.flags = IW_ENCODE_DISABLED;
|
|
iwe.u.data.length = 0;
|
|
log(L_IOCTL, "scan, encryption flags: %X\n", iwe.u.data.flags);
|
|
- ptr = iwe_stream_add_point(ptr, end_buf, &iwe, bss->essid);
|
|
+ ptr = iwe_stream_add_point(info, ptr, end_buf, &iwe, bss->essid);
|
|
|
|
/* add rates */
|
|
iwe.cmd = SIOCGIWRATE;
|
|
@@ -570,7 +571,7 @@
|
|
if (rate & 1) {
|
|
iwe.u.bitrate.value = *p * 500000; /* units of 500kb/s */
|
|
log(L_IOCTL, "scan, rate: %d\n", iwe.u.bitrate.value);
|
|
- ptr_rate = iwe_stream_add_value(ptr, ptr_rate, end_buf,
|
|
+ ptr_rate = iwe_stream_add_value(info, ptr, ptr_rate, end_buf,
|
|
&iwe, IW_EV_PARAM_LEN);
|
|
}
|
|
rate >>= 1;
|
|
@@ -625,7 +626,7 @@
|
|
for (i = 0; i < ARRAY_SIZE(adev->sta_list); i++) {
|
|
struct client *bss = &adev->sta_list[i];
|
|
if (!bss->used) continue;
|
|
- ptr = acx_s_scan_add_station(adev, ptr,
|
|
+ ptr = acx_s_scan_add_station(info, adev, ptr,
|
|
extra + IW_SCAN_MAX_DATA, bss);
|
|
}
|
|
dwrq->length = ptr - extra;
|
|
|