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