wlan_crypto_fils_def.h 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /*
  2. * Copyright (c) 2017 The Linux Foundation. All rights reserved.
  3. *
  4. * Permission to use, copy, modify, and/or distribute this software for
  5. * any purpose with or without fee is hereby granted, provided that the
  6. * above copyright notice and this permission notice appear in all
  7. * copies.
  8. *
  9. * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
  10. * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
  11. * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
  12. * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
  13. * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
  14. * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
  15. * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  16. * PERFORMANCE OF THIS SOFTWARE.
  17. */
  18. #ifndef _WLAN_CRYPTO_FILS_DEF_H_
  19. #define _WLAN_CRYPTO_FILS_DEF_H_
  20. /* Element ID Extension (EID 255) values */
  21. #define WLAN_ELEMID_EXT_ASSOC_DELAY_INFO (1)
  22. #define WLAN_ELEMID_EXT_FILS_REQ_PARAMS (2)
  23. #define WLAN_ELEMID_EXT_FILS_KEY_CONFIRM (3)
  24. #define WLAN_ELEMID_EXT_FILS_SESSION (4)
  25. #define WLAN_ELEMID_EXT_FILS_HLP_CONTAINER (5)
  26. #define WLAN_ELEMID_EXT_FILS_IP_ADDR_ASSIGN (6)
  27. #define WLAN_ELEMID_EXT_KEY_DELIVERY (7)
  28. #define WLAN_ELEMID_EXT_FILS_WRAPPED_DATA (8)
  29. #define WLAN_ELEMID_EXT_FILS_PUBLIC_KEY (12)
  30. #define WLAN_ELEMID_EXT_FILS_NONCE (13)
  31. #define WLAN_MAX_WPA_KEK_LEN (64)
  32. #define WLAN_FILS_NONCE_LEN (16)
  33. /* FILS AAD Crypto key data */
  34. struct wlan_crypto_fils_aad_key {
  35. /* FILS aad ANounce */
  36. uint8_t a_nonce[WLAN_FILS_NONCE_LEN];
  37. /* FILS aad SNounce */
  38. uint8_t s_nonce[WLAN_FILS_NONCE_LEN];
  39. /* FILS aad kek */
  40. uint8_t kek[WLAN_MAX_WPA_KEK_LEN];
  41. /* FILS aad kek length */
  42. uint32_t kek_len;
  43. };
  44. #endif /* end of _WLAN_CRYPTO_FILS_DEF_H_ */