Home | History | Annotate | Download | only in wpa_supplicant

Lines Matching refs:drv

37 static int hostapd_ioctl(struct wpa_driver_hostap_data *drv,
44 os_strncpy(iwr.ifr_name, drv->ifname, IFNAMSIZ);
48 if (ioctl(drv->sock, PRISM2_IOCTL_HOSTAPD, &iwr) < 0) {
59 static int wpa_driver_hostap_set_wpa_ie(struct wpa_driver_hostap_data *drv,
75 res = hostapd_ioctl(drv, param, blen, 1);
83 static int prism2param(struct wpa_driver_hostap_data *drv, int param,
90 os_strncpy(iwr.ifr_name, drv->ifname, IFNAMSIZ);
95 if (ioctl(drv->sock, PRISM2_IOCTL_PRISM2_PARAM, &iwr) < 0) {
105 struct wpa_driver_hostap_data *drv = priv;
110 if (!enabled && wpa_driver_hostap_set_wpa_ie(drv, NULL, 0) < 0)
112 if (prism2param(drv, PRISM2_PARAM_HOST_ROAMING, enabled ? 2 : 0) < 0)
114 if (prism2param(drv, PRISM2_PARAM_WPA, enabled) < 0)
157 struct wpa_driver_hostap_data *drv = priv;
218 if (hostapd_ioctl(drv, param, blen, 1)) {
231 struct wpa_driver_hostap_data *drv = priv;
233 return prism2param(drv, PRISM2_PARAM_TKIP_COUNTERMEASURES, enabled);
239 struct wpa_driver_hostap_data *drv = priv;
241 return prism2param(drv, PRISM2_PARAM_DROP_UNENCRYPTED, enabled);
245 static int wpa_driver_hostap_reset(struct wpa_driver_hostap_data *drv,
254 os_strncpy(iwr.ifr_name, drv->ifname, IFNAMSIZ);
258 if (ioctl(drv->sock, PRISM2_IOCTL_RESET, &iwr) < 0) {
266 static int wpa_driver_hostap_mlme(struct wpa_driver_hostap_data *drv,
281 ret = hostapd_ioctl(drv, &param, sizeof(param), 1);
284 ret = wpa_driver_hostap_reset(drv, 2);
293 struct wpa_driver_hostap_data *drv = priv;
295 return wpa_driver_hostap_mlme(drv, addr, MLME_STA_DEAUTH,
303 struct wpa_driver_hostap_data *drv = priv;
305 return wpa_driver_hostap_mlme(drv, addr, MLME_STA_DISASSOC,
314 struct wpa_driver_hostap_data *drv = priv;
320 if (params->mode != drv->current_mode) {
323 if (prism2param(drv, PRISM2_PARAM_HOST_ROAMING,
329 drv->current_mode = params->mode;
332 if (prism2param(drv, PRISM2_PARAM_PRIVACY_INVOKED,
335 if (wpa_driver_hostap_set_wpa_ie(drv, params->wpa_ie,
338 if (wpa_driver_wext_set_mode(drv->wext, params->mode) < 0)
341 wpa_driver_wext_set_freq(drv->wext, params->freq) < 0)
343 if (wpa_driver_wext_set_ssid(drv->wext, params->ssid, params->ssid_len)
346 if (wpa_driver_wext_set_bssid(drv->wext, params->bssid) < 0)
358 if (prism2param(drv, PRISM2_PARAM_IEEE_802_1X,
372 struct wpa_driver_hostap_data *drv = priv;
381 return wpa_driver_wext_scan(drv->wext, ssid, ssid_len);
391 ret = hostapd_ioctl(drv, &param, sizeof(param), 1);
395 eloop_cancel_timeout(wpa_driver_wext_scan_timeout, drv->wext,
396 drv->ctx);
397 eloop_register_timeout(3, 0, wpa_driver_wext_scan_timeout, drv->wext,
398 drv->ctx);
406 struct wpa_driver_hostap_data *drv = priv;
418 return prism2param(drv, PRISM2_PARAM_AP_AUTH_ALGS, algs);
424 struct wpa_driver_hostap_data *drv = priv;
425 return wpa_driver_wext_get_bssid(drv->wext, bssid);
431 struct wpa_driver_hostap_data *drv = priv;
432 return wpa_driver_wext_get_ssid(drv->wext, ssid);
440 struct wpa_driver_hostap_data *drv = priv;
441 return wpa_driver_wext_get_scan_results(drv->wext, results, max_size);
447 struct wpa_driver_hostap_data *drv = priv;
448 return wpa_driver_wext_set_operstate(drv->wext, state);
454 struct wpa_driver_hostap_data *drv;
456 drv = os_zalloc(sizeof(*drv));
457 if (drv == NULL)
459 drv->wext = wpa_driver_wext_init(ctx, ifname);
460 if (drv->wext == NULL) {
461 os_free(drv);
465 drv->ctx = ctx;
466 os_strncpy(drv->ifname, ifname, sizeof(drv->ifname));
467 drv->sock = socket(PF_INET, SOCK_DGRAM, 0);
468 if (drv->sock < 0) {
470 wpa_driver_wext_deinit(drv->wext);
471 os_free(drv);
483 wpa_driver_wext_alternative_ifindex(drv->wext, ifname2);
486 return drv;
492 struct wpa_driver_hostap_data *drv = priv;
493 wpa_driver_wext_deinit(drv->wext);
494 close(drv->sock);
495 os_free(drv);