eap_ikev2_common.h 832 B

1234567891011121314151617181920212223242526272829
  1. /*
  2. * EAP-IKEv2 definitions
  3. * Copyright (c) 2007, Jouni Malinen <j@w1.fi>
  4. *
  5. * This software may be distributed under the terms of the BSD license.
  6. * See README for more details.
  7. */
  8. #ifndef EAP_IKEV2_COMMON_H
  9. #define EAP_IKEV2_COMMON_H
  10. #define IKEV2_FLAGS_LENGTH_INCLUDED 0x80
  11. #define IKEV2_FLAGS_MORE_FRAGMENTS 0x40
  12. #define IKEV2_FLAGS_ICV_INCLUDED 0x20
  13. #define IKEV2_FRAGMENT_SIZE 1400
  14. struct ikev2_keys;
  15. int eap_ikev2_derive_keymat(int prf, struct ikev2_keys *keys,
  16. const u8 *i_nonce, size_t i_nonce_len,
  17. const u8 *r_nonce, size_t r_nonce_len,
  18. u8 *keymat);
  19. struct wpabuf * eap_ikev2_build_frag_ack(u8 id, u8 code);
  20. int eap_ikev2_validate_icv(int integ_alg, struct ikev2_keys *keys,
  21. int initiator, const struct wpabuf *msg,
  22. const u8 *pos, const u8 *end);
  23. #endif /* EAP_IKEV2_COMMON_H */