crypto_aead_aegis128l.h (3669B)
1 #ifndef crypto_aead_aegis128l_H 2 #define crypto_aead_aegis128l_H 3 4 #include <stddef.h> 5 6 #include "export.h" 7 8 #ifdef __cplusplus 9 #ifdef __GNUC__ 10 #pragma GCC diagnostic ignored "-Wlong-long" 11 #endif 12 extern "C" { 13 #endif 14 15 #define crypto_aead_aegis128l_KEYBYTES 16U 16 SODIUM_EXPORT 17 size_t crypto_aead_aegis128l_keybytes(void); 18 19 #define crypto_aead_aegis128l_NSECBYTES 0U 20 SODIUM_EXPORT 21 size_t crypto_aead_aegis128l_nsecbytes(void); 22 23 #define crypto_aead_aegis128l_NPUBBYTES 16U 24 SODIUM_EXPORT 25 size_t crypto_aead_aegis128l_npubbytes(void); 26 27 #define crypto_aead_aegis128l_ABYTES 32U 28 SODIUM_EXPORT 29 size_t crypto_aead_aegis128l_abytes(void); 30 31 #define crypto_aead_aegis128l_MESSAGEBYTES_MAX \ 32 SODIUM_MIN(SODIUM_SIZE_MAX - crypto_aead_aegis128l_ABYTES, (1ULL << 61) - 1) 33 SODIUM_EXPORT 34 size_t crypto_aead_aegis128l_messagebytes_max(void); 35 36 SODIUM_EXPORT 37 int crypto_aead_aegis128l_encrypt(unsigned char *c, 38 unsigned long long *clen_p, 39 const unsigned char *m, 40 unsigned long long mlen, 41 const unsigned char *ad, 42 unsigned long long adlen, 43 const unsigned char *nsec, 44 const unsigned char *npub, 45 const unsigned char *k) __attribute__((nonnull(1, 8, 9))); 46 47 SODIUM_EXPORT 48 int crypto_aead_aegis128l_decrypt(unsigned char *m, 49 unsigned long long *mlen_p, 50 unsigned char *nsec, 51 const unsigned char *c, 52 unsigned long long clen, 53 const unsigned char *ad, 54 unsigned long long adlen, 55 const unsigned char *npub, 56 const unsigned char *k) __attribute__((warn_unused_result)) 57 __attribute__((nonnull(4, 8, 9))); 58 59 SODIUM_EXPORT 60 int crypto_aead_aegis128l_encrypt_detached(unsigned char *c, 61 unsigned char *mac, 62 unsigned long long *maclen_p, 63 const unsigned char *m, 64 unsigned long long mlen, 65 const unsigned char *ad, 66 unsigned long long adlen, 67 const unsigned char *nsec, 68 const unsigned char *npub, 69 const unsigned char *k) 70 __attribute__((nonnull(1, 2, 9, 10))); 71 72 SODIUM_EXPORT 73 int crypto_aead_aegis128l_decrypt_detached(unsigned char *m, 74 unsigned char *nsec, 75 const unsigned char *c, 76 unsigned long long clen, 77 const unsigned char *mac, 78 const unsigned char *ad, 79 unsigned long long adlen, 80 const unsigned char *npub, 81 const unsigned char *k) 82 __attribute__((warn_unused_result)) __attribute__((nonnull(3, 5, 8, 9))); 83 84 SODIUM_EXPORT 85 void crypto_aead_aegis128l_keygen(unsigned char k[crypto_aead_aegis128l_KEYBYTES]) 86 __attribute__((nonnull)); 87 88 #ifdef __cplusplus 89 } 90 #endif 91 92 #endif