1/* blowfish.h */
2
3#ifdef _BUILDING_BESURE_
4#define _IMPEXP_BESURE		__declspec(dllexport)
5#else
6#define _IMPEXP_BESURE		__declspec(dllimport)
7#endif
8
9#define UWORD32 unsigned long
10#define UBYTE08 unsigned char
11
12#define MAXKEYBYTES 56          /* 448 bits */
13
14typedef struct
15{
16	unsigned long S[4][256], P[18];
17} blf_ctx;
18
19unsigned long F(blf_ctx *, unsigned long x);
20void Blowfish_encipher(blf_ctx *, unsigned long *xl, unsigned long *xr);
21void Blowfish_decipher(blf_ctx *, unsigned long *xl, unsigned long *xr);
22short InitializeBlowfish(blf_ctx *, unsigned char key[], int keybytes);
23
24#ifdef __cplusplus
25extern "C"
26{
27#endif
28
29_IMPEXP_BESURE void blf_enc(blf_ctx *c, unsigned long *data, int blocks);
30_IMPEXP_BESURE void blf_dec(blf_ctx *c, unsigned long *data, int blocks);
31_IMPEXP_BESURE void blf_key(blf_ctx *c, unsigned char *key, int len);
32
33#ifdef __cplusplus
34}
35#endif