cosmopolitan/third_party/mbedtls/chacha20.h
Justine Tunney fa20edc44d
Reduce header complexity
- Remove most __ASSEMBLER__ __LINKER__ ifdefs
- Rename libc/intrin/bits.h to libc/serialize.h
- Block pthread cancelation in fchmodat() polyfill
- Remove `clang-format off` statements in third_party
2023-11-28 14:39:42 -08:00

25 lines
1.1 KiB
C

#ifndef MBEDTLS_CHACHA20_H_
#define MBEDTLS_CHACHA20_H_
#include "third_party/mbedtls/config.h"
COSMOPOLITAN_C_START_
#define MBEDTLS_ERR_CHACHA20_BAD_INPUT_DATA -0x0051 /*< Invalid input parameter(s). */
typedef struct mbedtls_chacha20_context
{
uint32_t state[16]; /*! The state (before round operations). */
uint8_t keystream8[64]; /*! Leftover keystream bytes. */
size_t keystream_bytes_used; /*! Number of keystream bytes already used. */
}
mbedtls_chacha20_context;
void mbedtls_chacha20_init( mbedtls_chacha20_context * );
void mbedtls_chacha20_free( mbedtls_chacha20_context * );
int mbedtls_chacha20_setkey( mbedtls_chacha20_context *, const unsigned char[32] );
int mbedtls_chacha20_starts( mbedtls_chacha20_context *, const unsigned char[12], uint32_t );
int mbedtls_chacha20_update( mbedtls_chacha20_context *, size_t, const unsigned char *, unsigned char * );
int mbedtls_chacha20_crypt( const unsigned char[32], const unsigned char[12], uint32_t, size_t, const unsigned char *, unsigned char * );
int mbedtls_chacha20_self_test( int );
COSMOPOLITAN_C_END_
#endif /* MBEDTLS_CHACHA20_H_ */