Home | History | Annotate | Download | only in wps

Lines Matching refs:pbc

69 static void wps_free_pbc_sessions(struct wps_pbc_session *pbc)
73 while (pbc) {
74 prev = pbc;
75 pbc = pbc->next;
84 int pbc;
120 struct wps_pbc_session *pbc, *prev = NULL;
125 pbc = reg->pbc_sessions;
126 while (pbc) {
127 if (os_memcmp(pbc->addr, addr, ETH_ALEN) == 0 &&
128 os_memcmp(pbc->uuid_e, uuid_e, WPS_UUID_LEN) == 0) {
130 prev->next = pbc->next;
132 reg->pbc_sessions = pbc->next;
135 prev = pbc;
136 pbc = pbc->next;
139 if (!pbc) {
140 pbc = os_zalloc(sizeof(*pbc));
141 if (pbc == NULL)
143 os_memcpy(pbc->addr, addr, ETH_ALEN);
145 os_memcpy(pbc->uuid_e, uuid_e, WPS_UUID_LEN);
148 pbc->next = reg->pbc_sessions;
149 reg->pbc_sessions = pbc;
150 pbc->timestamp = now;
153 prev = pbc;
154 pbc = pbc->next;
156 while (pbc) {
157 if (now.sec > pbc->timestamp.sec + WPS_PBC_WALK_TIME) {
159 wps_free_pbc_sessions(pbc);
162 prev = pbc;
163 pbc = pbc->next;
171 struct wps_pbc_session *pbc, *prev = NULL;
173 pbc = reg->pbc_sessions;
174 while (pbc) {
175 if (os_memcmp(pbc->addr, addr, ETH_ALEN) == 0 &&
176 os_memcmp(pbc->uuid_e, uuid_e, WPS_UUID_LEN) == 0) {
178 prev->next = pbc->next;
180 reg->pbc_sessions = pbc->next;
181 os_free(pbc);
184 prev = pbc;
185 pbc = pbc->next;
194 struct wps_pbc_session *pbc;
199 for (pbc = reg->pbc_sessions; pbc; pbc = pbc->next) {
200 if (now.sec > pbc->timestamp.sec + WPS_PBC_WALK_TIME)
202 if (addr == NULL || os_memcmp(addr, pbc->addr, ETH_ALEN) ||
204 os_memcmp(uuid_e, pbc->uuid_e, WPS_UUID_LEN))
280 u16 id = reg->pbc ? DEV_PW_PUSHBUTTON : DEV_PW_DEFAULT;
300 if (reg->pbc)
331 if (reg->pbc)
457 reg->pbc = 0;
611 reg->pbc = 0;
620 wpa_printf(MSG_DEBUG, "WPS: PBC timed out - disable PBC mode");
632 * PBC mode. The PBC mode will be stopped after walk time (2 minutes) timeout
633 * or when a PBC registration is completed.
638 wpa_printf(MSG_DEBUG, "WPS: PBC overlap - do not start PBC "
643 wpa_printf(MSG_DEBUG, "WPS: Button pushed - PBC mode started");
646 reg->pbc = 1;
658 wpa_printf(MSG_DEBUG, "WPS: PBC completed - stopping PBC mode");
679 * received. This is used to track PBC mode use and to detect possible overlap
708 return; /* Not PBC */
710 wpa_printf(MSG_DEBUG, "WPS: Probe Request for PBC received from "
720 wpa_printf(MSG_DEBUG, "WPS: PBC session overlap detected");
889 if (wps->pbc) {
890 wpa_printf(MSG_DEBUG, "WPS: Use default PIN for PBC");
1936 !wps->wps->registrar->pbc)) {
1947 PBC overlap - deny PBC "
1957 wps->pbc = 1;
1978 if (wps->pbc && wps->wps->registrar->force_pbc_overlap) {
1979 wpa_printf(MSG_DEBUG, "WPS: Reject negotiation due to PBC "
2015 if (wps->pbc && wps->wps->registrar->force_pbc_overlap) {
2016 wpa_printf(MSG_DEBUG, "WPS: Reject negotiation due to PBC "
2122 if (wps->pbc && wps->wps->registrar->force_pbc_overlap) {
2123 wpa_printf(MSG_DEBUG, "WPS: Reject negotiation due to PBC "
2493 if (wps->pbc) {
2586 reg->pbc = 0;