Root/package/acx/patches/004-add_request_info.patch

1--- a/ioctl.c
2+++ b/ioctl.c
3@@ -488,6 +488,7 @@ end_unlock:
4 /* helper. not sure whether it's really a _s_leeping fn */
5 static char*
6 acx_s_scan_add_station(
7+ struct iw_request_info *info,
8     acx_device_t *adev,
9     char *ptr,
10     char *end_buf,
11@@ -503,14 +504,14 @@ acx_s_scan_add_station(
12     iwe.u.ap_addr.sa_family = ARPHRD_ETHER;
13     MAC_COPY(iwe.u.ap_addr.sa_data, bss->bssid);
14     acxlog_mac(L_IOCTL, "scan, station address: ", bss->bssid, "\n");
15- ptr = iwe_stream_add_event(ptr, end_buf, &iwe, IW_EV_ADDR_LEN);
16+ ptr = iwe_stream_add_event(info, ptr, end_buf, &iwe, IW_EV_ADDR_LEN);
17 
18     /* Add ESSID */
19     iwe.cmd = SIOCGIWESSID;
20     iwe.u.data.length = bss->essid_len;
21     iwe.u.data.flags = 1;
22     log(L_IOCTL, "scan, essid: %s\n", bss->essid);
23- ptr = iwe_stream_add_point(ptr, end_buf, &iwe, bss->essid);
24+ ptr = iwe_stream_add_point(info, ptr, end_buf, &iwe, bss->essid);
25 
26     /* Add mode */
27     iwe.cmd = SIOCGIWMODE;
28@@ -520,7 +521,7 @@ acx_s_scan_add_station(
29         else
30             iwe.u.mode = IW_MODE_ADHOC;
31         log(L_IOCTL, "scan, mode: %d\n", iwe.u.mode);
32- ptr = iwe_stream_add_event(ptr, end_buf, &iwe, IW_EV_UINT_LEN);
33+ ptr = iwe_stream_add_event(info, ptr, end_buf, &iwe, IW_EV_UINT_LEN);
34     }
35 
36     /* Add frequency */
37@@ -528,7 +529,7 @@ acx_s_scan_add_station(
38     iwe.u.freq.m = acx_channel_freq[bss->channel - 1] * 100000;
39     iwe.u.freq.e = 1;
40     log(L_IOCTL, "scan, frequency: %d\n", iwe.u.freq.m);
41- ptr = iwe_stream_add_event(ptr, end_buf, &iwe, IW_EV_FREQ_LEN);
42+ ptr = iwe_stream_add_event(info, ptr, end_buf, &iwe, IW_EV_FREQ_LEN);
43 
44     /* Add link quality */
45     iwe.cmd = IWEVQUAL;
46@@ -546,7 +547,7 @@ acx_s_scan_add_station(
47     iwe.u.qual.updated = 7;
48     log(L_IOCTL, "scan, link quality: %d/%d/%d\n",
49             iwe.u.qual.level, iwe.u.qual.noise, iwe.u.qual.qual);
50- ptr = iwe_stream_add_event(ptr, end_buf, &iwe, IW_EV_QUAL_LEN);
51+ ptr = iwe_stream_add_event(info, ptr, end_buf, &iwe, IW_EV_QUAL_LEN);
52 
53     /* Add encryption */
54     iwe.cmd = SIOCGIWENCODE;
55@@ -556,7 +557,7 @@ acx_s_scan_add_station(
56         iwe.u.data.flags = IW_ENCODE_DISABLED;
57     iwe.u.data.length = 0;
58     log(L_IOCTL, "scan, encryption flags: %X\n", iwe.u.data.flags);
59- ptr = iwe_stream_add_point(ptr, end_buf, &iwe, bss->essid);
60+ ptr = iwe_stream_add_point(info, ptr, end_buf, &iwe, bss->essid);
61 
62     /* add rates */
63     iwe.cmd = SIOCGIWRATE;
64@@ -570,7 +571,7 @@ acx_s_scan_add_station(
65         if (rate & 1) {
66             iwe.u.bitrate.value = *p * 500000; /* units of 500kb/s */
67             log(L_IOCTL, "scan, rate: %d\n", iwe.u.bitrate.value);
68- ptr_rate = iwe_stream_add_value(ptr, ptr_rate, end_buf,
69+ ptr_rate = iwe_stream_add_value(info, ptr, ptr_rate, end_buf,
70                         &iwe, IW_EV_PARAM_LEN);
71         }
72         rate >>= 1;
73@@ -625,7 +626,7 @@ acx_ioctl_get_scan(
74     for (i = 0; i < ARRAY_SIZE(adev->sta_list); i++) {
75         struct client *bss = &adev->sta_list[i];
76         if (!bss->used) continue;
77- ptr = acx_s_scan_add_station(adev, ptr,
78+ ptr = acx_s_scan_add_station(info, adev, ptr,
79             extra + IW_SCAN_MAX_DATA, bss);
80     }
81     dwrq->length = ptr - extra;
82

Archive Download this file



interactive