libsodium: Needed for Dnscrypto-proxy Release 1.3.0
[tomato.git] / release / src / router / libsodium / src / libsodium / crypto_stream / aes128ctr / portable / int128.h
blob7099e5b141b2a53a354f60c10d8a0b06eff2ccbf
1 #ifndef INT128_H
2 #define INT128_H
4 #include "common.h"
6 typedef struct{
7 unsigned long long a;
8 unsigned long long b;
9 } int128;
11 #define xor2 crypto_stream_aes128ctr_portable_xor2
12 void xor2(int128 *r, const int128 *x);
14 #define and2 crypto_stream_aes128ctr_portable_and2
15 void and2(int128 *r, const int128 *x);
17 #define or2 crypto_stream_aes128ctr_portable_or2
18 void or2(int128 *r, const int128 *x);
20 #define copy2 crypto_stream_aes128ctr_portable_copy2
21 void copy2(int128 *r, const int128 *x);
23 #define shufb crypto_stream_aes128ctr_portable_shufb
24 void shufb(int128 *r, const unsigned char *l);
26 #define shufd crypto_stream_aes128ctr_portable_shufd
27 void shufd(int128 *r, const int128 *x, const unsigned int c);
29 #define rshift32_littleendian crypto_stream_aes128ctr_portable_rshift32_littleendian
30 void rshift32_littleendian(int128 *r, const unsigned int n);
32 #define rshift64_littleendian crypto_stream_aes128ctr_portable_rshift64_littleendian
33 void rshift64_littleendian(int128 *r, const unsigned int n);
35 #define lshift64_littleendian crypto_stream_aes128ctr_portable_lshift64_littleendian
36 void lshift64_littleendian(int128 *r, const unsigned int n);
38 #define toggle crypto_stream_aes128ctr_portable_toggle
39 void toggle(int128 *r);
41 #define xor_rcon crypto_stream_aes128ctr_portable_xor_rcon
42 void xor_rcon(int128 *r);
44 #define add_uint32_big crypto_stream_aes128ctr_portable_add_uint32_big
45 void add_uint32_big(int128 *r, uint32 x);
47 #endif