Lines Matching defs:wreq
210 struct wi_req *wreq;
213 wreq = malloc(sizeof(*wreq), M_TEMP, M_WAITOK);
214 error = copyin(ifr->ifr_data, wreq, sizeof(*wreq));
217 wreq->wi_len = 0;
218 switch (wreq->wi_type) {
224 strlcpy((char *)&wreq->wi_val[1], hostname,
225 sizeof(wreq->wi_val) - sizeof(wreq->wi_val[0]));
226 wreq->wi_val[0] = htole16(strlen(hostname));
227 wreq->wi_len = (1 + strlen(hostname) + 1) / 2;
231 wreq->wi_val[0] = 0;
232 wreq->wi_len = 1;
235 wreq->wi_val[0] = htole16(ic->ic_bss->ni_esslen);
236 memcpy(&wreq->wi_val[1], ic->ic_bss->ni_essid,
238 wreq->wi_len = (1 + ic->ic_bss->ni_esslen + 1) / 2;
242 wreq->wi_val[0] = htole16(ic->ic_des_esslen);
243 memcpy(&wreq->wi_val[1], ic->ic_des_essid, ic->ic_des_esslen);
244 wreq->wi_len = (1 + ic->ic_des_esslen + 1) / 2;
248 IEEE80211_ADDR_COPY(wreq->wi_val, ic->ic_bss->ni_bssid);
250 memset(wreq->wi_val, 0, IEEE80211_ADDR_LEN);
251 wreq->wi_len = IEEE80211_ADDR_LEN / 2;
254 memset(wreq->wi_val, 0, sizeof(wreq->wi_val));
265 setbit((u_int8_t *)wreq->wi_val, j);
266 wreq->wi_len = j / 16 + 1;
270 wreq->wi_val[0] = htole16(
272 wreq->wi_len = 1;
275 wreq->wi_val[0] = htole16(
277 wreq->wi_len = 1;
280 wreq->wi_val[0] = 0; /* quality */
281 wreq->wi_val[1] = htole16(ic->ic_node_getrssi(ic->ic_bss));
282 wreq->wi_val[2] = 0; /* noise */
283 wreq->wi_len = 3;
286 wreq->wi_val[0] = htole16((ifp->if_flags & IFF_PROMISC) ? 1 : 0);
287 wreq->wi_len = 1;
290 wreq->wi_val[0] = htole16(ic->ic_opmode);
291 wreq->wi_len = 1;
294 IEEE80211_ADDR_COPY(wreq->wi_val, ic->ic_myaddr);
295 wreq->wi_len = IEEE80211_ADDR_LEN / 2;
299 wreq->wi_val[0] = 0; /* auto */
301 wreq->wi_val[0] = htole16(
304 wreq->wi_len = 1;
307 wreq->wi_val[0] = htole16(
310 wreq->wi_len = 1;
313 wreq->wi_val[0] = htole16(ic->ic_fragthreshold);
314 wreq->wi_len = 1;
317 wreq->wi_val[0] = htole16(ic->ic_rtsthreshold);
318 wreq->wi_len = 1;
321 wreq->wi_val[0] =
323 wreq->wi_len = 1;
326 wreq->wi_val[0] = 0; /* no ... not supported */
327 wreq->wi_len = 1;
330 wreq->wi_val[0] = htole16(ic->ic_roaming); /* XXX map */
331 wreq->wi_len = 1;
334 wreq->wi_val[0] = htole16(1); /* low density ... not supp */
335 wreq->wi_len = 1;
338 wreq->wi_val[0] =
340 wreq->wi_len = 1;
343 wreq->wi_val[0] = htole16(ic->ic_lintval);
344 wreq->wi_len = 1;
347 wreq->wi_val[0] = htole16(ic->ic_bss->ni_intval);
348 wreq->wi_len = 1;
351 wreq->wi_val[0] = htole16(1); /* always available */
352 wreq->wi_len = 1;
355 wreq->wi_val[0] = htole16(1); /* TODO: open system only */
356 wreq->wi_len = 1;
359 wreq->wi_val[0] =
361 wreq->wi_len = 1;
364 wreq->wi_val[0] = htole16(ic->ic_def_txkey);
365 wreq->wi_len = 1;
368 keys = (struct wi_ltv_keys *)wreq;
386 wreq->wi_len = sizeof(*keys) / 2;
389 wreq->wi_val[0] = htole16(ic->ic_fragthreshold);
390 wreq->wi_len = 1;
406 args.ap = (void *)((char *)wreq->wi_val + sizeof(i));
407 args.max = (void *)(wreq + 1);
410 memcpy(wreq->wi_val, &args.i, sizeof(args.i));
411 wreq->wi_len = (sizeof(int) +
423 p2 = (struct wi_scan_p2_hdr *)wreq->wi_val;
426 args.max = (void *)(wreq + 1);
431 wreq->wi_len = (sizeof(*p2) +
439 args.wsc = (struct wi_sigcache *) wreq->wi_val;
440 args.max = (void *)(wreq + 1);
442 wreq->wi_len = sizeof(struct wi_sigcache) * args.i / 2;
451 wreq->wi_len++;
452 error = copyout(wreq, ifr->ifr_data, sizeof(*wreq));
455 free(wreq, M_TEMP);
510 struct wi_req *wreq;
513 wreq = malloc(sizeof(*wreq), M_TEMP, M_WAITOK);
514 error = copyin(ifr->ifr_data, wreq, sizeof(*wreq));
517 len = wreq->wi_len ? (wreq->wi_len - 1) * 2 : 0;
518 switch (wreq->wi_type) {
526 if (le16toh(wreq->wi_val[0]) * 2 > len ||
527 le16toh(wreq->wi_val[0]) > IEEE80211_NWID_LEN) {
532 ic->ic_des_esslen = le16toh(wreq->wi_val[0]) * 2;
533 memcpy(ic->ic_des_essid, &wreq->wi_val[1], ic->ic_des_esslen);
542 i = le16toh(wreq->wi_val[0]);
561 if (wreq->wi_val[0] == 0) {
566 if (wreq->wi_val[0] != 0) {
575 switch (le16toh(wreq->wi_val[0])) {
594 if (le16toh(wreq->wi_val[0]) != ic->ic_opmode) {
595 ic->ic_opmode = le16toh(wreq->wi_val[0]);
603 IEEE80211_ADDR_COPY(LLADDR(ifp->if_sadl), wreq->wi_val);
611 if (wreq->wi_val[0] == 0) {
616 rate = 2 * le16toh(wreq->wi_val[0]);
652 ic->ic_fragthreshold = le16toh(wreq->wi_val[0]);
658 ic->ic_rtsthreshold = le16toh(wreq->wi_val[0]);
664 if (wreq->wi_val[0] != 0) {
686 if (wreq->wi_val[0] != 0)
692 i = le16toh(wreq->wi_val[0]);
700 if (le16toh(wreq->wi_val[0]) != 1)
706 if (wreq->wi_val[0] != 0) {
723 ic->ic_lintval = le16toh(wreq->wi_val[0]);
734 i = le16toh(wreq->wi_val[0]);
743 if (wreq->wi_val[0] != 0) {
760 i = le16toh(wreq->wi_val[0]);
769 keys = (struct wi_ltv_keys *)wreq;
794 len = le16toh(wreq->wi_val[0]);
828 if (isclr((u_int8_t *)wreq->wi_val, j))
831 if (wreq->wi_type != WI_RID_CHANNEL_LIST)
841 if (wreq->wi_type == WI_RID_CHANNEL_LIST) {
853 free(wreq, M_TEMP);
856 free(wreq, M_TEMP);