user_settings.h 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. /* user_settings.h
  2. *
  3. * Copyright (C) 2006-2023 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. #if defined(WOLFSSL_RENESAS_SCEPROTECT)
  22. /* FSP SM stands for Flexible Software Package Security Module
  23. * WOLFSSL_RENESAS_FSPSM enables fundamental code when it uses.
  24. * e.g. Open/Close/Random generator
  25. * WOLFSSL_RENESAS_FSPSPM_TLS enables TLS related code for FSP SM
  26. * e.g. Certificate verification, Master Secret Generation
  27. * WOLFSSL_RENESAS_SCEPROTECT enables specific code for SCE if needed
  28. */
  29. #define WOLFSSL_RENESAS_FSPSM
  30. #define WOLFSSL_RENESAS_FSPSM_TLS
  31. #endif
  32. /* XXX_CRYPTONLY definition enables FSP SM module for Crypto only use.
  33. * Therefore, it disables TLS related API use
  34. */
  35. /* #define WOLFSSL_RENESAS_SCEPROTECT_CRYPTONLY */
  36. #if defined(WOLFSSL_RENESAS_SCEPROTECT_CRYPTONLY)
  37. #undef WOLFSSL_RENESAS_FSPSM_TLS
  38. #define WOLFSSL_RENESAS_FSPSM_CRYPTONLY
  39. #if !defined(WOLFSSL_RENESAS_SCEPROTECT)
  40. #define WOLFSSL_RENESAS_SCEPROTECT
  41. #endif
  42. #endif
  43. /* Operating Environment and Threading */
  44. #define FREERTOS
  45. #define FREERTOS_TCP
  46. #define NO_MAIN_DRIVER
  47. #define BENCH_EMBEDDED
  48. #define NO_WRITEV
  49. #define WOLFSSL_NO_FLOAT_FMT
  50. #define NO_DEV_RANDOM
  51. #define SIZEOF_LONG_LONG 8
  52. #define NO_WOLFSSL_DIR
  53. #define WOLFSSL_NO_CURRDIR
  54. #define NO_WOLF_C99
  55. #define NO_MULTIBYTE_PRINT
  56. #define NO_FILESYSTEM
  57. #define XVALIDATEDATE(d, f,t) (0)
  58. #define TFM_TIMING_RESISTANT
  59. #define ECC_TIMING_RESISTANT
  60. #define WC_RSA_BLINDING
  61. #define HAVE_AESGCM
  62. #define WOLFSSL_SHA512
  63. #define HAVE_ECC
  64. #define HAVE_CURVE25519
  65. #define CURVE25519_SMALL
  66. #define WOLFSSL_SMALL_STACK
  67. #define USE_FAST_MATH
  68. /* static RSA */
  69. #define WOLFSSL_STATIC_RSA
  70. /* SEGGER printf */
  71. #define USE_SEGGER_RTT_PRINTF
  72. #ifdef USE_SEGGER_RTT_PRINTF
  73. int myprintf(const char * sFormat, ...);
  74. #undef printf
  75. #define printf myprintf
  76. #endif
  77. /* Enable the following definition to use TLS 1.3
  78. * For TLS1.3 use "extended-master" needs to turn on
  79. */
  80. /* #define WOLFSSL_TLS13 */
  81. #if defined(WOLFSSL_TLS13)
  82. #include <sys/time.h>
  83. #define HAVE_FFDHE_2048
  84. #define HAVE_HKDF
  85. #define WC_RSA_PSS
  86. #define HAVE_TLS_EXTENSIONS
  87. #define HAVE_SUPPORTED_CURVES
  88. #endif
  89. #define WOLF_CRYPTO_CB
  90. #if defined(WOLFSSL_RENESAS_SCEPROTECT_CRYPTONLY)
  91. #define HAVE_RENESAS_SYNC
  92. #define WC_USE_DEVID 7890
  93. #define NO_AES_192
  94. #define NO_SW_BENCH
  95. #endif
  96. #if defined(WOLFSSL_RENESAS_SCEPROTECT_CRYPTONLY)
  97. #define WOLFSSL_KEY_GEN
  98. #endif
  99. #define CUSTOM_RAND_GENERATE_BLOCK wc_fspsm_GenerateRandBlock
  100. /* use original asn parsing */
  101. #define WOLFSSL_ASN_ORIGINAL