
Since this AEAD construction variant is an IETF variant, reflect this in the names of the functions. This streamlines the API with the libsodium API.
47 lines
2.0 KiB
C
47 lines
2.0 KiB
C
#ifndef ENACL_AEAD_H
|
|
#define ENACL_AEAD_H
|
|
|
|
#include <erl_nif.h>
|
|
|
|
/* AEAD ChaCha20 Poly1305 */
|
|
ERL_NIF_TERM
|
|
enacl_crypto_aead_chacha20poly1305_ietf_KEYBYTES(ErlNifEnv *env, int argc,
|
|
ERL_NIF_TERM const argv[]);
|
|
ERL_NIF_TERM
|
|
enacl_crypto_aead_chacha20poly1305_ietf_NPUBBYTES(ErlNifEnv *env, int argc,
|
|
ERL_NIF_TERM const argv[]);
|
|
ERL_NIF_TERM
|
|
enacl_crypto_aead_chacha20poly1305_ietf_ABYTES(ErlNifEnv *env, int argc,
|
|
ERL_NIF_TERM const argv[]);
|
|
ERL_NIF_TERM
|
|
enacl_crypto_aead_chacha20poly1305_ietf_MESSAGEBYTES_MAX(
|
|
ErlNifEnv *env, int argc, ERL_NIF_TERM const argv[]);
|
|
ERL_NIF_TERM
|
|
enacl_crypto_aead_chacha20poly1305_ietf_encrypt(ErlNifEnv *env, int argc,
|
|
ERL_NIF_TERM const argv[]);
|
|
ERL_NIF_TERM
|
|
enacl_crypto_aead_chacha20poly1305_ietf_decrypt(ErlNifEnv *env, int argc,
|
|
ERL_NIF_TERM const argv[]);
|
|
|
|
/* AEAD XChaCha20 Poly1305 */
|
|
ERL_NIF_TERM
|
|
enacl_crypto_aead_xchacha20poly1305_ietf_KEYBYTES(ErlNifEnv *env, int argc,
|
|
ERL_NIF_TERM const argv[]);
|
|
ERL_NIF_TERM
|
|
enacl_crypto_aead_xchacha20poly1305_ietf_NPUBBYTES(ErlNifEnv *env, int argc,
|
|
ERL_NIF_TERM const argv[]);
|
|
ERL_NIF_TERM
|
|
enacl_crypto_aead_xchacha20poly1305_ietf_ABYTES(ErlNifEnv *env, int argc,
|
|
ERL_NIF_TERM const argv[]);
|
|
ERL_NIF_TERM
|
|
enacl_crypto_aead_xchacha20poly1305_ietf_MESSAGEBYTES_MAX(
|
|
ErlNifEnv *env, int argc, ERL_NIF_TERM const argv[]);
|
|
ERL_NIF_TERM
|
|
enacl_crypto_aead_xchacha20poly1305_ietf_encrypt(ErlNifEnv *env, int argc,
|
|
ERL_NIF_TERM const argv[]);
|
|
ERL_NIF_TERM
|
|
enacl_crypto_aead_xchacha20poly1305_ietf_decrypt(ErlNifEnv *env, int argc,
|
|
ERL_NIF_TERM const argv[]);
|
|
|
|
#endif
|