12#ifndef TOR_RELAY_CRYPTO_H
13#define TOR_RELAY_CRYPTO_H
36#define MAX_RELAY_KEY_MATERIAL_LEN 224
42 const char *key_data,
size_t key_data_len);
int relay_crypto_init(relay_crypto_alg_t alg, relay_crypto_t *crypto, const char *key_data, size_t key_data_len)
void relay_encrypt_cell_outbound(cell_t *cell, origin_circuit_t *or_circ, crypt_path_t *layer_hint)
void relay_crypto_assert_ok(const relay_crypto_t *crypto)
ssize_t relay_crypto_key_material_len(relay_crypto_alg_t alg)
const uint8_t * relay_crypto_get_sendme_tag(relay_crypto_t *crypto, size_t *len_out)
@ RELAY_CRYPTO_ALG_TOR1_HSS
@ RELAY_CRYPTO_ALG_TOR1_HSC
@ RELAY_CRYPTO_ALG_CGO_RELAY
@ RELAY_CRYPTO_ALG_CGO_CLIENT
int relay_decrypt_cell(circuit_t *circ, cell_t *cell, cell_direction_t cell_direction, crypt_path_t **layer_hint, char *recognized)
size_t relay_crypto_sendme_tag_len(const relay_crypto_t *crypto)
void relay_crypto_clear(relay_crypto_t *crypto)
void relay_encrypt_cell_inbound(cell_t *cell, or_circuit_t *or_circ)