libsodium: Needed for Dnscrypto-proxy Release 1.3.0
[tomato.git] / release / src / router / libsodium / src / libsodium / include / sodium / crypto_stream_aes256estream.h
blob7240b22f556623dfa324c6375e7664826d8dcb5c
1 #ifndef crypto_stream_aes256estream_H
2 #define crypto_stream_aes256estream_H
4 /*
5 * WARNING: This is just a stream cipher. It is NOT authenticated encryption.
6 * While it provides some protection against eavesdropping, it does NOT
7 * provide any security against active attacks.
8 * Furthermore, this implementation was not part of NaCl.
9 * Unless you know what you're doing, what you are looking for is probably
10 * the crypto_box functions.
13 #include <stddef.h>
14 #include "export.h"
16 #define crypto_stream_aes256estream_KEYBYTES 32U
17 #define crypto_stream_aes256estream_NONCEBYTES 16U
18 #define crypto_stream_aes256estream_BEFORENMBYTES 276U
20 #ifdef __cplusplus
21 extern "C" {
22 #endif
24 SODIUM_EXPORT
25 size_t crypto_stream_aes256estream_keybytes(void);
27 SODIUM_EXPORT
28 size_t crypto_stream_aes256estream_noncebytes(void);
30 SODIUM_EXPORT
31 size_t crypto_stream_aes256estream_beforenmbytes(void);
33 SODIUM_EXPORT
34 const char * crypto_stream_aes256estream_primitive(void);
36 SODIUM_EXPORT
37 int crypto_stream_aes256estream(unsigned char *,unsigned long long,const unsigned char *,const unsigned char *);
39 SODIUM_EXPORT
40 int crypto_stream_aes256estream_xor(unsigned char *,const unsigned char *,unsigned long long,const unsigned char *,const unsigned char *);
42 SODIUM_EXPORT
43 int crypto_stream_aes256estream_beforenm(unsigned char *,const unsigned char *);
45 SODIUM_EXPORT
46 int crypto_stream_aes256estream_afternm(unsigned char *,unsigned long long,const unsigned char *,const unsigned char *);
48 SODIUM_EXPORT
49 int crypto_stream_aes256estream_xor_afternm(unsigned char *,const unsigned char *,unsigned long long,const unsigned char *,const unsigned char *);
51 #ifdef __cplusplus
53 #endif
55 #define crypto_stream_aes256estream_hongjun crypto_stream_aes256estream
56 #define crypto_stream_aes256estream_hongjun_xor crypto_stream_aes256estream_xor
57 #define crypto_stream_aes256estream_hongjun_beforenm crypto_stream_aes256estream_beforenm
58 #define crypto_stream_aes256estream_hongjun_afternm crypto_stream_aes256estream_afternm
59 #define crypto_stream_aes256estream_hongjun_xor_afternm crypto_stream_aes256estream_xor_afternm
61 #endif