mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-12-06 19:41:15 +01:00
4845ab53f0
This is an automated commit, generated by this command:
./scripts/maint/rename_c_identifier.py \
address_ttl_s address_ttl_t \
aes_cnt_cipher aes_cnt_cipher_t \
authchallenge_data_s authchallenge_data_t \
authenticate_data_s authenticate_data_t \
cached_bw_event_s cached_bw_event_t \
cbuf cbuf_t \
cell_ewma_s cell_ewma_t \
certs_data_s certs_data_t \
channel_idmap_entry_s channel_idmap_entry_t \
channel_listener_s channel_listener_t \
channel_s channel_t \
channel_tls_s channel_tls_t \
circuit_build_times_s circuit_build_times_t \
circuit_muxinfo_s circuit_muxinfo_t \
circuitmux_policy_circ_data_s circuitmux_policy_circ_data_t \
circuitmux_policy_data_s circuitmux_policy_data_t \
circuitmux_policy_s circuitmux_policy_t \
circuitmux_s circuitmux_t \
coord coord_t \
cpuworker_job_u cpuworker_job_u_t \
cv_testinfo_s cv_testinfo_t \
ddmap_entry_s ddmap_entry_t \
dircollator_s dircollator_t \
dist_ops dist_ops_t \
ecdh_work_s ecdh_work_t \
ewma_policy_circ_data_s ewma_policy_circ_data_t \
ewma_policy_data_s ewma_policy_data_t \
fp_pair_map_entry_s fp_pair_map_entry_t \
fp_pair_map_s fp_pair_map_t \
guard_selection_s guard_selection_t \
mbw_cache_entry_s mbw_cache_entry_t \
outbuf_table_ent_s outbuf_table_ent_t \
queued_event_s queued_event_t \
replyqueue_s replyqueue_t \
rsa_work_s rsa_work_t \
sandbox_cfg_elem sandbox_cfg_elem_t \
scheduler_s scheduler_t \
smp_param smp_param_t \
socket_table_ent_s socket_table_ent_t \
state_s state_t \
threadpool_s threadpool_t \
timeout_cb timeout_cb_t \
tor_libevent_cfg tor_libevent_cfg_t \
tor_threadlocal_s tor_threadlocal_t \
url_table_ent_s url_table_ent_t \
worker_state_s worker_state_t \
workerthread_s workerthread_t \
workqueue_entry_s workqueue_entry_t
88 lines
3.2 KiB
C
88 lines
3.2 KiB
C
/* Copyright (c) 2017-2019, The Tor Project, Inc. */
|
|
/* See LICENSE for licensing information */
|
|
|
|
/**
|
|
* @file consdiffmgr.h
|
|
* @brief Header for consdiffmgr.c
|
|
**/
|
|
|
|
#ifndef TOR_CONSDIFFMGR_H
|
|
#define TOR_CONSDIFFMGR_H
|
|
|
|
enum compress_method_t;
|
|
|
|
/**
|
|
* Possible outcomes from trying to look up a given consensus diff.
|
|
*/
|
|
typedef enum consdiff_status_t {
|
|
CONSDIFF_AVAILABLE,
|
|
CONSDIFF_NOT_FOUND,
|
|
CONSDIFF_IN_PROGRESS,
|
|
} consdiff_status_t;
|
|
|
|
typedef struct consdiff_cfg_t {
|
|
int32_t cache_max_num;
|
|
} consdiff_cfg_t;
|
|
|
|
struct consensus_cache_entry_t; // from conscache.h
|
|
|
|
int consdiffmgr_add_consensus(const char *consensus,
|
|
size_t consensus_len,
|
|
const networkstatus_t *as_parsed);
|
|
|
|
consdiff_status_t consdiffmgr_find_consensus(
|
|
struct consensus_cache_entry_t **entry_out,
|
|
consensus_flavor_t flavor,
|
|
enum compress_method_t method);
|
|
|
|
consdiff_status_t consdiffmgr_find_diff_from(
|
|
struct consensus_cache_entry_t **entry_out,
|
|
consensus_flavor_t flavor,
|
|
int digest_type,
|
|
const uint8_t *digest,
|
|
size_t digestlen,
|
|
enum compress_method_t method);
|
|
|
|
int consensus_cache_entry_get_voter_id_digests(
|
|
const struct consensus_cache_entry_t *ent,
|
|
smartlist_t *out);
|
|
int consensus_cache_entry_get_fresh_until(
|
|
const struct consensus_cache_entry_t *ent,
|
|
time_t *out);
|
|
int consensus_cache_entry_get_valid_until(
|
|
const struct consensus_cache_entry_t *ent,
|
|
time_t *out);
|
|
int consensus_cache_entry_get_valid_after(
|
|
const struct consensus_cache_entry_t *ent,
|
|
time_t *out);
|
|
|
|
void consdiffmgr_rescan(void);
|
|
int consdiffmgr_cleanup(void);
|
|
void consdiffmgr_enable_background_compression(void);
|
|
void consdiffmgr_configure(const consdiff_cfg_t *cfg);
|
|
struct sandbox_cfg_elem_t;
|
|
int consdiffmgr_register_with_sandbox(struct sandbox_cfg_elem_t **cfg);
|
|
void consdiffmgr_free_all(void);
|
|
int consdiffmgr_validate(void);
|
|
|
|
#ifdef CONSDIFFMGR_PRIVATE
|
|
STATIC unsigned n_diff_compression_methods(void);
|
|
STATIC unsigned n_consensus_compression_methods(void);
|
|
STATIC consensus_cache_t *cdm_cache_get(void);
|
|
STATIC consensus_cache_entry_t *cdm_cache_lookup_consensus(
|
|
consensus_flavor_t flavor, time_t valid_after);
|
|
STATIC int cdm_entry_get_sha3_value(uint8_t *digest_out,
|
|
consensus_cache_entry_t *ent,
|
|
const char *label);
|
|
STATIC int uncompress_or_set_ptr(const char **out, size_t *outlen,
|
|
char **owned_out,
|
|
consensus_cache_entry_t *ent);
|
|
#endif /* defined(CONSDIFFMGR_PRIVATE) */
|
|
|
|
#ifdef TOR_UNIT_TESTS
|
|
int consdiffmgr_add_consensus_nulterm(const char *consensus,
|
|
const networkstatus_t *as_parsed);
|
|
#endif
|
|
|
|
#endif /* !defined(TOR_CONSDIFFMGR_H) */
|