17#define EXT_OR_CONN_STATE_MIN_ 1
20#define EXT_OR_CONN_STATE_AUTH_WAIT_AUTH_TYPE 1
22#define EXT_OR_CONN_STATE_AUTH_WAIT_CLIENT_NONCE 2
24#define EXT_OR_CONN_STATE_AUTH_WAIT_CLIENT_HASH 3
25#define EXT_OR_CONN_STATE_AUTH_MAX 3
28#define EXT_OR_CONN_STATE_OPEN 4
31#define EXT_OR_CONN_STATE_FLUSHING 5
32#define EXT_OR_CONN_STATE_MAX_ 5
34#ifdef HAVE_MODULE_RELAY
43int init_ext_or_cookie_authentication(
int is_enabled);
69#define get_ext_or_auth_cookie_file_name() \
74#ifdef EXT_ORPORT_PRIVATE
79STATIC int handle_client_auth_nonce(
const char *client_nonce,
80 size_t client_nonce_len,
81 char **client_hash_out,
82 char **reply_out,
size_t *reply_len_out);
tor_cmdline_mode_t command
STATIC uint8_t * ext_or_auth_cookie
STATIC int ext_or_auth_cookie_is_set
char * get_ext_or_auth_cookie_file_name(void)
int connection_ext_or_process_inbuf(or_connection_t *or_conn)
int connection_ext_or_start_auth(or_connection_t *or_conn)
void ext_orport_free_all(void)
int connection_ext_or_finished_flushing(or_connection_t *conn)
STATIC int connection_write_ext_or_command(connection_t *conn, uint16_t command, const char *body, size_t bodylen)
#define tor_assert_nonfatal_unreached()