#ifndef _PYTHON_HACL_NAMESPACES_H #define _PYTHON_HACL_NAMESPACES_H /* * C's excuse for namespaces: Use globally unique names to avoid linkage * conflicts with builds linking or dynamically loading other code potentially * using HACL* libraries. * * Something like this to generate new entries for the list: nm *.o | grep Hacl | cut -c 20- | sort | uniq | grep -v python_hashlib | egrep ^_ | gsed 's/_\(.*\)/#define \1 python_hashlib_\1/' */ #define Hacl_Hash_SHA2_state_sha2_224_s python_hashlib_Hacl_Hash_SHA2_state_sha2_224_s #define Hacl_Hash_SHA2_state_sha2_224 python_hashlib_Hacl_Hash_SHA2_state_sha2_224 #define Hacl_Hash_SHA2_state_sha2_256 python_hashlib_Hacl_Hash_SHA2_state_sha2_256 #define Hacl_Hash_SHA2_state_sha2_384_s python_hashlib_Hacl_Hash_SHA2_state_sha2_384_s #define Hacl_Hash_SHA2_state_sha2_384 python_hashlib_Hacl_Hash_SHA2_state_sha2_384 #define Hacl_Hash_SHA2_state_sha2_512 python_hashlib_Hacl_Hash_SHA2_state_sha2_512 #define Hacl_Hash_SHA2_malloc_256 python_hashlib_Hacl_Hash_SHA2_malloc_256 #define Hacl_Hash_SHA2_malloc_224 python_hashlib_Hacl_Hash_SHA2_malloc_224 #define Hacl_Hash_SHA2_malloc_512 python_hashlib_Hacl_Hash_SHA2_malloc_512 #define Hacl_Hash_SHA2_malloc_384 python_hashlib_Hacl_Hash_SHA2_malloc_384 #define Hacl_Hash_SHA2_copy_256 python_hashlib_Hacl_Hash_SHA2_copy_256 #define Hacl_Hash_SHA2_copy_224 python_hashlib_Hacl_Hash_SHA2_copy_224 #define Hacl_Hash_SHA2_copy_512 python_hashlib_Hacl_Hash_SHA2_copy_512 #define Hacl_Hash_SHA2_copy_384 python_hashlib_Hacl_Hash_SHA2_copy_384 #define Hacl_Hash_SHA2_init_256 python_hashlib_Hacl_Hash_SHA2_init_256 #define Hacl_Hash_SHA2_init_224 python_hashlib_Hacl_Hash_SHA2_init_224 #define Hacl_Hash_SHA2_init_512 python_hashlib_Hacl_Hash_SHA2_init_512 #define Hacl_Hash_SHA2_init_384 python_hashlib_Hacl_Hash_SHA2_init_384 #define Hacl_SHA2_Scalar32_sha512_init python_hashlib_Hacl_SHA2_Scalar32_sha512_init #define Hacl_Hash_SHA2_update_256 python_hashlib_Hacl_Hash_SHA2_update_256 #define Hacl_Hash_SHA2_update_224 python_hashlib_Hacl_Hash_SHA2_update_224 #define Hacl_Hash_SHA2_update_512 python_hashlib_Hacl_Hash_SHA2_update_512 #define Hacl_Hash_SHA2_update_384 python_hashlib_Hacl_Hash_SHA2_update_384 #define Hacl_Hash_SHA2_digest_256 python_hashlib_Hacl_Hash_SHA2_digest_256 #define Hacl_Hash_SHA2_digest_224 python_hashlib_Hacl_Hash_SHA2_digest_224 #define Hacl_Hash_SHA2_digest_512 python_hashlib_Hacl_Hash_SHA2_digest_512 #define Hacl_Hash_SHA2_digest_384 python_hashlib_Hacl_Hash_SHA2_digest_384 #define Hacl_Hash_SHA2_free_256 python_hashlib_Hacl_Hash_SHA2_free_256 #define Hacl_Hash_SHA2_free_224 python_hashlib_Hacl_Hash_SHA2_free_224 #define Hacl_Hash_SHA2_free_512 python_hashlib_Hacl_Hash_SHA2_free_512 #define Hacl_Hash_SHA2_free_384 python_hashlib_Hacl_Hash_SHA2_free_384 #define Hacl_Hash_SHA2_sha256 python_hashlib_Hacl_Hash_SHA2_sha256 #define Hacl_Hash_SHA2_sha224 python_hashlib_Hacl_Hash_SHA2_sha224 #define Hacl_Hash_SHA2_sha512 python_hashlib_Hacl_Hash_SHA2_sha512 #define Hacl_Hash_SHA2_sha384 python_hashlib_Hacl_Hash_SHA2_sha384 #define Hacl_Hash_MD5_malloc python_hashlib_Hacl_Hash_MD5_malloc #define Hacl_Hash_MD5_init python_hashlib_Hacl_Hash_MD5_init #define Hacl_Hash_MD5_update python_hashlib_Hacl_Hash_MD5_update #define Hacl_Hash_MD5_digest python_hashlib_Hacl_Hash_MD5_digest #define Hacl_Hash_MD5_free python_hashlib_Hacl_Hash_MD5_free #define Hacl_Hash_MD5_copy python_hashlib_Hacl_Hash_MD5_copy #define Hacl_Hash_MD5_hash python_hashlib_Hacl_Hash_MD5_hash #define Hacl_Hash_SHA1_malloc python_hashlib_Hacl_Hash_SHA1_malloc #define Hacl_Hash_SHA1_init python_hashlib_Hacl_Hash_SHA1_init #define Hacl_Hash_SHA1_update python_hashlib_Hacl_Hash_SHA1_update #define Hacl_Hash_SHA1_digest python_hashlib_Hacl_Hash_SHA1_digest #define Hacl_Hash_SHA1_free python_hashlib_Hacl_Hash_SHA1_free #define Hacl_Hash_SHA1_copy python_hashlib_Hacl_Hash_SHA1_copy #define Hacl_Hash_SHA1_hash python_hashlib_Hacl_Hash_SHA1_hash #define Hacl_Hash_SHA3_update_last_sha3 python_hashlib_Hacl_Hash_SHA3_update_last_sha3 #define Hacl_Hash_SHA3_update_multi_sha3 python_hashlib_Hacl_Hash_SHA3_update_multi_sha3 #define Hacl_Impl_SHA3_absorb_inner python_hashlib_Hacl_Impl_SHA3_absorb_inner #define Hacl_Impl_SHA3_keccak python_hashlib_Hacl_Impl_SHA3_keccak #define Hacl_Impl_SHA3_loadState python_hashlib_Hacl_Impl_SHA3_loadState #define Hacl_Impl_SHA3_squeeze python_hashlib_Hacl_Impl_SHA3_squeeze #define Hacl_Impl_SHA3_state_permute python_hashlib_Hacl_Impl_SHA3_state_permute #define Hacl_SHA3_sha3_224 python_hashlib_Hacl_SHA3_sha3_224 #define Hacl_SHA3_sha3_256 python_hashlib_Hacl_SHA3_sha3_256 #define Hacl_SHA3_sha3_384 python_hashlib_Hacl_SHA3_sha3_384 #define Hacl_SHA3_sha3_512 python_hashlib_Hacl_SHA3_sha3_512 #define Hacl_SHA3_shake128_hacl python_hashlib_Hacl_SHA3_shake128_hacl #define Hacl_SHA3_shake256_hacl python_hashlib_Hacl_SHA3_shake256_hacl #define Hacl_Hash_SHA3_block_len python_hashlib_Hacl_Hash_SHA3_block_len #define Hacl_Hash_SHA3_copy python_hashlib_Hacl_Hash_SHA3_copy #define Hacl_Hash_SHA3_digest python_hashlib_Hacl_Hash_SHA3_digest #define Hacl_Hash_SHA3_free python_hashlib_Hacl_Hash_SHA3_free #define Hacl_Hash_SHA3_get_alg python_hashlib_Hacl_Hash_SHA3_get_alg #define Hacl_Hash_SHA3_hash_len python_hashlib_Hacl_Hash_SHA3_hash_len #define Hacl_Hash_SHA3_is_shake python_hashlib_Hacl_Hash_SHA3_is_shake #define Hacl_Hash_SHA3_malloc python_hashlib_Hacl_Hash_SHA3_malloc #define Hacl_Hash_SHA3_reset python_hashlib_Hacl_Hash_SHA3_reset #define Hacl_Hash_SHA3_update python_hashlib_Hacl_Hash_SHA3_update #define Hacl_Hash_SHA3_squeeze python_hashlib_Hacl_Hash_SHA3_squeeze #define Hacl_Hash_Blake2b_Simd256_copy python_hashlib_Hacl_Hash_Blake2b_Simd256_copy #define Hacl_Hash_Blake2b_Simd256_digest python_hashlib_Hacl_Hash_Blake2b_Simd256_digest #define Hacl_Hash_Blake2b_Simd256_finish python_hashlib_Hacl_Hash_Blake2b_Simd256_finish #define Hacl_Hash_Blake2b_Simd256_free python_hashlib_Hacl_Hash_Blake2b_Simd256_free #define Hacl_Hash_Blake2b_Simd256_hash_with_key python_hashlib_Hacl_Hash_Blake2b_Simd256_hash_with_key #define Hacl_Hash_Blake2b_Simd256_hash_with_key_and_params python_hashlib_Hacl_Hash_Blake2b_Simd256_hash_with_key_and_params #define Hacl_Hash_Blake2b_Simd256_info python_hashlib_Hacl_Hash_Blake2b_Simd256_info #define Hacl_Hash_Blake2b_Simd256_init python_hashlib_Hacl_Hash_Blake2b_Simd256_init #define Hacl_Hash_Blake2b_Simd256_load_state256b_from_state32 python_hashlib_Hacl_Hash_Blake2b_Simd256_load_state256b_from_state32 #define Hacl_Hash_Blake2b_Simd256_malloc python_hashlib_Hacl_Hash_Blake2b_Simd256_malloc #define Hacl_Hash_Blake2b_Simd256_malloc_with_key python_hashlib_Hacl_Hash_Blake2b_Simd256_malloc_with_key #define Hacl_Hash_Blake2b_Simd256_malloc_with_key0 python_hashlib_Hacl_Hash_Blake2b_Simd256_malloc_with_key0 #define Hacl_Hash_Blake2b_Simd256_malloc_with_params_and_key python_hashlib_Hacl_Hash_Blake2b_Simd256_malloc_with_params_and_key #define Hacl_Hash_Blake2b_Simd256_reset python_hashlib_Hacl_Hash_Blake2b_Simd256_reset #define Hacl_Hash_Blake2b_Simd256_reset_with_key python_hashlib_Hacl_Hash_Blake2b_Simd256_reset_with_key #define Hacl_Hash_Blake2b_Simd256_reset_with_key_and_params python_hashlib_Hacl_Hash_Blake2b_Simd256_reset_with_key_and_params #define Hacl_Hash_Blake2b_Simd256_store_state256b_to_state32 python_hashlib_Hacl_Hash_Blake2b_Simd256_store_state256b_to_state32 #define Hacl_Hash_Blake2b_Simd256_update python_hashlib_Hacl_Hash_Blake2b_Simd256_update #define Hacl_Hash_Blake2b_Simd256_update_last python_hashlib_Hacl_Hash_Blake2b_Simd256_update_last #define Hacl_Hash_Blake2b_Simd256_update_multi python_hashlib_Hacl_Hash_Blake2b_Simd256_update_multi #define Hacl_Hash_Blake2b_copy python_hashlib_Hacl_Hash_Blake2b_copy #define Hacl_Hash_Blake2b_digest python_hashlib_Hacl_Hash_Blake2b_digest #define Hacl_Hash_Blake2b_finish python_hashlib_Hacl_Hash_Blake2b_finish #define Hacl_Hash_Blake2b_free python_hashlib_Hacl_Hash_Blake2b_free #define Hacl_Hash_Blake2b_hash_with_key python_hashlib_Hacl_Hash_Blake2b_hash_with_key #define Hacl_Hash_Blake2b_hash_with_key_and_params python_hashlib_Hacl_Hash_Blake2b_hash_with_key_and_params #define Hacl_Hash_Blake2b_info python_hashlib_Hacl_Hash_Blake2b_info #define Hacl_Hash_Blake2b_init python_hashlib_Hacl_Hash_Blake2b_init #define Hacl_Hash_Blake2b_malloc python_hashlib_Hacl_Hash_Blake2b_malloc #define Hacl_Hash_Blake2b_malloc_with_key python_hashlib_Hacl_Hash_Blake2b_malloc_with_key #define Hacl_Hash_Blake2b_malloc_with_params_and_key python_hashlib_Hacl_Hash_Blake2b_malloc_with_params_and_key #define Hacl_Hash_Blake2b_reset python_hashlib_Hacl_Hash_Blake2b_reset #define Hacl_Hash_Blake2b_reset_with_key python_hashlib_Hacl_Hash_Blake2b_reset_with_key #define Hacl_Hash_Blake2b_reset_with_key_and_params python_hashlib_Hacl_Hash_Blake2b_reset_with_key_and_params #define Hacl_Hash_Blake2b_update python_hashlib_Hacl_Hash_Blake2b_update #define Hacl_Hash_Blake2b_update_last python_hashlib_Hacl_Hash_Blake2b_update_last #define Hacl_Hash_Blake2b_update_multi python_hashlib_Hacl_Hash_Blake2b_update_multi #define Hacl_Hash_Blake2s_Simd128_copy python_hashlib_Hacl_Hash_Blake2s_Simd128_copy #define Hacl_Hash_Blake2s_Simd128_digest python_hashlib_Hacl_Hash_Blake2s_Simd128_digest #define Hacl_Hash_Blake2s_Simd128_finish python_hashlib_Hacl_Hash_Blake2s_Simd128_finish #define Hacl_Hash_Blake2s_Simd128_free python_hashlib_Hacl_Hash_Blake2s_Simd128_free #define Hacl_Hash_Blake2s_Simd128_hash_with_key python_hashlib_Hacl_Hash_Blake2s_Simd128_hash_with_key #define Hacl_Hash_Blake2s_Simd128_hash_with_key_and_params python_hashlib_Hacl_Hash_Blake2s_Simd128_hash_with_key_and_params #define Hacl_Hash_Blake2s_Simd128_info python_hashlib_Hacl_Hash_Blake2s_Simd128_info #define Hacl_Hash_Blake2s_Simd128_init python_hashlib_Hacl_Hash_Blake2s_Simd128_init #define Hacl_Hash_Blake2s_Simd128_load_state128s_from_state32 python_hashlib_Hacl_Hash_Blake2s_Simd128_load_state128s_from_state32 #define Hacl_Hash_Blake2s_Simd128_malloc python_hashlib_Hacl_Hash_Blake2s_Simd128_malloc #define Hacl_Hash_Blake2s_Simd128_malloc_with_key python_hashlib_Hacl_Hash_Blake2s_Simd128_malloc_with_key #define Hacl_Hash_Blake2s_Simd128_malloc_with_key0 python_hashlib_Hacl_Hash_Blake2s_Simd128_malloc_with_key0 #define Hacl_Hash_Blake2s_Simd128_malloc_with_params_and_key python_hashlib_Hacl_Hash_Blake2s_Simd128_malloc_with_params_and_key #define Hacl_Hash_Blake2s_Simd128_reset python_hashlib_Hacl_Hash_Blake2s_Simd128_reset #define Hacl_Hash_Blake2s_Simd128_reset_with_key python_hashlib_Hacl_Hash_Blake2s_Simd128_reset_with_key #define Hacl_Hash_Blake2s_Simd128_reset_with_key_and_params python_hashlib_Hacl_Hash_Blake2s_Simd128_reset_with_key_and_params #define Hacl_Hash_Blake2s_Simd128_store_state128s_to_state32 python_hashlib_Hacl_Hash_Blake2s_Simd128_store_state128s_to_state32 #define Hacl_Hash_Blake2s_Simd128_update python_hashlib_Hacl_Hash_Blake2s_Simd128_update #define Hacl_Hash_Blake2s_Simd128_update_last python_hashlib_Hacl_Hash_Blake2s_Simd128_update_last #define Hacl_Hash_Blake2s_Simd128_update_multi python_hashlib_Hacl_Hash_Blake2s_Simd128_update_multi #define Hacl_Hash_Blake2s_copy python_hashlib_Hacl_Hash_Blake2s_copy #define Hacl_Hash_Blake2s_digest python_hashlib_Hacl_Hash_Blake2s_digest #define Hacl_Hash_Blake2s_finish python_hashlib_Hacl_Hash_Blake2s_finish #define Hacl_Hash_Blake2s_free python_hashlib_Hacl_Hash_Blake2s_free #define Hacl_Hash_Blake2s_hash_with_key python_hashlib_Hacl_Hash_Blake2s_hash_with_key #define Hacl_Hash_Blake2s_hash_with_key_and_params python_hashlib_Hacl_Hash_Blake2s_hash_with_key_and_params #define Hacl_Hash_Blake2s_info python_hashlib_Hacl_Hash_Blake2s_info #define Hacl_Hash_Blake2s_init python_hashlib_Hacl_Hash_Blake2s_init #define Hacl_Hash_Blake2s_malloc python_hashlib_Hacl_Hash_Blake2s_malloc #define Hacl_Hash_Blake2s_malloc_with_key python_hashlib_Hacl_Hash_Blake2s_malloc_with_key #define Hacl_Hash_Blake2s_malloc_with_params_and_key python_hashlib_Hacl_Hash_Blake2s_malloc_with_params_and_key #define Hacl_Hash_Blake2s_reset python_hashlib_Hacl_Hash_Blake2s_reset #define Hacl_Hash_Blake2s_reset_with_key python_hashlib_Hacl_Hash_Blake2s_reset_with_key #define Hacl_Hash_Blake2s_reset_with_key_and_params python_hashlib_Hacl_Hash_Blake2s_reset_with_key_and_params #define Hacl_Hash_Blake2s_update python_hashlib_Hacl_Hash_Blake2s_update #define Hacl_Hash_Blake2s_update_last python_hashlib_Hacl_Hash_Blake2s_update_last #define Hacl_Hash_Blake2s_update_multi python_hashlib_Hacl_Hash_Blake2s_update_multi #define Hacl_Hash_MD5_finish python_hashlib_Hacl_Hash_MD5_finish #define Hacl_Hash_MD5_hash_oneshot python_hashlib_Hacl_Hash_MD5_hash_oneshot #define Hacl_Hash_MD5_reset python_hashlib_Hacl_Hash_MD5_reset #define Hacl_Hash_MD5_update_last python_hashlib_Hacl_Hash_MD5_update_last #define Hacl_Hash_MD5_update_multi python_hashlib_Hacl_Hash_MD5_update_multi #define Hacl_Hash_SHA1_finish python_hashlib_Hacl_Hash_SHA1_finish #define Hacl_Hash_SHA1_hash_oneshot python_hashlib_Hacl_Hash_SHA1_hash_oneshot #define Hacl_Hash_SHA1_reset python_hashlib_Hacl_Hash_SHA1_reset #define Hacl_Hash_SHA1_update_last python_hashlib_Hacl_Hash_SHA1_update_last #define Hacl_Hash_SHA1_update_multi python_hashlib_Hacl_Hash_SHA1_update_multi #define Hacl_Hash_SHA2_hash_224 python_hashlib_Hacl_Hash_SHA2_hash_224 #define Hacl_Hash_SHA2_hash_256 python_hashlib_Hacl_Hash_SHA2_hash_256 #define Hacl_Hash_SHA2_hash_384 python_hashlib_Hacl_Hash_SHA2_hash_384 #define Hacl_Hash_SHA2_hash_512 python_hashlib_Hacl_Hash_SHA2_hash_512 #define Hacl_Hash_SHA2_reset_224 python_hashlib_Hacl_Hash_SHA2_reset_224 #define Hacl_Hash_SHA2_reset_256 python_hashlib_Hacl_Hash_SHA2_reset_256 #define Hacl_Hash_SHA2_reset_384 python_hashlib_Hacl_Hash_SHA2_reset_384 #define Hacl_Hash_SHA2_reset_512 python_hashlib_Hacl_Hash_SHA2_reset_512 #define Hacl_Hash_SHA2_sha224_finish python_hashlib_Hacl_Hash_SHA2_sha224_finish #define Hacl_Hash_SHA2_sha224_init python_hashlib_Hacl_Hash_SHA2_sha224_init #define Hacl_Hash_SHA2_sha224_update_last python_hashlib_Hacl_Hash_SHA2_sha224_update_last #define Hacl_Hash_SHA2_sha256_finish python_hashlib_Hacl_Hash_SHA2_sha256_finish #define Hacl_Hash_SHA2_sha256_init python_hashlib_Hacl_Hash_SHA2_sha256_init #define Hacl_Hash_SHA2_sha256_update_last python_hashlib_Hacl_Hash_SHA2_sha256_update_last #define Hacl_Hash_SHA2_sha256_update_nblocks python_hashlib_Hacl_Hash_SHA2_sha256_update_nblocks #define Hacl_Hash_SHA2_sha384_finish python_hashlib_Hacl_Hash_SHA2_sha384_finish #define Hacl_Hash_SHA2_sha384_init python_hashlib_Hacl_Hash_SHA2_sha384_init #define Hacl_Hash_SHA2_sha384_update_last python_hashlib_Hacl_Hash_SHA2_sha384_update_last #define Hacl_Hash_SHA2_sha384_update_nblocks python_hashlib_Hacl_Hash_SHA2_sha384_update_nblocks #define Hacl_Hash_SHA2_sha512_finish python_hashlib_Hacl_Hash_SHA2_sha512_finish #define Hacl_Hash_SHA2_sha512_init python_hashlib_Hacl_Hash_SHA2_sha512_init #define Hacl_Hash_SHA2_sha512_update_last python_hashlib_Hacl_Hash_SHA2_sha512_update_last #define Hacl_Hash_SHA2_sha512_update_nblocks python_hashlib_Hacl_Hash_SHA2_sha512_update_nblocks #define Hacl_Hash_SHA3_absorb_inner_32 python_hashlib_Hacl_Hash_SHA3_absorb_inner_32 #define Hacl_Hash_SHA3_keccak_piln python_hashlib_Hacl_Hash_SHA3_keccak_piln #define Hacl_Hash_SHA3_keccak_rndc python_hashlib_Hacl_Hash_SHA3_keccak_rndc #define Hacl_Hash_SHA3_keccak_rotc python_hashlib_Hacl_Hash_SHA3_keccak_rotc #define Hacl_Hash_SHA3_sha3_224 python_hashlib_Hacl_Hash_SHA3_sha3_224 #define Hacl_Hash_SHA3_sha3_256 python_hashlib_Hacl_Hash_SHA3_sha3_256 #define Hacl_Hash_SHA3_sha3_384 python_hashlib_Hacl_Hash_SHA3_sha3_384 #define Hacl_Hash_SHA3_sha3_512 python_hashlib_Hacl_Hash_SHA3_sha3_512 #define Hacl_Hash_SHA3_shake128 python_hashlib_Hacl_Hash_SHA3_shake128 #define Hacl_Hash_SHA3_shake128_absorb_final python_hashlib_Hacl_Hash_SHA3_shake128_absorb_final #define Hacl_Hash_SHA3_shake128_absorb_nblocks python_hashlib_Hacl_Hash_SHA3_shake128_absorb_nblocks #define Hacl_Hash_SHA3_shake128_squeeze_nblocks python_hashlib_Hacl_Hash_SHA3_shake128_squeeze_nblocks #define Hacl_Hash_SHA3_shake256 python_hashlib_Hacl_Hash_SHA3_shake256 #define Hacl_Hash_SHA3_state_free python_hashlib_Hacl_Hash_SHA3_state_free #define Hacl_Hash_SHA3_state_malloc python_hashlib_Hacl_Hash_SHA3_state_malloc #endif // _PYTHON_HACL_NAMESPACES_H