user_settings.h 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. /* user_settings.h
  2. *
  3. * Copyright (C) 2006-2020 wolfSSL Inc.
  4. *
  5. * This file is part of wolfSSL.
  6. *
  7. * wolfSSL is free software; you can redistribute it and/or modify
  8. * it under the terms of the GNU General Public License as published by
  9. * the Free Software Foundation; either version 2 of the License, or
  10. * (at your option) any later version.
  11. *
  12. * wolfSSL is distributed in the hope that it will be useful,
  13. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15. * GNU General Public License for more details.
  16. *
  17. * You should have received a copy of the GNU General Public License
  18. * along with this program; if not, write to the Free Software
  19. * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
  20. */
  21. #define BENCH_EMBEDDED
  22. #define USE_CERT_BUFFERS_2048
  23. /* TLS 1.3 */
  24. #define WOLFSSL_TLS13
  25. #define HAVE_TLS_EXTENSIONS
  26. #define WC_RSA_PSS
  27. #define HAVE_HKDF
  28. #define HAVE_AEAD
  29. #define HAVE_SUPPORTED_CURVES
  30. /* when you want to use SINGLE THREAD */
  31. /* #define SINGLE_THREADED */
  32. #define NO_FILESYSTEM
  33. #define HAVE_AESGCM
  34. /* when you want to use SHA384 */
  35. /* #define WOLFSSL_SHA384 */
  36. #define WOLFSSL_SHA512
  37. #define HAVE_ECC
  38. #define HAVE_CURVE25519
  39. #define CURVE25519_SMALL
  40. #define HAVE_ED25519
  41. /* when you want to use aes counter mode */
  42. /* #define WOLFSSL_AES_DIRECT */
  43. /* #define WOLFSSL_AES_COUNTER */
  44. /* esp32-wroom-32se specific definition */
  45. #if defined(WOLFSSL_ESPWROOM32SE)
  46. #define WOLFSSL_ATECC508A
  47. #define HAVE_PK_CALLBACKS
  48. /* when you want to use a custom slot allocation for ATECC608A */
  49. /* unless your configuration is unusual, you can use default */
  50. /* implementation. */
  51. /* #define CUSTOM_SLOT_ALLOCATION */
  52. #endif
  53. /* rsa primitive specific definition */
  54. #if defined(WOLFSSL_ESPWROOM32) || defined(WOLFSSL_ESPWROOM32SE)
  55. /* Define USE_FAST_MATH and SMALL_STACK */
  56. #define ESP32_USE_RSA_PRIMITIVE
  57. /* threshold for performance adjustment for hw primitive use */
  58. /* X bits of G^X mod P greater than */
  59. #define EPS_RSA_EXPT_XBTIS 36
  60. /* X and Y of X * Y mod P greater than */
  61. #define ESP_RSA_MULM_BITS 2000
  62. #endif
  63. /* debug options */
  64. /* #define DEBUG_WOLFSSL */
  65. /* #define WOLFSSL_ESP32WROOM32_CRYPT_DEBUG */
  66. /* #define WOLFSSL_ATECC508A_DEBUG */
  67. /* date/time */
  68. /* if it cannot adjust time in the device, */
  69. /* enable macro below */
  70. /* #define NO_ASN_TIME */
  71. /* #define XTIME time */
  72. /* when you want not to use HW acceleration */
  73. /* #define NO_ESP32WROOM32_CRYPT */
  74. /* #define NO_WOLFSSL_ESP32WROOM32_CRYPT_HASH*/
  75. /* #define NO_WOLFSSL_ESP32WROOM32_CRYPT_AES */
  76. /* #define NO_WOLFSSL_ESP32WROOM32_CRYPT_RSA_PRI */