1 #ifndef Py_BLAKE2MODULE_H
2 #define Py_BLAKE2MODULE_H
3 
4 #ifdef HAVE_LIBB2
5 #include <blake2.h>
6 
7 #else
8 // use vendored copy of blake2
9 
10 // Prefix all public blake2 symbols with PyBlake2_
11 #define blake2b            PyBlake2_blake2b
12 #define blake2b_compress   PyBlake2_blake2b_compress
13 #define blake2b_final      PyBlake2_blake2b_final
14 #define blake2b_init       PyBlake2_blake2b_init
15 #define blake2b_init_key   PyBlake2_blake2b_init_key
16 #define blake2b_init_param PyBlake2_blake2b_init_param
17 #define blake2b_update     PyBlake2_blake2b_update
18 #define blake2bp           PyBlake2_blake2bp
19 #define blake2bp_final     PyBlake2_blake2bp_final
20 #define blake2bp_init      PyBlake2_blake2bp_init
21 #define blake2bp_init_key  PyBlake2_blake2bp_init_key
22 #define blake2bp_update    PyBlake2_blake2bp_update
23 #define blake2s            PyBlake2_blake2s
24 #define blake2s_compress   PyBlake2_blake2s_compress
25 #define blake2s_final      PyBlake2_blake2s_final
26 #define blake2s_init       PyBlake2_blake2s_init
27 #define blake2s_init_key   PyBlake2_blake2s_init_key
28 #define blake2s_init_param PyBlake2_blake2s_init_param
29 #define blake2s_update     PyBlake2_blake2s_update
30 #define blake2sp           PyBlake2_blake2sp
31 #define blake2sp_final     PyBlake2_blake2sp_final
32 #define blake2sp_init      PyBlake2_blake2sp_init
33 #define blake2sp_init_key  PyBlake2_blake2sp_init_key
34 #define blake2sp_update    PyBlake2_blake2sp_update
35 
36 #include "impl/blake2.h"
37 
38 #endif // HAVE_LIBB2
39 
40 // for secure_zero_memory(), store32(), store48(), and store64()
41 #include "impl/blake2-impl.h"
42 
43 #endif // Py_BLAKE2MODULE_H
44