1 2 #ifndef USER_SETTINGS_H 3 #define USER_SETTINGS_H 4 5 6 /* Default build with fast math */ 7 8 9 /* Slower build but uses less memory */ 10 //#define BUILD_B 11 12 /* Performant build but uses more memory */ 13 //#define BUILD_C 14 15 16 17 /* Used for getting random value for seeding RNG */ 18 #define WOLFSSL_NETBURNER 19 #define WOLFSSL_MCF5441X 20 21 /* environment settings */ 22 #define NO_WRITEV 23 #define WOLFSSL_NO_SOCK 24 #define NO_WOLFSSL_DIR 25 26 /* with USE_FAST_MATH smallstack is used to fit in the default stack size */ 27 #define WOLFSSL_SMALL_STACK 28 29 30 /* enable features off by default */ 31 #define WOLFSSL_SHA512 32 // OPENSSL_EXTRA uses a lot more memory but is needed in order to enable 33 // compatibility layer API 34 #define OPENSSL_EXTRA 35 36 // additional RSA padding schemes 37 #define WC_RSA_NO_PADDING 38 #define WC_RSA_PSS 39 40 // uncomment and add wolfSSL_Debugging_ON() to app for debug messages 41 //#define DEBUG_WOLFSSL 42 43 44 /* disable features that are on by default */ 45 #define WOLFCRYPT_ONLY 46 #define NO_FILESYSTEM 47 #define SINGLE_THREADED 48 49 #define NO_ASN_TIME 50 #define NO_PWDBASED 51 #define NO_HC128 52 #define NO_RABBIT 53 #define NO_RC4 54 #define NO_DSA 55 #define NO_DES3 56 #define NO_DH 57 #define NO_MD4 58 59 60 #define USE_FAST_MATH 61 #ifdef BUILD_B 62 #define RSA_LOW_MEM 63 #define USE_SLOW_SHA 64 #define USE_SLOW_SHA256 65 #define NO_ERROR_STRINGS 66 #define USE_FAST_MATH 67 #endif 68 69 #ifdef BUILD_C 70 #define WOLFSSL_HAVE_SP_RSA 71 #define SP_WORD_SIZE 32 72 #endif 73 74 /* hardening against side channel attacks */ 75 #if defined(USE_FAST_MATH) 76 #define TFM_TIMING_RESISTANT 77 #ifdef HAVE_ECC 78 #define ECC_TIMING_RESISTANT 79 #endif 80 #endif /* USE_FAST_MATH */ 81 #ifndef NO_RSA 82 /* this slows down RSA operations but increases side channel resistance */ 83 #define WC_RSA_BLINDING 84 #endif 85 86 #endif /* USER_SETTINGS_H */ 87 88