diff options
-rw-r--r-- | package/acx/patches/004-add_request_info.patch | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/package/acx/patches/004-add_request_info.patch b/package/acx/patches/004-add_request_info.patch new file mode 100644 index 0000000..ff71c75 --- /dev/null +++ b/package/acx/patches/004-add_request_info.patch @@ -0,0 +1,82 @@ +--- 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; + |