Classes |
struct | oob_conf_data |
struct | oob_device_data |
struct | oob_nfc_device_data |
struct | upnp_pending_message |
struct | wps_config |
struct | wps_context |
struct | wps_credential |
struct | wps_device_data |
union | wps_event_data |
struct | wps_event_data::wps_event_er_ap |
struct | wps_event_data::wps_event_er_enrollee |
struct | wps_event_data::wps_event_fail |
struct | wps_event_data::wps_event_m2d |
struct | wps_event_data::wps_event_pwd_auth_fail |
struct | wps_registrar_config |
Defines |
#define | WPS_DEV_TYPE_BUFSIZE 21 |
#define | WPS_DEV_TYPE_LEN 8 |
Enumerations |
enum | wps_event {
WPS_EV_M2D,
WPS_EV_FAIL,
WPS_EV_SUCCESS,
WPS_EV_PWD_AUTH_FAIL,
WPS_EV_PBC_OVERLAP,
WPS_EV_PBC_TIMEOUT,
WPS_EV_ER_AP_ADD,
WPS_EV_ER_AP_REMOVE,
WPS_EV_ER_ENROLLEE_ADD,
WPS_EV_ER_ENROLLEE_REMOVE
} |
enum | wps_process_res { WPS_DONE,
WPS_CONTINUE,
WPS_FAILURE,
WPS_PENDING
} |
enum | wsc_op_code {
WSC_UPnP = 0,
WSC_Start = 0x01,
WSC_ACK = 0x02,
WSC_NACK = 0x03,
WSC_MSG = 0x04,
WSC_Done = 0x05,
WSC_FRAG_ACK = 0x06
} |
Functions |
void | uuid_gen_mac_addr (const u8 *mac_addr, u8 *uuid) |
int | wps_attr_text (struct wpabuf *data, char *buf, char *end) |
struct wpabuf * | wps_build_assoc_req_ie (enum wps_request_type req_type) |
struct wpabuf * | wps_build_probe_req_ie (int pbc, struct wps_device_data *dev, const u8 *uuid, enum wps_request_type req_type) |
u16 | wps_config_methods_str2bin (const char *str) |
void | wps_deinit (struct wps_data *data) |
char * | wps_dev_type_bin2str (const u8 dev_type[WPS_DEV_TYPE_LEN], char *buf, size_t buf_len) |
int | wps_dev_type_str2bin (const char *str, u8 dev_type[WPS_DEV_TYPE_LEN]) |
void | wps_er_deinit (struct wps_er *er, void(*cb)(void *ctx), void *ctx) |
struct wps_er * | wps_er_init (struct wps_context *wps, const char *ifname) |
int | wps_er_learn (struct wps_er *er, const u8 *uuid, const u8 *pin, size_t pin_len) |
int | wps_er_pbc (struct wps_er *er, const u8 *uuid) |
void | wps_er_refresh (struct wps_er *er) |
void | wps_er_set_sel_reg (struct wps_er *er, int sel_reg, u16 dev_passwd_id, u16 sel_reg_config_methods) |
void | wps_free_pending_msgs (struct upnp_pending_message *msgs) |
unsigned int | wps_generate_pin (void) |
struct wpabuf * | wps_get_msg (struct wps_data *wps, enum wsc_op_code *op_code) |
struct oob_device_data * | wps_get_oob_device (char *device_type) |
int | wps_get_oob_method (char *method) |
struct oob_nfc_device_data * | wps_get_oob_nfc_device (char *device_name) |
const u8 * | wps_get_uuid_e (const struct wpabuf *msg) |
struct wps_data * | wps_init (const struct wps_config *cfg) |
int | wps_is_selected_pbc_registrar (const struct wpabuf *msg) |
int | wps_is_selected_pin_registrar (const struct wpabuf *msg) |
unsigned int | wps_pin_checksum (unsigned int pin) |
unsigned int | wps_pin_valid (unsigned int pin) |
enum wps_process_res | wps_process_msg (struct wps_data *wps, enum wsc_op_code op_code, const struct wpabuf *msg) |
int | wps_process_oob (struct wps_context *wps, struct oob_device_data *oob_dev, int registrar) |
int | wps_registrar_add_pin (struct wps_registrar *reg, const u8 *uuid, const u8 *pin, size_t pin_len, int timeout) |
int | wps_registrar_button_pushed (struct wps_registrar *reg) |
void | wps_registrar_deinit (struct wps_registrar *reg) |
int | wps_registrar_get_info (struct wps_registrar *reg, const u8 *addr, char *buf, size_t buflen) |
struct wps_registrar * | wps_registrar_init (struct wps_context *wps, const struct wps_registrar_config *cfg) |
int | wps_registrar_invalidate_pin (struct wps_registrar *reg, const u8 *uuid) |
void | wps_registrar_probe_req_rx (struct wps_registrar *reg, const u8 *addr, const struct wpabuf *wps_data) |
int | wps_registrar_unlock_pin (struct wps_registrar *reg, const u8 *uuid) |
int | wps_registrar_update_ie (struct wps_registrar *reg) |
wps_process_msg - Process a WPS message : WPS Registration protocol data from wps_init() : Message OP Code : Message data Returns: Processing result
This function is used to process WPS messages with OP Codes WSC_ACK, WSC_NACK, WSC_MSG, and WSC_Done. The caller (e.g., EAP server/peer) is responsible for reassembling the messages before calling this function. Response to this message is built by calling wps_get_msg().
Definition at line 153 of file wps.c.