12 #ifndef TOR_ONION_FAST_H
13 #define TOR_ONION_FAST_H
15 #define CREATE_FAST_LEN DIGEST_LEN
16 #define CREATED_FAST_LEN (DIGEST_LEN*2)
23 #define fast_handshake_state_free(st) \
24 FREE_AND_NULL(fast_handshake_state_t, fast_handshake_state_free_, (st))
27 uint8_t *handshake_out);
30 uint8_t *handshake_reply_out,
35 const uint8_t *handshake_reply_out,
38 const char **msg_out);
void fast_handshake_state_free_(fast_handshake_state_t *victim)
int fast_server_handshake(const uint8_t *message_in, uint8_t *handshake_reply_out, uint8_t *key_out, size_t key_out_len)
int fast_client_handshake(const fast_handshake_state_t *handshake_state, const uint8_t *handshake_reply_out, uint8_t *key_out, size_t key_out_len, const char **msg_out)
int fast_onionskin_create(fast_handshake_state_t **handshake_state_out, uint8_t *handshake_out)