Lines Matching refs:pin
33 u8 *pin; member
43 static void wps_free_pin(struct wps_uuid_pin *pin) in wps_free_pin() argument
45 os_free(pin->pin); in wps_free_pin()
46 os_free(pin); in wps_free_pin()
50 static void wps_remove_pin(struct wps_uuid_pin *pin) in wps_remove_pin() argument
52 dl_list_del(&pin->list); in wps_remove_pin()
53 wps_free_pin(pin); in wps_remove_pin()
59 struct wps_uuid_pin *pin, *prev; in wps_free_pins() local
60 dl_list_for_each_safe(pin, prev, pins, struct wps_uuid_pin, list) in wps_free_pins()
61 wps_remove_pin(pin); in wps_free_pins()
655 const u8 *uuid, const u8 *pin, size_t pin_len, in wps_registrar_add_pin() argument
669 p->pin = os_malloc(pin_len); in wps_registrar_add_pin()
670 if (p->pin == NULL) { in wps_registrar_add_pin()
674 os_memcpy(p->pin, pin, pin_len); in wps_registrar_add_pin()
688 wpa_hexdump_ascii_key(MSG_DEBUG, "WPS: PIN", pin, pin_len); in wps_registrar_add_pin()
707 struct wps_uuid_pin *pin) in wps_registrar_remove_pin() argument
712 if (is_zero_ether_addr(pin->enrollee_addr)) in wps_registrar_remove_pin()
715 addr = pin->enrollee_addr; in wps_registrar_remove_pin()
717 wps_remove_pin(pin); in wps_registrar_remove_pin()
724 struct wps_uuid_pin *pin, *prev; in wps_registrar_expire_pins() local
728 dl_list_for_each_safe(pin, prev, ®->pins, struct wps_uuid_pin, list) in wps_registrar_expire_pins()
730 if ((pin->flags & PIN_EXPIRES) && in wps_registrar_expire_pins()
731 os_time_before(&pin->expiration, &now)) { in wps_registrar_expire_pins()
733 pin->uuid, WPS_UUID_LEN); in wps_registrar_expire_pins()
734 wps_registrar_remove_pin(reg, pin); in wps_registrar_expire_pins()
747 struct wps_uuid_pin *pin, *prev; in wps_registrar_invalidate_wildcard_pin() local
749 dl_list_for_each_safe(pin, prev, ®->pins, struct wps_uuid_pin, list) in wps_registrar_invalidate_wildcard_pin()
751 if (pin->wildcard_uuid) { in wps_registrar_invalidate_wildcard_pin()
753 pin->uuid, WPS_UUID_LEN); in wps_registrar_invalidate_wildcard_pin()
754 wps_registrar_remove_pin(reg, pin); in wps_registrar_invalidate_wildcard_pin()
771 struct wps_uuid_pin *pin, *prev; in wps_registrar_invalidate_pin() local
773 dl_list_for_each_safe(pin, prev, ®->pins, struct wps_uuid_pin, list) in wps_registrar_invalidate_pin()
775 if (os_memcmp(pin->uuid, uuid, WPS_UUID_LEN) == 0) { in wps_registrar_invalidate_pin()
777 pin->uuid, WPS_UUID_LEN); in wps_registrar_invalidate_pin()
778 wps_registrar_remove_pin(reg, pin); in wps_registrar_invalidate_pin()
790 struct wps_uuid_pin *pin, *found = NULL; in wps_registrar_get_pin() local
794 dl_list_for_each(pin, ®->pins, struct wps_uuid_pin, list) { in wps_registrar_get_pin()
795 if (!pin->wildcard_uuid && in wps_registrar_get_pin()
796 os_memcmp(pin->uuid, uuid, WPS_UUID_LEN) == 0) { in wps_registrar_get_pin()
797 found = pin; in wps_registrar_get_pin()
805 dl_list_for_each(pin, ®->pins, struct wps_uuid_pin, list) { in wps_registrar_get_pin()
806 if (pin->wildcard_uuid == 1 || in wps_registrar_get_pin()
807 pin->wildcard_uuid == 2) { in wps_registrar_get_pin()
810 pin->wildcard_uuid++; in wps_registrar_get_pin()
811 os_memcpy(pin->uuid, uuid, WPS_UUID_LEN); in wps_registrar_get_pin()
812 found = pin; in wps_registrar_get_pin()
832 return found->pin; in wps_registrar_get_pin()
848 struct wps_uuid_pin *pin; in wps_registrar_unlock_pin() local
850 dl_list_for_each(pin, ®->pins, struct wps_uuid_pin, list) { in wps_registrar_unlock_pin()
851 if (os_memcmp(pin->uuid, uuid, WPS_UUID_LEN) == 0) { in wps_registrar_unlock_pin()
852 if (pin->wildcard_uuid == 3) { in wps_registrar_unlock_pin()
857 pin->flags &= ~PIN_LOCKED; in wps_registrar_unlock_pin()
1231 const u8 *pin; in wps_get_dev_password() local
1239 pin = (const u8 *) "00000000"; in wps_get_dev_password()
1242 pin = wps_registrar_get_pin(wps->wps->registrar, wps->uuid_e, in wps_get_dev_password()
1245 if (pin == NULL) { in wps_get_dev_password()
1256 os_memcpy(wps->dev_password, pin, pin_len); in wps_get_dev_password()