1 2 #define TEST_NAME "sodium_core" 3 #include "cmptest.h" 4 5 static void 6 misuse_handler(void) 7 { 8 printf("misuse_handler()\n"); 9 exit(0); 10 } 11 12 int 13 main(void) 14 { 15 sodium_set_misuse_handler(NULL); 16 sodium_set_misuse_handler(misuse_handler); 17 sodium_set_misuse_handler(NULL); 18 19 assert(sodium_init() == 1); 20 21 (void) sodium_runtime_has_neon(); 22 (void) sodium_runtime_has_sse2(); 23 (void) sodium_runtime_has_sse3(); 24 (void) sodium_runtime_has_ssse3(); 25 (void) sodium_runtime_has_sse41(); 26 (void) sodium_runtime_has_avx(); 27 (void) sodium_runtime_has_avx2(); 28 (void) sodium_runtime_has_avx512f(); 29 (void) sodium_runtime_has_pclmul(); 30 (void) sodium_runtime_has_aesni(); 31 (void) sodium_runtime_has_rdrand(); 32 33 sodium_set_misuse_handler(misuse_handler); 34 #ifndef __EMSCRIPTEN__ 35 sodium_misuse(); 36 printf("Misuse handler returned\n"); 37 #else 38 printf("misuse_handler()\n"); 39 #endif 40 41 return 0; 42 } 43