libssh: poly1305.h Source File

libssh 0.9.6 The SSH library

poly1305.h
1 /*
2 * Public Domain poly1305 from Andrew Moon
3 * poly1305-donna-unrolled.c from https://github.com/floodyberry/poly1305-donna
4 */
5
6 #ifndef POLY1305_H
7 #define POLY1305_H
8
9 #define POLY1305_KEYLEN 32
10 #define POLY1305_TAGLEN 16
11
12 void poly1305_auth(uint8_t out[POLY1305_TAGLEN], const uint8_t *m, size_t inlen,
13 const uint8_t key[POLY1305_KEYLEN])
14 #ifdef HAVE_GCC_BOUNDED_ATTRIBUTE
15 __attribute__((__bounded__(__minbytes__, 1, POLY1305_TAGLEN)))
16 __attribute__((__bounded__(__buffer__, 2, 3)))
17 __attribute__((__bounded__(__minbytes__, 4, POLY1305_KEYLEN)))
18 #endif
19 ;
20
21 #endif /* POLY1305_H */