crypto_driver_contexts_key_derivation.h 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. /*
  2. * Declaration of context structures for use with the PSA driver wrapper
  3. * interface. This file contains the context structures for key derivation
  4. * operations.
  5. *
  6. * Warning: This file will be auto-generated in the future.
  7. *
  8. * \note This file may not be included directly. Applications must
  9. * include psa/crypto.h.
  10. *
  11. * \note This header and its content are not part of the Mbed TLS API and
  12. * applications must not depend on it. Its main purpose is to define the
  13. * multi-part state objects of the PSA drivers included in the cryptographic
  14. * library. The definitions of these objects are then used by crypto_struct.h
  15. * to define the implementation-defined types of PSA multi-part state objects.
  16. */
  17. /* Copyright The Mbed TLS Contributors
  18. * SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
  19. */
  20. #ifndef PSA_CRYPTO_DRIVER_CONTEXTS_KEY_DERIVATION_H
  21. #define PSA_CRYPTO_DRIVER_CONTEXTS_KEY_DERIVATION_H
  22. #include "psa/crypto_driver_common.h"
  23. /* Include the context structure definitions for the Mbed TLS software drivers */
  24. #include "psa/crypto_builtin_key_derivation.h"
  25. /* Include the context structure definitions for those drivers that were
  26. * declared during the autogeneration process. */
  27. typedef union {
  28. unsigned dummy; /* Make sure this union is always non-empty */
  29. #if defined(MBEDTLS_PSA_BUILTIN_ALG_HKDF) || \
  30. defined(MBEDTLS_PSA_BUILTIN_ALG_HKDF_EXTRACT) || \
  31. defined(MBEDTLS_PSA_BUILTIN_ALG_HKDF_EXPAND)
  32. psa_hkdf_key_derivation_t MBEDTLS_PRIVATE(hkdf);
  33. #endif
  34. #if defined(MBEDTLS_PSA_BUILTIN_ALG_TLS12_PRF) || \
  35. defined(MBEDTLS_PSA_BUILTIN_ALG_TLS12_PSK_TO_MS)
  36. psa_tls12_prf_key_derivation_t MBEDTLS_PRIVATE(tls12_prf);
  37. #endif
  38. #if defined(MBEDTLS_PSA_BUILTIN_ALG_TLS12_ECJPAKE_TO_PMS)
  39. psa_tls12_ecjpake_to_pms_t MBEDTLS_PRIVATE(tls12_ecjpake_to_pms);
  40. #endif
  41. #if defined(PSA_HAVE_SOFT_PBKDF2)
  42. psa_pbkdf2_key_derivation_t MBEDTLS_PRIVATE(pbkdf2);
  43. #endif
  44. } psa_driver_key_derivation_context_t;
  45. #endif /* PSA_CRYPTO_DRIVER_CONTEXTS_KEY_DERIVATION_H */
  46. /* End of automatically generated file. */