wpa_supplicant / hostapd
2.5
|
WPS Registrar configuration. More...
#include <wps.h>
Data Fields | |
int(* | new_psk_cb )(void *ctx, const u8 *mac_addr, const u8 *p2p_dev_addr, const u8 *psk, size_t psk_len) |
Callback for new PSK. More... | |
int(* | set_ie_cb )(void *ctx, struct wpabuf *beacon_ie, struct wpabuf *probe_resp_ie) |
Callback for WPS IE changes. More... | |
void(* | pin_needed_cb )(void *ctx, const u8 *uuid_e, const struct wps_device_data *dev) |
Callback for requesting a PIN. More... | |
void(* | reg_success_cb )(void *ctx, const u8 *mac_addr, const u8 *uuid_e, const u8 *dev_pw, size_t dev_pw_len) |
Callback for reporting successful registration. More... | |
void(* | set_sel_reg_cb )(void *ctx, int sel_reg, u16 dev_passwd_id, u16 sel_reg_config_methods) |
Callback for reporting selected registrar changes. More... | |
void(* | enrollee_seen_cb )(void *ctx, const u8 *addr, const u8 *uuid_e, const u8 *pri_dev_type, u16 config_methods, u16 dev_password_id, u8 request_type, const char *dev_name) |
Callback for reporting Enrollee based on ProbeReq. More... | |
void * | cb_ctx |
cb_ctx: Higher layer context data for Registrar callbacks | |
int | skip_cred_build |
skip_cred_build: Do not build credential More... | |
const u8 * | extra_cred |
extra_cred: Additional Credential attribute(s) More... | |
size_t | extra_cred_len |
extra_cred_len: Length of extra_cred in octets | |
int | disable_auto_conf |
Disable auto-configuration on first registration. More... | |
int | static_wep_only |
Whether the BSS supports only static WEP. | |
int | dualband |
Whether this is a concurrent dualband AP. | |
int | force_per_enrollee_psk |
Force per-Enrollee random PSK. More... | |
WPS Registrar configuration.
int wps_registrar_config::disable_auto_conf |
Disable auto-configuration on first registration.
By default, the AP that is started in not configured state will generate a random PSK and move to configured state when the first registration protocol run is completed successfully. This option can be used to disable this functionality and leave it up to an external program to take care of configuration. This requires the extra_cred to be set with a suitable Credential and skip_cred_build being used.
void(* wps_registrar_config::enrollee_seen_cb)(void *ctx, const u8 *addr, const u8 *uuid_e, const u8 *pri_dev_type, u16 config_methods, u16 dev_password_id, u8 request_type, const char *dev_name) |
Callback for reporting Enrollee based on ProbeReq.
ctx | Higher layer context data (cb_ctx) |
addr | MAC address of the Enrollee |
uuid_e | UUID of the Enrollee |
pri_dev_type | Primary device type |
config_methods | Config Methods |
dev_password_id | Device Password ID |
request_type | Request Type |
dev_name | Device Name (if available) |
const u8* wps_registrar_config::extra_cred |
extra_cred: Additional Credential attribute(s)
This optional data (set to NULL to disable) can be used to add Credential attribute(s) for other networks into M8. If skip_cred_build is set, this will also override the automatically generated Credential attribute.
int wps_registrar_config::force_per_enrollee_psk |
Force per-Enrollee random PSK.
This forces per-Enrollee random PSK to be generated even if a default PSK is set for a network.
int(* wps_registrar_config::new_psk_cb)(void *ctx, const u8 *mac_addr, const u8 *p2p_dev_addr, const u8 *psk, size_t psk_len) |
Callback for new PSK.
ctx | Higher layer context data (cb_ctx) |
mac_addr | MAC address of the Enrollee |
p2p_dev_addr | P2P Device Address of the Enrollee or all zeros if not |
psk | The new PSK |
psk_len | The length of psk in octets |
This callback is called when a new per-device PSK is provisioned.
void(* wps_registrar_config::pin_needed_cb)(void *ctx, const u8 *uuid_e, const struct wps_device_data *dev) |
Callback for requesting a PIN.
ctx | Higher layer context data (cb_ctx) |
uuid_e | UUID-E of the unknown Enrollee |
dev | Device Data from the unknown Enrollee This callback is called whenever an unknown Enrollee requests to use PIN method and a matching PIN (Device Password) is not found in Registrar data. |
void(* wps_registrar_config::reg_success_cb)(void *ctx, const u8 *mac_addr, const u8 *uuid_e, const u8 *dev_pw, size_t dev_pw_len) |
Callback for reporting successful registration.
ctx | Higher layer context data (cb_ctx) |
mac_addr | MAC address of the Enrollee |
uuid_e | UUID-E of the Enrollee |
dev_pw | Device Password (PIN) used during registration |
dev_pw_len | Length of dev_pw in octets This callback is called whenever an Enrollee completes registration successfully. |
int(* wps_registrar_config::set_ie_cb)(void *ctx, struct wpabuf *beacon_ie, struct wpabuf *probe_resp_ie) |
Callback for WPS IE changes.
ctx | Higher layer context data (cb_ctx) |
beacon_ie | WPS IE for Beacon |
probe_resp_ie | WPS IE for Probe Response |
This callback is called whenever the WPS IE in Beacon or Probe Response frames needs to be changed (AP only). Callee is responsible for freeing the buffers.
void(* wps_registrar_config::set_sel_reg_cb)(void *ctx, int sel_reg, u16 dev_passwd_id, u16 sel_reg_config_methods) |
Callback for reporting selected registrar changes.
ctx | Higher layer context data (cb_ctx) |
sel_reg | Whether the Registrar is selected |
dev_passwd_id | Device Password ID to indicate with method or specific password the Registrar intends to use |
sel_reg_config_methods | Bit field of active config methods This callback is called whenever the Selected Registrar state changes (e.g., a new PIN becomes available or PBC is invoked). This callback is only used by External Registrar implementation; set_ie_cb() is used by AP implementation in similar caes, but it provides the full WPS IE data instead of just the minimal Registrar state information. |
int wps_registrar_config::skip_cred_build |
skip_cred_build: Do not build credential
This option can be used to disable internal code that builds Credential attribute into M8 based on the current network configuration and Enrollee capabilities. The extra_cred data will then be used as the Credential(s).