4#ifndef PROTOCORE_POLY1305_H
5#define PROTOCORE_POLY1305_H
31#define PROTOCORE_POLY1305_KEY_LEN 32
34#define PROTOCORE_POLY1305_TAG_LEN 16
39 proto_bool (*mac)(uint8_t *,
const uint8_t *,
const uint8_t *, size_t, uint8_t *);
#define PROTOCORE_NS_LAYOUT(T,...)
Pin every dispatch slot of a table that is nothing but function pointers.
#define PROTOCORE_NS
Storage for a dispatch table. The const is load bearing.
PROTOCORE_NS Poly1305Ns Poly1305 PROTOCORE_UNUSED
Module namespace.
proto_bool protocore_poly1305_mac(uint8_t *work, const uint8_t *key, const uint8_t *msg, size_t len, uint8_t *out)
Take the 16-byte tag over the whole message under the one-time key.
Dispatch table. Addressed by offset, so the layout is asserted below.
proto_bool(* mac)(uint8_t *, const uint8_t *, const uint8_t *, size_t, uint8_t *)
#define PROTOCORE_BEGIN_DECLS
Give a header's declarations C linkage, so their symbol names carry no parameter types.
_Bool proto_bool
The truth value.
#define PROTOCORE_END_DECLS