Lines Matching refs:data
41 struct wps_data *data = os_zalloc(sizeof(*data)); in wps_init() local
42 if (data == NULL) in wps_init()
44 data->wps = cfg->wps; in wps_init()
45 data->registrar = cfg->registrar; in wps_init()
47 os_memcpy(data->uuid_r, cfg->wps->uuid, WPS_UUID_LEN); in wps_init()
49 os_memcpy(data->mac_addr_e, cfg->wps->dev.mac_addr, ETH_ALEN); in wps_init()
50 os_memcpy(data->uuid_e, cfg->wps->uuid, WPS_UUID_LEN); in wps_init()
53 data->dev_pw_id = cfg->dev_pw_id; in wps_init()
54 data->dev_password = os_memdup(cfg->pin, cfg->pin_len); in wps_init()
55 if (data->dev_password == NULL) { in wps_init()
56 os_free(data); in wps_init()
59 data->dev_password_len = cfg->pin_len; in wps_init()
61 data->dev_password, data->dev_password_len); in wps_init()
67 data->dev_pw_id = cfg->dev_pw_id; in wps_init()
71 data->alt_dev_pw_id = data->dev_pw_id; in wps_init()
72 data->alt_dev_password = data->dev_password; in wps_init()
73 data->alt_dev_password_len = data->dev_password_len; in wps_init()
75 data->dev_pw_id = cfg->wps->ap_nfc_dev_pw_id; in wps_init()
76 data->dev_password = in wps_init()
79 if (data->dev_password == NULL) { in wps_init()
80 os_free(data); in wps_init()
83 data->dev_password_len = wpabuf_len(cfg->wps->ap_nfc_dev_pw); in wps_init()
85 data->dev_password, data->dev_password_len); in wps_init()
89 data->pbc = cfg->pbc; in wps_init()
92 data->dev_pw_id = DEV_PW_PUSHBUTTON; in wps_init()
93 bin_clear_free(data->dev_password, data->dev_password_len); in wps_init()
94 data->dev_password = (u8 *) os_strdup("00000000"); in wps_init()
95 if (data->dev_password == NULL) { in wps_init()
96 os_free(data); in wps_init()
99 data->dev_password_len = 8; in wps_init()
102 data->state = data->registrar ? RECV_M1 : SEND_M1; in wps_init()
119 data->request_type = *attr.request_type; in wps_init()
124 data->new_ap_settings = in wps_init()
126 sizeof(*data->new_ap_settings)); in wps_init()
127 if (data->new_ap_settings == NULL) { in wps_init()
128 bin_clear_free(data->dev_password, in wps_init()
129 data->dev_password_len); in wps_init()
130 os_free(data); in wps_init()
136 os_memcpy(data->peer_dev.mac_addr, cfg->peer_addr, ETH_ALEN); in wps_init()
138 os_memcpy(data->p2p_dev_addr, cfg->p2p_dev_addr, ETH_ALEN); in wps_init()
140 data->use_psk_key = cfg->use_psk_key; in wps_init()
141 data->pbc_in_m1 = cfg->pbc_in_m1; in wps_init()
144 os_memcpy(data->peer_pubkey_hash, cfg->peer_pubkey_hash, in wps_init()
146 data->peer_pubkey_hash_set = 1; in wps_init()
149 data->multi_ap_backhaul_sta = cfg->multi_ap_backhaul_sta; in wps_init()
152 return data; in wps_init()
160 void wps_deinit(struct wps_data *data) in wps_deinit() argument
163 if (data->registrar && data->nfc_pw_token) in wps_deinit()
164 wps_registrar_remove_nfc_pw_token(data->wps->registrar, in wps_deinit()
165 data->nfc_pw_token); in wps_deinit()
169 if (data->wps_pin_revealed) { in wps_deinit()
172 if (data->registrar) in wps_deinit()
173 wps_registrar_invalidate_pin(data->wps->registrar, in wps_deinit()
174 data->uuid_e); in wps_deinit()
175 } else if (data->registrar) in wps_deinit()
176 wps_registrar_unlock_pin(data->wps->registrar, data->uuid_e); in wps_deinit()
179 wpabuf_clear_free(data->dh_privkey); in wps_deinit()
180 wpabuf_free(data->dh_pubkey_e); in wps_deinit()
181 wpabuf_free(data->dh_pubkey_r); in wps_deinit()
182 wpabuf_free(data->last_msg); in wps_deinit()
183 bin_clear_free(data->dev_password, data->dev_password_len); in wps_deinit()
185 bin_clear_free(data->alt_dev_password, data->alt_dev_password_len); in wps_deinit()
186 bin_clear_free(data->new_psk, data->new_psk_len); in wps_deinit()
188 wps_device_data_free(&data->peer_dev); in wps_deinit()
189 bin_clear_free(data->new_ap_settings, sizeof(*data->new_ap_settings)); in wps_deinit()
190 dh5_free(data->dh_ctx); in wps_deinit()
191 os_free(data); in wps_deinit()
624 int wps_attr_text(struct wpabuf *data, char *buf, char *end) in wps_attr_text() argument
634 if (wps_parse_msg(data, attr) < 0) { in wps_attr_text()