1/*
2 * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved.
3 *
4 * Licensed under the OpenSSL license (the "License").  You may not use
5 * this file except in compliance with the License.  You can obtain a copy
6 * in the file LICENSE in the source distribution or at
7 * https://www.openssl.org/source/license.html
8 */
9
10#include <stddef.h>
11
12#define POLY1305_BLOCK_SIZE  16
13#define POLY1305_DIGEST_SIZE 16
14#define POLY1305_KEY_SIZE    32
15
16typedef struct poly1305_context POLY1305;
17
18size_t Poly1305_ctx_size(void);
19void Poly1305_Init(POLY1305 *ctx, const unsigned char key[32]);
20void Poly1305_Update(POLY1305 *ctx, const unsigned char *inp, size_t len);
21void Poly1305_Final(POLY1305 *ctx, unsigned char mac[16]);
22