mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-28 14:23:30 +01:00
Make all our struct names end with "_t".
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
This commit is contained in:
parent
582cee723a
commit
4845ab53f0
@ -6770,7 +6770,7 @@ get_num_cpus(const or_options_t *options)
|
|||||||
static void
|
static void
|
||||||
init_libevent(const or_options_t *options)
|
init_libevent(const or_options_t *options)
|
||||||
{
|
{
|
||||||
tor_libevent_cfg cfg;
|
tor_libevent_cfg_t cfg;
|
||||||
|
|
||||||
tor_assert(options);
|
tor_assert(options);
|
||||||
|
|
||||||
|
@ -37,7 +37,7 @@
|
|||||||
|
|
||||||
static void queue_pending_tasks(void);
|
static void queue_pending_tasks(void);
|
||||||
|
|
||||||
typedef struct worker_state_s {
|
typedef struct worker_state_t {
|
||||||
int generation;
|
int generation;
|
||||||
server_onion_keys_t *onion_keys;
|
server_onion_keys_t *onion_keys;
|
||||||
} worker_state_t;
|
} worker_state_t;
|
||||||
@ -160,7 +160,7 @@ typedef struct cpuworker_reply_t {
|
|||||||
uint8_t rend_auth_material[DIGEST_LEN];
|
uint8_t rend_auth_material[DIGEST_LEN];
|
||||||
} cpuworker_reply_t;
|
} cpuworker_reply_t;
|
||||||
|
|
||||||
typedef struct cpuworker_job_u {
|
typedef struct cpuworker_job_u_t {
|
||||||
or_circuit_t *circ;
|
or_circuit_t *circ;
|
||||||
union {
|
union {
|
||||||
cpuworker_request_t request;
|
cpuworker_request_t request;
|
||||||
|
@ -14,10 +14,10 @@
|
|||||||
|
|
||||||
void cpu_init(void);
|
void cpu_init(void);
|
||||||
void cpuworkers_rotate_keyinfo(void);
|
void cpuworkers_rotate_keyinfo(void);
|
||||||
struct workqueue_entry_s;
|
struct workqueue_entry_t;
|
||||||
enum workqueue_reply_t;
|
enum workqueue_reply_t;
|
||||||
enum workqueue_priority_t;
|
enum workqueue_priority_t;
|
||||||
MOCK_DECL(struct workqueue_entry_s *, cpuworker_queue_work, (
|
MOCK_DECL(struct workqueue_entry_t *, cpuworker_queue_work, (
|
||||||
enum workqueue_priority_t priority,
|
enum workqueue_priority_t priority,
|
||||||
enum workqueue_reply_t (*fn)(void *, void *),
|
enum workqueue_reply_t (*fn)(void *, void *),
|
||||||
void (*reply_fn)(void *),
|
void (*reply_fn)(void *),
|
||||||
|
@ -106,7 +106,7 @@ static smartlist_t *finished_listeners = NULL;
|
|||||||
|
|
||||||
/** Map from channel->global_identifier to channel. Contains the same
|
/** Map from channel->global_identifier to channel. Contains the same
|
||||||
* elements as all_channels. */
|
* elements as all_channels. */
|
||||||
static HT_HEAD(channel_gid_map, channel_s) channel_gid_map = HT_INITIALIZER();
|
static HT_HEAD(channel_gid_map, channel_t) channel_gid_map = HT_INITIALIZER();
|
||||||
|
|
||||||
static unsigned
|
static unsigned
|
||||||
channel_id_hash(const channel_t *chan)
|
channel_id_hash(const channel_t *chan)
|
||||||
@ -118,13 +118,13 @@ channel_id_eq(const channel_t *a, const channel_t *b)
|
|||||||
{
|
{
|
||||||
return a->global_identifier == b->global_identifier;
|
return a->global_identifier == b->global_identifier;
|
||||||
}
|
}
|
||||||
HT_PROTOTYPE(channel_gid_map, channel_s, gidmap_node,
|
HT_PROTOTYPE(channel_gid_map, channel_t, gidmap_node,
|
||||||
channel_id_hash, channel_id_eq)
|
channel_id_hash, channel_id_eq)
|
||||||
HT_GENERATE2(channel_gid_map, channel_s, gidmap_node,
|
HT_GENERATE2(channel_gid_map, channel_t, gidmap_node,
|
||||||
channel_id_hash, channel_id_eq,
|
channel_id_hash, channel_id_eq,
|
||||||
0.6, tor_reallocarray_, tor_free_)
|
0.6, tor_reallocarray_, tor_free_)
|
||||||
|
|
||||||
HANDLE_IMPL(channel, channel_s,)
|
HANDLE_IMPL(channel, channel_t,)
|
||||||
|
|
||||||
/* Counter for ID numbers */
|
/* Counter for ID numbers */
|
||||||
static uint64_t n_channels_allocated = 0;
|
static uint64_t n_channels_allocated = 0;
|
||||||
@ -137,13 +137,13 @@ static uint64_t n_channels_allocated = 0;
|
|||||||
* If more than one channel exists, follow the next_with_same_id pointer
|
* If more than one channel exists, follow the next_with_same_id pointer
|
||||||
* as a linked list.
|
* as a linked list.
|
||||||
*/
|
*/
|
||||||
static HT_HEAD(channel_idmap, channel_idmap_entry_s) channel_identity_map =
|
static HT_HEAD(channel_idmap, channel_idmap_entry_t) channel_identity_map =
|
||||||
HT_INITIALIZER();
|
HT_INITIALIZER();
|
||||||
|
|
||||||
typedef struct channel_idmap_entry_s {
|
typedef struct channel_idmap_entry_t {
|
||||||
HT_ENTRY(channel_idmap_entry_s) node;
|
HT_ENTRY(channel_idmap_entry_t) node;
|
||||||
uint8_t digest[DIGEST_LEN];
|
uint8_t digest[DIGEST_LEN];
|
||||||
TOR_LIST_HEAD(channel_list_s, channel_s) channel_list;
|
TOR_LIST_HEAD(channel_list_s, channel_t) channel_list;
|
||||||
} channel_idmap_entry_t;
|
} channel_idmap_entry_t;
|
||||||
|
|
||||||
static inline unsigned
|
static inline unsigned
|
||||||
@ -159,9 +159,9 @@ channel_idmap_eq(const channel_idmap_entry_t *a,
|
|||||||
return tor_memeq(a->digest, b->digest, DIGEST_LEN);
|
return tor_memeq(a->digest, b->digest, DIGEST_LEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
HT_PROTOTYPE(channel_idmap, channel_idmap_entry_s, node, channel_idmap_hash,
|
HT_PROTOTYPE(channel_idmap, channel_idmap_entry_t, node, channel_idmap_hash,
|
||||||
channel_idmap_eq)
|
channel_idmap_eq)
|
||||||
HT_GENERATE2(channel_idmap, channel_idmap_entry_s, node, channel_idmap_hash,
|
HT_GENERATE2(channel_idmap, channel_idmap_entry_t, node, channel_idmap_hash,
|
||||||
channel_idmap_eq, 0.5, tor_reallocarray_, tor_free_)
|
channel_idmap_eq, 0.5, tor_reallocarray_, tor_free_)
|
||||||
|
|
||||||
/* Functions to maintain the digest map */
|
/* Functions to maintain the digest map */
|
||||||
|
@ -178,15 +178,15 @@ typedef enum {
|
|||||||
* to a particular node, and once constructed support the abstract operations
|
* to a particular node, and once constructed support the abstract operations
|
||||||
* defined below.
|
* defined below.
|
||||||
*/
|
*/
|
||||||
struct channel_s {
|
struct channel_t {
|
||||||
/** Magic number for type-checking cast macros */
|
/** Magic number for type-checking cast macros */
|
||||||
uint32_t magic;
|
uint32_t magic;
|
||||||
|
|
||||||
/** List entry for hashtable for global-identifier lookup. */
|
/** List entry for hashtable for global-identifier lookup. */
|
||||||
HT_ENTRY(channel_s) gidmap_node;
|
HT_ENTRY(channel_t) gidmap_node;
|
||||||
|
|
||||||
/** Handle entry for handle-based lookup */
|
/** Handle entry for handle-based lookup */
|
||||||
HANDLE_ENTRY(channel, channel_s);
|
HANDLE_ENTRY(channel, channel_t);
|
||||||
|
|
||||||
/** Current channel state */
|
/** Current channel state */
|
||||||
channel_state_t state;
|
channel_state_t state;
|
||||||
@ -397,7 +397,7 @@ struct channel_s {
|
|||||||
* Linked list of channels with the same RSA identity digest, for use with
|
* Linked list of channels with the same RSA identity digest, for use with
|
||||||
* the digest->channel map
|
* the digest->channel map
|
||||||
*/
|
*/
|
||||||
TOR_LIST_ENTRY(channel_s) next_with_same_id;
|
TOR_LIST_ENTRY(channel_t) next_with_same_id;
|
||||||
|
|
||||||
/** Circuit mux for circuits sending on this channel */
|
/** Circuit mux for circuits sending on this channel */
|
||||||
circuitmux_t *cmux;
|
circuitmux_t *cmux;
|
||||||
@ -464,7 +464,7 @@ struct channel_s {
|
|||||||
uint64_t n_cells_xmitted, n_bytes_xmitted;
|
uint64_t n_cells_xmitted, n_bytes_xmitted;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct channel_listener_s {
|
struct channel_listener_t {
|
||||||
/** Current channel listener state */
|
/** Current channel listener state */
|
||||||
channel_listener_state_t state;
|
channel_listener_state_t state;
|
||||||
|
|
||||||
@ -773,7 +773,7 @@ int packed_cell_is_destroy(channel_t *chan,
|
|||||||
circid_t *circid_out);
|
circid_t *circid_out);
|
||||||
|
|
||||||
/* Declare the handle helpers */
|
/* Declare the handle helpers */
|
||||||
HANDLE_DECL(channel, channel_s,)
|
HANDLE_DECL(channel, channel_t,)
|
||||||
#define channel_handle_free(h) \
|
#define channel_handle_free(h) \
|
||||||
FREE_AND_NULL(channel_handle_t, channel_handle_free_, (h))
|
FREE_AND_NULL(channel_handle_t, channel_handle_free_, (h))
|
||||||
#undef tor_timer_t
|
#undef tor_timer_t
|
||||||
|
@ -24,7 +24,7 @@ struct curve25519_public_key_t;
|
|||||||
|
|
||||||
#ifdef TOR_CHANNEL_INTERNAL_
|
#ifdef TOR_CHANNEL_INTERNAL_
|
||||||
|
|
||||||
struct channel_tls_s {
|
struct channel_tls_t {
|
||||||
/* Base channel_t struct */
|
/* Base channel_t struct */
|
||||||
channel_t base_;
|
channel_t base_;
|
||||||
/* or_connection_t pointer */
|
/* or_connection_t pointer */
|
||||||
|
@ -94,14 +94,14 @@ typedef struct chanid_circid_muxinfo_t chanid_circid_muxinfo_t;
|
|||||||
* a count of queued cells.
|
* a count of queued cells.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
typedef struct circuit_muxinfo_s circuit_muxinfo_t;
|
typedef struct circuit_muxinfo_t circuit_muxinfo_t;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This struct holds whatever we want to store per attached circuit on a
|
* This struct holds whatever we want to store per attached circuit on a
|
||||||
* circuitmux_t; right now, just the count of queued cells and the direction.
|
* circuitmux_t; right now, just the count of queued cells and the direction.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
struct circuit_muxinfo_s {
|
struct circuit_muxinfo_t {
|
||||||
/* Count of cells on this circuit at last update */
|
/* Count of cells on this circuit at last update */
|
||||||
unsigned int cell_count;
|
unsigned int cell_count;
|
||||||
/* Direction of flow */
|
/* Direction of flow */
|
||||||
|
@ -12,11 +12,11 @@
|
|||||||
#include "core/or/or.h"
|
#include "core/or/or.h"
|
||||||
#include "lib/testsupport/testsupport.h"
|
#include "lib/testsupport/testsupport.h"
|
||||||
|
|
||||||
typedef struct circuitmux_policy_s circuitmux_policy_t;
|
typedef struct circuitmux_policy_t circuitmux_policy_t;
|
||||||
typedef struct circuitmux_policy_data_s circuitmux_policy_data_t;
|
typedef struct circuitmux_policy_data_t circuitmux_policy_data_t;
|
||||||
typedef struct circuitmux_policy_circ_data_s circuitmux_policy_circ_data_t;
|
typedef struct circuitmux_policy_circ_data_t circuitmux_policy_circ_data_t;
|
||||||
|
|
||||||
struct circuitmux_policy_s {
|
struct circuitmux_policy_t {
|
||||||
/* Allocate cmux-wide policy-specific data */
|
/* Allocate cmux-wide policy-specific data */
|
||||||
circuitmux_policy_data_t * (*alloc_cmux_data)(circuitmux_t *cmux);
|
circuitmux_policy_data_t * (*alloc_cmux_data)(circuitmux_t *cmux);
|
||||||
/* Free cmux-wide policy-specific data */
|
/* Free cmux-wide policy-specific data */
|
||||||
@ -67,7 +67,7 @@ struct circuitmux_policy_s {
|
|||||||
* wide data; it just has the magic number in the base struct.
|
* wide data; it just has the magic number in the base struct.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
struct circuitmux_policy_data_s {
|
struct circuitmux_policy_data_t {
|
||||||
uint32_t magic;
|
uint32_t magic;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -76,7 +76,7 @@ struct circuitmux_policy_data_s {
|
|||||||
* specific data; it just has the magic number in the base struct.
|
* specific data; it just has the magic number in the base struct.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
struct circuitmux_policy_circ_data_s {
|
struct circuitmux_policy_circ_data_t {
|
||||||
uint32_t magic;
|
uint32_t magic;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -173,7 +173,7 @@ typedef HT_HEAD(chanid_circid_muxinfo_map, chanid_circid_muxinfo_t)
|
|||||||
* Structures for circuitmux.c
|
* Structures for circuitmux.c
|
||||||
*/
|
*/
|
||||||
|
|
||||||
struct circuitmux_s {
|
struct circuitmux_t {
|
||||||
/* Keep count of attached, active circuits */
|
/* Keep count of attached, active circuits */
|
||||||
unsigned int n_circuits, n_active_circuits;
|
unsigned int n_circuits, n_active_circuits;
|
||||||
|
|
||||||
|
@ -25,9 +25,9 @@ void circuitmux_ewma_free_all(void);
|
|||||||
|
|
||||||
/*** EWMA structures ***/
|
/*** EWMA structures ***/
|
||||||
|
|
||||||
typedef struct cell_ewma_s cell_ewma_t;
|
typedef struct cell_ewma_t cell_ewma_t;
|
||||||
typedef struct ewma_policy_data_s ewma_policy_data_t;
|
typedef struct ewma_policy_data_t ewma_policy_data_t;
|
||||||
typedef struct ewma_policy_circ_data_s ewma_policy_circ_data_t;
|
typedef struct ewma_policy_circ_data_t ewma_policy_circ_data_t;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The cell_ewma_t structure keeps track of how many cells a circuit has
|
* The cell_ewma_t structure keeps track of how many cells a circuit has
|
||||||
@ -36,7 +36,7 @@ typedef struct ewma_policy_circ_data_s ewma_policy_circ_data_t;
|
|||||||
* connection in channel_flush_from_first_active_circuit().
|
* connection in channel_flush_from_first_active_circuit().
|
||||||
*/
|
*/
|
||||||
|
|
||||||
struct cell_ewma_s {
|
struct cell_ewma_t {
|
||||||
/** The last 'tick' at which we recalibrated cell_count.
|
/** The last 'tick' at which we recalibrated cell_count.
|
||||||
*
|
*
|
||||||
* A cell sent at exactly the start of this tick has weight 1.0. Cells sent
|
* A cell sent at exactly the start of this tick has weight 1.0. Cells sent
|
||||||
@ -53,7 +53,7 @@ struct cell_ewma_s {
|
|||||||
int heap_index;
|
int heap_index;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct ewma_policy_data_s {
|
struct ewma_policy_data_t {
|
||||||
circuitmux_policy_data_t base_;
|
circuitmux_policy_data_t base_;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -72,7 +72,7 @@ struct ewma_policy_data_s {
|
|||||||
unsigned int active_circuit_pqueue_last_recalibrated;
|
unsigned int active_circuit_pqueue_last_recalibrated;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct ewma_policy_circ_data_s {
|
struct ewma_policy_circ_data_t {
|
||||||
circuitmux_policy_circ_data_t base_;
|
circuitmux_policy_circ_data_t base_;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -175,7 +175,7 @@ typedef struct {
|
|||||||
} network_liveness_t;
|
} network_liveness_t;
|
||||||
|
|
||||||
/** Structure for circuit build times history */
|
/** Structure for circuit build times history */
|
||||||
struct circuit_build_times_s {
|
struct circuit_build_times_t {
|
||||||
/** The circular array of recorded build times in milliseconds */
|
/** The circular array of recorded build times in milliseconds */
|
||||||
build_time_t circuit_build_times[CBT_NCIRCUITS_TO_OBSERVE];
|
build_time_t circuit_build_times[CBT_NCIRCUITS_TO_OBSERVE];
|
||||||
/** Current index in the circuit_build_times circular array */
|
/** Current index in the circuit_build_times circular array */
|
||||||
|
@ -609,21 +609,21 @@ typedef uint32_t circid_t;
|
|||||||
/** Identifies a stream on a circuit */
|
/** Identifies a stream on a circuit */
|
||||||
typedef uint16_t streamid_t;
|
typedef uint16_t streamid_t;
|
||||||
|
|
||||||
/* channel_t typedef; struct channel_s is in channel.h */
|
/* channel_t typedef; struct channel_t is in channel.h */
|
||||||
|
|
||||||
typedef struct channel_s channel_t;
|
typedef struct channel_t channel_t;
|
||||||
|
|
||||||
/* channel_listener_t typedef; struct channel_listener_s is in channel.h */
|
/* channel_listener_t typedef; struct channel_listener_t is in channel.h */
|
||||||
|
|
||||||
typedef struct channel_listener_s channel_listener_t;
|
typedef struct channel_listener_t channel_listener_t;
|
||||||
|
|
||||||
/* TLS channel stuff */
|
/* TLS channel stuff */
|
||||||
|
|
||||||
typedef struct channel_tls_s channel_tls_t;
|
typedef struct channel_tls_t channel_tls_t;
|
||||||
|
|
||||||
/* circuitmux_t typedef; struct circuitmux_s is in circuitmux.h */
|
/* circuitmux_t typedef; struct circuitmux_t is in circuitmux.h */
|
||||||
|
|
||||||
typedef struct circuitmux_s circuitmux_t;
|
typedef struct circuitmux_t circuitmux_t;
|
||||||
|
|
||||||
typedef struct cell_t cell_t;
|
typedef struct cell_t cell_t;
|
||||||
typedef struct var_cell_t var_cell_t;
|
typedef struct var_cell_t var_cell_t;
|
||||||
@ -1013,7 +1013,7 @@ typedef struct or_state_t or_state_t;
|
|||||||
#define BW_MIN_WEIGHT_SCALE 1
|
#define BW_MIN_WEIGHT_SCALE 1
|
||||||
#define BW_MAX_WEIGHT_SCALE INT32_MAX
|
#define BW_MAX_WEIGHT_SCALE INT32_MAX
|
||||||
|
|
||||||
typedef struct circuit_build_times_s circuit_build_times_t;
|
typedef struct circuit_build_times_t circuit_build_times_t;
|
||||||
|
|
||||||
/********************************* config.c ***************************/
|
/********************************* config.c ***************************/
|
||||||
|
|
||||||
|
@ -27,7 +27,7 @@ struct or_circuit_t {
|
|||||||
/** Pointer to a workqueue entry, if this circuit has given an onionskin to
|
/** Pointer to a workqueue entry, if this circuit has given an onionskin to
|
||||||
* a cpuworker and is waiting for a response. Used to decide whether it is
|
* a cpuworker and is waiting for a response. Used to decide whether it is
|
||||||
* safe to free a circuit or if it is still in use by a cpuworker. */
|
* safe to free a circuit or if it is still in use by a cpuworker. */
|
||||||
struct workqueue_entry_s *workqueue_entry;
|
struct workqueue_entry_t *workqueue_entry;
|
||||||
|
|
||||||
/** The circuit_id used in the previous (backward) hop of this circuit. */
|
/** The circuit_id used in the previous (backward) hop of this circuit. */
|
||||||
circid_t p_circ_id;
|
circid_t p_circ_id;
|
||||||
|
@ -107,7 +107,7 @@ handle_relay_cell_command(cell_t *cell, circuit_t *circ,
|
|||||||
STATIC int connected_cell_parse(const relay_header_t *rh, const cell_t *cell,
|
STATIC int connected_cell_parse(const relay_header_t *rh, const cell_t *cell,
|
||||||
tor_addr_t *addr_out, int *ttl_out);
|
tor_addr_t *addr_out, int *ttl_out);
|
||||||
/** An address-and-ttl tuple as yielded by resolved_cell_parse */
|
/** An address-and-ttl tuple as yielded by resolved_cell_parse */
|
||||||
typedef struct address_ttl_s {
|
typedef struct address_ttl_t {
|
||||||
tor_addr_t addr;
|
tor_addr_t addr;
|
||||||
char *hostname;
|
char *hostname;
|
||||||
int ttl;
|
int ttl;
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
#ifndef RELAY_CRYPTO_ST_H
|
#ifndef RELAY_CRYPTO_ST_H
|
||||||
#define RELAY_CRYPTO_ST_H
|
#define RELAY_CRYPTO_ST_H
|
||||||
|
|
||||||
#define crypto_cipher_t aes_cnt_cipher
|
#define crypto_cipher_t aes_cnt_cipher_t
|
||||||
struct crypto_cipher_t;
|
struct crypto_cipher_t;
|
||||||
struct crypto_digest_t;
|
struct crypto_digest_t;
|
||||||
|
|
||||||
|
@ -40,7 +40,7 @@ typedef enum {
|
|||||||
* doesn't create any state for itself, thus it has nothing to free when Tor
|
* doesn't create any state for itself, thus it has nothing to free when Tor
|
||||||
* is shutting down), then set that function pointer to NULL.
|
* is shutting down), then set that function pointer to NULL.
|
||||||
*/
|
*/
|
||||||
typedef struct scheduler_s {
|
typedef struct scheduler_t {
|
||||||
/* Scheduler type. This is used for logging when the scheduler is switched
|
/* Scheduler type. This is used for logging when the scheduler is switched
|
||||||
* during runtime. */
|
* during runtime. */
|
||||||
scheduler_types_t type;
|
scheduler_types_t type;
|
||||||
@ -173,8 +173,8 @@ void scheduler_touch_channel(channel_t *chan);
|
|||||||
|
|
||||||
/* Socket table entry which holds information of a channel's socket and kernel
|
/* Socket table entry which holds information of a channel's socket and kernel
|
||||||
* TCP information. Only used by KIST. */
|
* TCP information. Only used by KIST. */
|
||||||
typedef struct socket_table_ent_s {
|
typedef struct socket_table_ent_t {
|
||||||
HT_ENTRY(socket_table_ent_s) node;
|
HT_ENTRY(socket_table_ent_t) node;
|
||||||
const channel_t *chan;
|
const channel_t *chan;
|
||||||
/* Amount written this scheduling run */
|
/* Amount written this scheduling run */
|
||||||
uint64_t written;
|
uint64_t written;
|
||||||
@ -187,7 +187,7 @@ typedef struct socket_table_ent_s {
|
|||||||
uint32_t notsent;
|
uint32_t notsent;
|
||||||
} socket_table_ent_t;
|
} socket_table_ent_t;
|
||||||
|
|
||||||
typedef HT_HEAD(outbuf_table_s, outbuf_table_ent_s) outbuf_table_t;
|
typedef HT_HEAD(outbuf_table_s, outbuf_table_ent_t) outbuf_table_t;
|
||||||
|
|
||||||
MOCK_DECL(int, channel_should_write_to_kernel,
|
MOCK_DECL(int, channel_should_write_to_kernel,
|
||||||
(outbuf_table_t *table, channel_t *chan));
|
(outbuf_table_t *table, channel_t *chan));
|
||||||
|
@ -51,13 +51,13 @@ socket_table_ent_eq(const socket_table_ent_t *a, const socket_table_ent_t *b)
|
|||||||
return a->chan == b->chan;
|
return a->chan == b->chan;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef HT_HEAD(socket_table_s, socket_table_ent_s) socket_table_t;
|
typedef HT_HEAD(socket_table_s, socket_table_ent_t) socket_table_t;
|
||||||
|
|
||||||
static socket_table_t socket_table = HT_INITIALIZER();
|
static socket_table_t socket_table = HT_INITIALIZER();
|
||||||
|
|
||||||
HT_PROTOTYPE(socket_table_s, socket_table_ent_s, node, socket_table_ent_hash,
|
HT_PROTOTYPE(socket_table_s, socket_table_ent_t, node, socket_table_ent_hash,
|
||||||
socket_table_ent_eq)
|
socket_table_ent_eq)
|
||||||
HT_GENERATE2(socket_table_s, socket_table_ent_s, node, socket_table_ent_hash,
|
HT_GENERATE2(socket_table_s, socket_table_ent_t, node, socket_table_ent_hash,
|
||||||
socket_table_ent_eq, 0.6, tor_reallocarray, tor_free_)
|
socket_table_ent_eq, 0.6, tor_reallocarray, tor_free_)
|
||||||
|
|
||||||
/* outbuf_table hash table stuff. The outbuf_table keeps track of which
|
/* outbuf_table hash table stuff. The outbuf_table keeps track of which
|
||||||
@ -65,8 +65,8 @@ HT_GENERATE2(socket_table_s, socket_table_ent_s, node, socket_table_ent_hash,
|
|||||||
* a write from outbuf to kernel periodically during a run and at the end of a
|
* a write from outbuf to kernel periodically during a run and at the end of a
|
||||||
* run. */
|
* run. */
|
||||||
|
|
||||||
typedef struct outbuf_table_ent_s {
|
typedef struct outbuf_table_ent_t {
|
||||||
HT_ENTRY(outbuf_table_ent_s) node;
|
HT_ENTRY(outbuf_table_ent_t) node;
|
||||||
channel_t *chan;
|
channel_t *chan;
|
||||||
} outbuf_table_ent_t;
|
} outbuf_table_ent_t;
|
||||||
|
|
||||||
@ -82,9 +82,9 @@ outbuf_table_ent_eq(const outbuf_table_ent_t *a, const outbuf_table_ent_t *b)
|
|||||||
return a->chan->global_identifier == b->chan->global_identifier;
|
return a->chan->global_identifier == b->chan->global_identifier;
|
||||||
}
|
}
|
||||||
|
|
||||||
HT_PROTOTYPE(outbuf_table_s, outbuf_table_ent_s, node, outbuf_table_ent_hash,
|
HT_PROTOTYPE(outbuf_table_s, outbuf_table_ent_t, node, outbuf_table_ent_hash,
|
||||||
outbuf_table_ent_eq)
|
outbuf_table_ent_eq)
|
||||||
HT_GENERATE2(outbuf_table_s, outbuf_table_ent_s, node, outbuf_table_ent_hash,
|
HT_GENERATE2(outbuf_table_s, outbuf_table_ent_t, node, outbuf_table_ent_hash,
|
||||||
outbuf_table_ent_eq, 0.6, tor_reallocarray, tor_free_)
|
outbuf_table_ent_eq, 0.6, tor_reallocarray, tor_free_)
|
||||||
|
|
||||||
/*****************************************************************************
|
/*****************************************************************************
|
||||||
|
@ -89,10 +89,10 @@ typedef uint64_t timeout_t;
|
|||||||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||||
|
|
||||||
#ifndef TIMEOUT_CB_OVERRIDE
|
#ifndef TIMEOUT_CB_OVERRIDE
|
||||||
struct timeout_cb {
|
struct timeout_cb_t {
|
||||||
void (*fn)(void);
|
void (*fn)(void);
|
||||||
void *arg;
|
void *arg;
|
||||||
}; /* struct timeout_cb */
|
}; /* struct timeout_cb_t */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -125,7 +125,7 @@ struct timeout {
|
|||||||
/* entry member for struct timeout_list lists */
|
/* entry member for struct timeout_list lists */
|
||||||
|
|
||||||
#ifndef TIMEOUT_DISABLE_CALLBACKS
|
#ifndef TIMEOUT_DISABLE_CALLBACKS
|
||||||
struct timeout_cb callback;
|
struct timeout_cb_t callback;
|
||||||
/* optional callback information */
|
/* optional callback information */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
#include "lib/container/handles.h"
|
#include "lib/container/handles.h"
|
||||||
|
|
||||||
/* Forward declare for guard_selection_t; entrynodes.c has the real struct */
|
/* Forward declare for guard_selection_t; entrynodes.c has the real struct */
|
||||||
typedef struct guard_selection_s guard_selection_t;
|
typedef struct guard_selection_t guard_selection_t;
|
||||||
|
|
||||||
/* Forward declare for entry_guard_t; the real declaration is private. */
|
/* Forward declare for entry_guard_t; the real declaration is private. */
|
||||||
typedef struct entry_guard_t entry_guard_t;
|
typedef struct entry_guard_t entry_guard_t;
|
||||||
@ -210,7 +210,7 @@ typedef enum guard_selection_type_t {
|
|||||||
* See the module documentation for entrynodes.c for more information
|
* See the module documentation for entrynodes.c for more information
|
||||||
* about guard selection algorithms.
|
* about guard selection algorithms.
|
||||||
*/
|
*/
|
||||||
struct guard_selection_s {
|
struct guard_selection_t {
|
||||||
/**
|
/**
|
||||||
* The name for this guard-selection object. (Must not contain spaces).
|
* The name for this guard-selection object. (Must not contain spaces).
|
||||||
*/
|
*/
|
||||||
|
@ -317,7 +317,7 @@ control_per_second_events(void)
|
|||||||
|
|
||||||
/** Represents an event that's queued to be sent to one or more
|
/** Represents an event that's queued to be sent to one or more
|
||||||
* controllers. */
|
* controllers. */
|
||||||
typedef struct queued_event_s {
|
typedef struct queued_event_t {
|
||||||
uint16_t event;
|
uint16_t event;
|
||||||
char *msg;
|
char *msg;
|
||||||
} queued_event_t;
|
} queued_event_t;
|
||||||
@ -1211,7 +1211,7 @@ control_event_circuit_cell_stats(void)
|
|||||||
static int next_measurement_idx = 0;
|
static int next_measurement_idx = 0;
|
||||||
/* number of entries set in n_measurements */
|
/* number of entries set in n_measurements */
|
||||||
static int n_measurements = 0;
|
static int n_measurements = 0;
|
||||||
static struct cached_bw_event_s {
|
static struct cached_bw_event_t {
|
||||||
uint32_t n_read;
|
uint32_t n_read;
|
||||||
uint32_t n_written;
|
uint32_t n_written;
|
||||||
} cached_bw_events[N_BW_EVENTS_TO_CACHE];
|
} cached_bw_events[N_BW_EVENTS_TO_CACHE];
|
||||||
@ -1250,7 +1250,7 @@ get_bw_samples(void)
|
|||||||
|
|
||||||
for (i = 0; i < n_measurements; ++i) {
|
for (i = 0; i < n_measurements; ++i) {
|
||||||
tor_assert(0 <= idx && idx < N_BW_EVENTS_TO_CACHE);
|
tor_assert(0 <= idx && idx < N_BW_EVENTS_TO_CACHE);
|
||||||
const struct cached_bw_event_s *bwe = &cached_bw_events[idx];
|
const struct cached_bw_event_t *bwe = &cached_bw_events[idx];
|
||||||
|
|
||||||
smartlist_add_asprintf(elements, "%u,%u",
|
smartlist_add_asprintf(elements, "%u,%u",
|
||||||
(unsigned)bwe->n_read,
|
(unsigned)bwe->n_read,
|
||||||
|
@ -56,7 +56,7 @@ dirserv_get_last_n_measured_bws(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/** Measured bandwidth cache entry */
|
/** Measured bandwidth cache entry */
|
||||||
typedef struct mbw_cache_entry_s {
|
typedef struct mbw_cache_entry_t {
|
||||||
long mbw_kb;
|
long mbw_kb;
|
||||||
time_t as_of;
|
time_t as_of;
|
||||||
} mbw_cache_entry_t;
|
} mbw_cache_entry_t;
|
||||||
|
@ -32,8 +32,8 @@ static void dircollator_collate_by_ed25519(dircollator_t *dc);
|
|||||||
|
|
||||||
/** Hashtable entry mapping a pair of digests (actually an ed25519 key and an
|
/** Hashtable entry mapping a pair of digests (actually an ed25519 key and an
|
||||||
* RSA SHA1 digest) to an array of vote_routerstatus_t. */
|
* RSA SHA1 digest) to an array of vote_routerstatus_t. */
|
||||||
typedef struct ddmap_entry_s {
|
typedef struct ddmap_entry_t {
|
||||||
HT_ENTRY(ddmap_entry_s) node;
|
HT_ENTRY(ddmap_entry_t) node;
|
||||||
/** A SHA1-RSA1024 identity digest and Ed25519 identity key,
|
/** A SHA1-RSA1024 identity digest and Ed25519 identity key,
|
||||||
* concatenated. (If there is no ed25519 identity key, there is no
|
* concatenated. (If there is no ed25519 identity key, there is no
|
||||||
* entry in this table.) */
|
* entry in this table.) */
|
||||||
@ -89,9 +89,9 @@ ddmap_entry_set_digests(ddmap_entry_t *ent,
|
|||||||
memcpy(ent->d + DIGEST_LEN, ed25519, DIGEST256_LEN);
|
memcpy(ent->d + DIGEST_LEN, ed25519, DIGEST256_LEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
HT_PROTOTYPE(double_digest_map, ddmap_entry_s, node, ddmap_entry_hash,
|
HT_PROTOTYPE(double_digest_map, ddmap_entry_t, node, ddmap_entry_hash,
|
||||||
ddmap_entry_eq)
|
ddmap_entry_eq)
|
||||||
HT_GENERATE2(double_digest_map, ddmap_entry_s, node, ddmap_entry_hash,
|
HT_GENERATE2(double_digest_map, ddmap_entry_t, node, ddmap_entry_hash,
|
||||||
ddmap_entry_eq, 0.6, tor_reallocarray, tor_free_)
|
ddmap_entry_eq, 0.6, tor_reallocarray, tor_free_)
|
||||||
|
|
||||||
/** Helper: add a single vote_routerstatus_t <b>vrs</b> to the collator
|
/** Helper: add a single vote_routerstatus_t <b>vrs</b> to the collator
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
#include "lib/testsupport/testsupport.h"
|
#include "lib/testsupport/testsupport.h"
|
||||||
#include "core/or/or.h"
|
#include "core/or/or.h"
|
||||||
|
|
||||||
typedef struct dircollator_s dircollator_t;
|
typedef struct dircollator_t dircollator_t;
|
||||||
|
|
||||||
dircollator_t *dircollator_new(int n_votes, int n_authorities);
|
dircollator_t *dircollator_new(int n_votes, int n_authorities);
|
||||||
void dircollator_free_(dircollator_t *obj);
|
void dircollator_free_(dircollator_t *obj);
|
||||||
@ -30,11 +30,11 @@ vote_routerstatus_t **dircollator_get_votes_for_router(dircollator_t *dc,
|
|||||||
int idx);
|
int idx);
|
||||||
|
|
||||||
#ifdef DIRCOLLATE_PRIVATE
|
#ifdef DIRCOLLATE_PRIVATE
|
||||||
struct ddmap_entry_s;
|
struct ddmap_entry_t;
|
||||||
typedef HT_HEAD(double_digest_map, ddmap_entry_s) double_digest_map_t;
|
typedef HT_HEAD(double_digest_map, ddmap_entry_t) double_digest_map_t;
|
||||||
/** A dircollator keeps track of all the routerstatus entries in a
|
/** A dircollator keeps track of all the routerstatus entries in a
|
||||||
* set of networkstatus votes, and matches them by an appropriate rule. */
|
* set of networkstatus votes, and matches them by an appropriate rule. */
|
||||||
struct dircollator_s {
|
struct dircollator_t {
|
||||||
/** True iff we have run the collation algorithm. */
|
/** True iff we have run the collation algorithm. */
|
||||||
int is_collated;
|
int is_collated;
|
||||||
/** The total number of votes that we received. */
|
/** The total number of votes that we received. */
|
||||||
|
@ -138,7 +138,7 @@ consensus_cache_may_overallocate(consensus_cache_t *cache)
|
|||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
consensus_cache_register_with_sandbox(consensus_cache_t *cache,
|
consensus_cache_register_with_sandbox(consensus_cache_t *cache,
|
||||||
struct sandbox_cfg_elem **cfg)
|
struct sandbox_cfg_elem_t **cfg)
|
||||||
{
|
{
|
||||||
#ifdef MUST_UNMAP_TO_UNLINK
|
#ifdef MUST_UNMAP_TO_UNLINK
|
||||||
/* Our Linux sandbox doesn't support huge file lists like the one that would
|
/* Our Linux sandbox doesn't support huge file lists like the one that would
|
||||||
|
@ -23,10 +23,10 @@ consensus_cache_t *consensus_cache_open(const char *subdir, int max_entries);
|
|||||||
void consensus_cache_free_(consensus_cache_t *cache);
|
void consensus_cache_free_(consensus_cache_t *cache);
|
||||||
#define consensus_cache_free(cache) \
|
#define consensus_cache_free(cache) \
|
||||||
FREE_AND_NULL(consensus_cache_t, consensus_cache_free_, (cache))
|
FREE_AND_NULL(consensus_cache_t, consensus_cache_free_, (cache))
|
||||||
struct sandbox_cfg_elem;
|
struct sandbox_cfg_elem_t;
|
||||||
int consensus_cache_may_overallocate(consensus_cache_t *cache);
|
int consensus_cache_may_overallocate(consensus_cache_t *cache);
|
||||||
int consensus_cache_register_with_sandbox(consensus_cache_t *cache,
|
int consensus_cache_register_with_sandbox(consensus_cache_t *cache,
|
||||||
struct sandbox_cfg_elem **cfg);
|
struct sandbox_cfg_elem_t **cfg);
|
||||||
void consensus_cache_unmap_lazy(consensus_cache_t *cache, time_t cutoff);
|
void consensus_cache_unmap_lazy(consensus_cache_t *cache, time_t cutoff);
|
||||||
void consensus_cache_delete_pending(consensus_cache_t *cache,
|
void consensus_cache_delete_pending(consensus_cache_t *cache,
|
||||||
int force);
|
int force);
|
||||||
|
@ -844,7 +844,7 @@ consdiffmgr_configure(const consdiff_cfg_t *cfg)
|
|||||||
* operations that the consensus diff manager will need.
|
* operations that the consensus diff manager will need.
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
consdiffmgr_register_with_sandbox(struct sandbox_cfg_elem **cfg)
|
consdiffmgr_register_with_sandbox(struct sandbox_cfg_elem_t **cfg)
|
||||||
{
|
{
|
||||||
return consensus_cache_register_with_sandbox(cdm_cache_get(), cfg);
|
return consensus_cache_register_with_sandbox(cdm_cache_get(), cfg);
|
||||||
}
|
}
|
||||||
|
@ -60,8 +60,8 @@ void consdiffmgr_rescan(void);
|
|||||||
int consdiffmgr_cleanup(void);
|
int consdiffmgr_cleanup(void);
|
||||||
void consdiffmgr_enable_background_compression(void);
|
void consdiffmgr_enable_background_compression(void);
|
||||||
void consdiffmgr_configure(const consdiff_cfg_t *cfg);
|
void consdiffmgr_configure(const consdiff_cfg_t *cfg);
|
||||||
struct sandbox_cfg_elem;
|
struct sandbox_cfg_elem_t;
|
||||||
int consdiffmgr_register_with_sandbox(struct sandbox_cfg_elem **cfg);
|
int consdiffmgr_register_with_sandbox(struct sandbox_cfg_elem_t **cfg);
|
||||||
void consdiffmgr_free_all(void);
|
void consdiffmgr_free_all(void);
|
||||||
int consdiffmgr_validate(void);
|
int consdiffmgr_validate(void);
|
||||||
|
|
||||||
|
@ -334,7 +334,7 @@ typedef struct get_handler_args_t {
|
|||||||
* an arguments structure, and must return 0 on success or -1 if we should
|
* an arguments structure, and must return 0 on success or -1 if we should
|
||||||
* close the connection.
|
* close the connection.
|
||||||
**/
|
**/
|
||||||
typedef struct url_table_ent_s {
|
typedef struct url_table_ent_t {
|
||||||
const char *string;
|
const char *string;
|
||||||
int is_prefix;
|
int is_prefix;
|
||||||
int (*handler)(dir_connection_t *conn, const get_handler_args_t *args);
|
int (*handler)(dir_connection_t *conn, const get_handler_args_t *args);
|
||||||
|
@ -22,14 +22,14 @@
|
|||||||
|
|
||||||
/* Define fp_pair_map_t structures */
|
/* Define fp_pair_map_t structures */
|
||||||
|
|
||||||
struct fp_pair_map_entry_s {
|
struct fp_pair_map_entry_t {
|
||||||
HT_ENTRY(fp_pair_map_entry_s) node;
|
HT_ENTRY(fp_pair_map_entry_t) node;
|
||||||
void *val;
|
void *val;
|
||||||
fp_pair_t key;
|
fp_pair_t key;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct fp_pair_map_s {
|
struct fp_pair_map_t {
|
||||||
HT_HEAD(fp_pair_map_impl, fp_pair_map_entry_s) head;
|
HT_HEAD(fp_pair_map_impl, fp_pair_map_entry_t) head;
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -56,9 +56,9 @@ fp_pair_map_entry_hash(const fp_pair_map_entry_t *a)
|
|||||||
* Hash table functions for fp_pair_map_t
|
* Hash table functions for fp_pair_map_t
|
||||||
*/
|
*/
|
||||||
|
|
||||||
HT_PROTOTYPE(fp_pair_map_impl, fp_pair_map_entry_s, node,
|
HT_PROTOTYPE(fp_pair_map_impl, fp_pair_map_entry_t, node,
|
||||||
fp_pair_map_entry_hash, fp_pair_map_entries_eq)
|
fp_pair_map_entry_hash, fp_pair_map_entries_eq)
|
||||||
HT_GENERATE2(fp_pair_map_impl, fp_pair_map_entry_s, node,
|
HT_GENERATE2(fp_pair_map_impl, fp_pair_map_entry_t, node,
|
||||||
fp_pair_map_entry_hash, fp_pair_map_entries_eq,
|
fp_pair_map_entry_hash, fp_pair_map_entries_eq,
|
||||||
0.6, tor_reallocarray_, tor_free_)
|
0.6, tor_reallocarray_, tor_free_)
|
||||||
|
|
||||||
|
@ -19,8 +19,8 @@ typedef struct {
|
|||||||
* Declare fp_pair_map_t functions and structs
|
* Declare fp_pair_map_t functions and structs
|
||||||
*/
|
*/
|
||||||
|
|
||||||
typedef struct fp_pair_map_entry_s fp_pair_map_entry_t;
|
typedef struct fp_pair_map_entry_t fp_pair_map_entry_t;
|
||||||
typedef struct fp_pair_map_s fp_pair_map_t;
|
typedef struct fp_pair_map_t fp_pair_map_t;
|
||||||
typedef fp_pair_map_entry_t *fp_pair_map_iter_t;
|
typedef fp_pair_map_entry_t *fp_pair_map_iter_t;
|
||||||
|
|
||||||
fp_pair_map_t * fp_pair_map_new(void);
|
fp_pair_map_t * fp_pair_map_new(void);
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
#include "lib/cc/torint.h"
|
#include "lib/cc/torint.h"
|
||||||
#include "lib/malloc/malloc.h"
|
#include "lib/malloc/malloc.h"
|
||||||
|
|
||||||
typedef struct aes_cnt_cipher aes_cnt_cipher_t;
|
typedef struct aes_cnt_cipher_t aes_cnt_cipher_t;
|
||||||
|
|
||||||
aes_cnt_cipher_t* aes_new_cipher(const uint8_t *key, const uint8_t *iv,
|
aes_cnt_cipher_t* aes_new_cipher(const uint8_t *key, const uint8_t *iv,
|
||||||
int key_bits);
|
int key_bits);
|
||||||
|
@ -154,7 +154,7 @@ evaluate_ctr_for_aes(void)
|
|||||||
/* Interface to AES code, and counter implementation */
|
/* Interface to AES code, and counter implementation */
|
||||||
|
|
||||||
/** Implements an AES counter-mode cipher. */
|
/** Implements an AES counter-mode cipher. */
|
||||||
struct aes_cnt_cipher {
|
struct aes_cnt_cipher_t {
|
||||||
/** This next element (however it's defined) is the AES key. */
|
/** This next element (however it's defined) is the AES key. */
|
||||||
union {
|
union {
|
||||||
EVP_CIPHER_CTX evp;
|
EVP_CIPHER_CTX evp;
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
/** Length of our symmetric cipher's keys of 256-bit. */
|
/** Length of our symmetric cipher's keys of 256-bit. */
|
||||||
#define CIPHER256_KEY_LEN 32
|
#define CIPHER256_KEY_LEN 32
|
||||||
|
|
||||||
typedef struct aes_cnt_cipher crypto_cipher_t;
|
typedef struct aes_cnt_cipher_t crypto_cipher_t;
|
||||||
|
|
||||||
/* environment setup */
|
/* environment setup */
|
||||||
crypto_cipher_t *crypto_cipher_new(const char *key);
|
crypto_cipher_t *crypto_cipher_new(const char *key);
|
||||||
|
@ -42,10 +42,10 @@ void crypto_ope_free_(crypto_ope_t *ope);
|
|||||||
uint64_t crypto_ope_encrypt(const crypto_ope_t *ope, int plaintext);
|
uint64_t crypto_ope_encrypt(const crypto_ope_t *ope, int plaintext);
|
||||||
|
|
||||||
#ifdef CRYPTO_OPE_PRIVATE
|
#ifdef CRYPTO_OPE_PRIVATE
|
||||||
struct aes_cnt_cipher;
|
struct aes_cnt_cipher_t;
|
||||||
STATIC struct aes_cnt_cipher *ope_get_cipher(const crypto_ope_t *ope,
|
STATIC struct aes_cnt_cipher_t *ope_get_cipher(const crypto_ope_t *ope,
|
||||||
uint32_t initial_idx);
|
uint32_t initial_idx);
|
||||||
STATIC uint64_t sum_values_from_cipher(struct aes_cnt_cipher *c, size_t n);
|
STATIC uint64_t sum_values_from_cipher(struct aes_cnt_cipher_t *c, size_t n);
|
||||||
#endif /* defined(CRYPTO_OPE_PRIVATE) */
|
#endif /* defined(CRYPTO_OPE_PRIVATE) */
|
||||||
|
|
||||||
#endif /* !defined(CRYPTO_OPE_H) */
|
#endif /* !defined(CRYPTO_OPE_H) */
|
||||||
|
@ -102,16 +102,16 @@ struct crypto_fast_rng_t {
|
|||||||
* crypto_strongest_rand().
|
* crypto_strongest_rand().
|
||||||
*/
|
*/
|
||||||
int16_t n_till_reseed;
|
int16_t n_till_reseed;
|
||||||
/** How many bytes are remaining in cbuf.bytes? */
|
/** How many bytes are remaining in cbuf_t.bytes? */
|
||||||
uint16_t bytes_left;
|
uint16_t bytes_left;
|
||||||
#ifdef CHECK_PID
|
#ifdef CHECK_PID
|
||||||
/** Which process owns this fast_rng? If this value is zero, we do not
|
/** Which process owns this fast_rng? If this value is zero, we do not
|
||||||
* need to test the owner. */
|
* need to test the owner. */
|
||||||
pid_t owner;
|
pid_t owner;
|
||||||
#endif
|
#endif
|
||||||
struct cbuf {
|
struct cbuf_t {
|
||||||
/** The seed (key and IV) that we will use the next time that we refill
|
/** The seed (key and IV) that we will use the next time that we refill
|
||||||
* cbuf. */
|
* cbuf_t. */
|
||||||
uint8_t seed[SEED_LEN];
|
uint8_t seed[SEED_LEN];
|
||||||
/**
|
/**
|
||||||
* Bytes that we are yielding to the user. The next byte to be
|
* Bytes that we are yielding to the user. The next byte to be
|
||||||
@ -122,9 +122,9 @@ struct crypto_fast_rng_t {
|
|||||||
} buf;
|
} buf;
|
||||||
};
|
};
|
||||||
|
|
||||||
/* alignof(uint8_t) should be 1, so there shouldn't be any padding in cbuf.
|
/* alignof(uint8_t) should be 1, so there shouldn't be any padding in cbuf_t.
|
||||||
*/
|
*/
|
||||||
CTASSERT(sizeof(struct cbuf) == BUFLEN+SEED_LEN);
|
CTASSERT(sizeof(struct cbuf_t) == BUFLEN+SEED_LEN);
|
||||||
/* We're trying to fit all of the RNG state into a nice mmapable chunk.
|
/* We're trying to fit all of the RNG state into a nice mmapable chunk.
|
||||||
*/
|
*/
|
||||||
CTASSERT(sizeof(crypto_fast_rng_t) <= MAPLEN);
|
CTASSERT(sizeof(crypto_fast_rng_t) <= MAPLEN);
|
||||||
|
@ -130,7 +130,7 @@ rescan_mainloop_cb(evutil_socket_t fd, short events, void *arg)
|
|||||||
|
|
||||||
/** Initialize the Libevent library and set up the event base. */
|
/** Initialize the Libevent library and set up the event base. */
|
||||||
void
|
void
|
||||||
tor_libevent_initialize(tor_libevent_cfg *torcfg)
|
tor_libevent_initialize(tor_libevent_cfg_t *torcfg)
|
||||||
{
|
{
|
||||||
tor_assert(the_event_base == NULL);
|
tor_assert(the_event_base == NULL);
|
||||||
/* some paths below don't use torcfg, so avoid unused variable warnings */
|
/* some paths below don't use torcfg, so avoid unused variable warnings */
|
||||||
|
@ -61,15 +61,15 @@ void mainloop_event_free_(mainloop_event_t *event);
|
|||||||
|
|
||||||
/** Defines a configuration for using libevent with Tor: passed as an argument
|
/** Defines a configuration for using libevent with Tor: passed as an argument
|
||||||
* to tor_libevent_initialize() to describe how we want to set up. */
|
* to tor_libevent_initialize() to describe how we want to set up. */
|
||||||
typedef struct tor_libevent_cfg {
|
typedef struct tor_libevent_cfg_t {
|
||||||
/** How many CPUs should we use (not currently useful). */
|
/** How many CPUs should we use (not currently useful). */
|
||||||
int num_cpus;
|
int num_cpus;
|
||||||
/** How many milliseconds should we allow between updating bandwidth limits?
|
/** How many milliseconds should we allow between updating bandwidth limits?
|
||||||
* (Not currently useful). */
|
* (Not currently useful). */
|
||||||
int msec_per_tick;
|
int msec_per_tick;
|
||||||
} tor_libevent_cfg;
|
} tor_libevent_cfg_t;
|
||||||
|
|
||||||
void tor_libevent_initialize(tor_libevent_cfg *cfg);
|
void tor_libevent_initialize(tor_libevent_cfg_t *cfg);
|
||||||
bool tor_libevent_is_initialized(void);
|
bool tor_libevent_is_initialized(void);
|
||||||
MOCK_DECL(struct event_base *, tor_libevent_get_base, (void));
|
MOCK_DECL(struct event_base *, tor_libevent_get_base, (void));
|
||||||
const char *tor_libevent_get_method(void);
|
const char *tor_libevent_get_method(void);
|
||||||
|
@ -48,7 +48,7 @@
|
|||||||
#include <winsock2.h>
|
#include <winsock2.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
struct timeout_cb {
|
struct timeout_cb_t {
|
||||||
timer_cb_fn_t cb;
|
timer_cb_fn_t cb;
|
||||||
void *arg;
|
void *arg;
|
||||||
};
|
};
|
||||||
@ -70,7 +70,7 @@ struct timeout_cb {
|
|||||||
/* We always know the global_timeouts object, so we don't need each timeout
|
/* We always know the global_timeouts object, so we don't need each timeout
|
||||||
* to keep a pointer to it. */
|
* to keep a pointer to it. */
|
||||||
#define TIMEOUT_DISABLE_RELATIVE_ACCESS
|
#define TIMEOUT_DISABLE_RELATIVE_ACCESS
|
||||||
/* We're providing our own struct timeout_cb. */
|
/* We're providing our own struct timeout_cb_t. */
|
||||||
#define TIMEOUT_CB_OVERRIDE
|
#define TIMEOUT_CB_OVERRIDE
|
||||||
/* We're going to support timers that are pretty far out in advance. Making
|
/* We're going to support timers that are pretty far out in advance. Making
|
||||||
* this big can be inefficient, but having a significant number of timers
|
* this big can be inefficient, but having a significant number of timers
|
||||||
|
@ -44,13 +44,13 @@
|
|||||||
#define WORKQUEUE_PRIORITY_LAST WQ_PRI_LOW
|
#define WORKQUEUE_PRIORITY_LAST WQ_PRI_LOW
|
||||||
#define WORKQUEUE_N_PRIORITIES (((int) WORKQUEUE_PRIORITY_LAST)+1)
|
#define WORKQUEUE_N_PRIORITIES (((int) WORKQUEUE_PRIORITY_LAST)+1)
|
||||||
|
|
||||||
TOR_TAILQ_HEAD(work_tailq_t, workqueue_entry_s);
|
TOR_TAILQ_HEAD(work_tailq_t, workqueue_entry_t);
|
||||||
typedef struct work_tailq_t work_tailq_t;
|
typedef struct work_tailq_t work_tailq_t;
|
||||||
|
|
||||||
struct threadpool_s {
|
struct threadpool_t {
|
||||||
/** An array of pointers to workerthread_t: one for each running worker
|
/** An array of pointers to workerthread_t: one for each running worker
|
||||||
* thread. */
|
* thread. */
|
||||||
struct workerthread_s **threads;
|
struct workerthread_t **threads;
|
||||||
|
|
||||||
/** Condition variable that we wait on when we have no work, and which
|
/** Condition variable that we wait on when we have no work, and which
|
||||||
* gets signaled when our queue becomes nonempty. */
|
* gets signaled when our queue becomes nonempty. */
|
||||||
@ -92,14 +92,14 @@ struct threadpool_s {
|
|||||||
/** Number of bits needed to hold all legal values of workqueue_priority_t */
|
/** Number of bits needed to hold all legal values of workqueue_priority_t */
|
||||||
#define WORKQUEUE_PRIORITY_BITS 2
|
#define WORKQUEUE_PRIORITY_BITS 2
|
||||||
|
|
||||||
struct workqueue_entry_s {
|
struct workqueue_entry_t {
|
||||||
/** The next workqueue_entry_t that's pending on the same thread or
|
/** The next workqueue_entry_t that's pending on the same thread or
|
||||||
* reply queue. */
|
* reply queue. */
|
||||||
TOR_TAILQ_ENTRY(workqueue_entry_s) next_work;
|
TOR_TAILQ_ENTRY(workqueue_entry_t) next_work;
|
||||||
/** The threadpool to which this workqueue_entry_t was assigned. This field
|
/** The threadpool to which this workqueue_entry_t was assigned. This field
|
||||||
* is set when the workqueue_entry_t is created, and won't be cleared until
|
* is set when the workqueue_entry_t is created, and won't be cleared until
|
||||||
* after it's handled in the main thread. */
|
* after it's handled in the main thread. */
|
||||||
struct threadpool_s *on_pool;
|
struct threadpool_t *on_pool;
|
||||||
/** True iff this entry is waiting for a worker to start processing it. */
|
/** True iff this entry is waiting for a worker to start processing it. */
|
||||||
uint8_t pending;
|
uint8_t pending;
|
||||||
/** Priority of this entry. */
|
/** Priority of this entry. */
|
||||||
@ -112,22 +112,22 @@ struct workqueue_entry_s {
|
|||||||
void *arg;
|
void *arg;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct replyqueue_s {
|
struct replyqueue_t {
|
||||||
/** Mutex to protect the answers field */
|
/** Mutex to protect the answers field */
|
||||||
tor_mutex_t lock;
|
tor_mutex_t lock;
|
||||||
/** Doubly-linked list of answers that the reply queue needs to handle. */
|
/** Doubly-linked list of answers that the reply queue needs to handle. */
|
||||||
TOR_TAILQ_HEAD(, workqueue_entry_s) answers;
|
TOR_TAILQ_HEAD(, workqueue_entry_t) answers;
|
||||||
|
|
||||||
/** Mechanism to wake up the main thread when it is receiving answers. */
|
/** Mechanism to wake up the main thread when it is receiving answers. */
|
||||||
alert_sockets_t alert;
|
alert_sockets_t alert;
|
||||||
};
|
};
|
||||||
|
|
||||||
/** A worker thread represents a single thread in a thread pool. */
|
/** A worker thread represents a single thread in a thread pool. */
|
||||||
typedef struct workerthread_s {
|
typedef struct workerthread_t {
|
||||||
/** Which thread it this? In range 0..in_pool->n_threads-1 */
|
/** Which thread it this? In range 0..in_pool->n_threads-1 */
|
||||||
int index;
|
int index;
|
||||||
/** The pool this thread is a part of. */
|
/** The pool this thread is a part of. */
|
||||||
struct threadpool_s *in_pool;
|
struct threadpool_t *in_pool;
|
||||||
/** User-supplied state field that we pass to the worker functions of each
|
/** User-supplied state field that we pass to the worker functions of each
|
||||||
* work item. */
|
* work item. */
|
||||||
void *state;
|
void *state;
|
||||||
|
@ -13,12 +13,12 @@
|
|||||||
|
|
||||||
/** A replyqueue is used to tell the main thread about the outcome of
|
/** A replyqueue is used to tell the main thread about the outcome of
|
||||||
* work that we queued for the workers. */
|
* work that we queued for the workers. */
|
||||||
typedef struct replyqueue_s replyqueue_t;
|
typedef struct replyqueue_t replyqueue_t;
|
||||||
/** A thread-pool manages starting threads and passing work to them. */
|
/** A thread-pool manages starting threads and passing work to them. */
|
||||||
typedef struct threadpool_s threadpool_t;
|
typedef struct threadpool_t threadpool_t;
|
||||||
/** A workqueue entry represents a request that has been passed to a thread
|
/** A workqueue entry represents a request that has been passed to a thread
|
||||||
* pool. */
|
* pool. */
|
||||||
typedef struct workqueue_entry_s workqueue_entry_t;
|
typedef struct workqueue_entry_t workqueue_entry_t;
|
||||||
|
|
||||||
/** Possible return value from a work function: */
|
/** Possible return value from a work function: */
|
||||||
typedef enum workqueue_reply_t {
|
typedef enum workqueue_reply_t {
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
typedef struct storage_dir_t storage_dir_t;
|
typedef struct storage_dir_t storage_dir_t;
|
||||||
struct config_line_t;
|
struct config_line_t;
|
||||||
struct sandbox_cfg_elem;
|
struct sandbox_cfg_elem_t;
|
||||||
struct tor_mmap_t;
|
struct tor_mmap_t;
|
||||||
struct smartlist_t;
|
struct smartlist_t;
|
||||||
|
|
||||||
@ -25,7 +25,7 @@ void storage_dir_free_(storage_dir_t *d);
|
|||||||
FREE_AND_NULL(storage_dir_t, storage_dir_free_, (d))
|
FREE_AND_NULL(storage_dir_t, storage_dir_free_, (d))
|
||||||
|
|
||||||
int storage_dir_register_with_sandbox(storage_dir_t *d,
|
int storage_dir_register_with_sandbox(storage_dir_t *d,
|
||||||
struct sandbox_cfg_elem **cfg);
|
struct sandbox_cfg_elem_t **cfg);
|
||||||
const struct smartlist_t *storage_dir_list(storage_dir_t *d);
|
const struct smartlist_t *storage_dir_list(storage_dir_t *d);
|
||||||
uint64_t storage_dir_get_usage(storage_dir_t *d);
|
uint64_t storage_dir_get_usage(storage_dir_t *d);
|
||||||
struct tor_mmap_t *storage_dir_map(storage_dir_t *d, const char *fname);
|
struct tor_mmap_t *storage_dir_map(storage_dir_t *d, const char *fname);
|
||||||
|
@ -1418,7 +1418,7 @@ uniform_isf(const struct dist *dist, double p)
|
|||||||
return (p < 0.5 ? (U->b - w*p) : (U->a + w*(1 - p)));
|
return (p < 0.5 ? (U->b - w*p) : (U->a + w*(1 - p)));
|
||||||
}
|
}
|
||||||
|
|
||||||
const struct dist_ops uniform_ops = {
|
const struct dist_ops_t uniform_ops = {
|
||||||
.name = "uniform",
|
.name = "uniform",
|
||||||
.sample = uniform_sample,
|
.sample = uniform_sample,
|
||||||
.cdf = uniform_cdf,
|
.cdf = uniform_cdf,
|
||||||
@ -1472,7 +1472,7 @@ logistic_isf(const struct dist *dist, double p)
|
|||||||
return isf_logistic(p, L->mu, L->sigma);
|
return isf_logistic(p, L->mu, L->sigma);
|
||||||
}
|
}
|
||||||
|
|
||||||
const struct dist_ops logistic_ops = {
|
const struct dist_ops_t logistic_ops = {
|
||||||
.name = "logistic",
|
.name = "logistic",
|
||||||
.sample = logistic_sample,
|
.sample = logistic_sample,
|
||||||
.cdf = logistic_cdf,
|
.cdf = logistic_cdf,
|
||||||
@ -1521,7 +1521,7 @@ log_logistic_isf(const struct dist *dist, double p)
|
|||||||
return isf_log_logistic(p, LL->alpha, LL->beta);
|
return isf_log_logistic(p, LL->alpha, LL->beta);
|
||||||
}
|
}
|
||||||
|
|
||||||
const struct dist_ops log_logistic_ops = {
|
const struct dist_ops_t log_logistic_ops = {
|
||||||
.name = "log logistic",
|
.name = "log logistic",
|
||||||
.sample = log_logistic_sample,
|
.sample = log_logistic_sample,
|
||||||
.cdf = log_logistic_cdf,
|
.cdf = log_logistic_cdf,
|
||||||
@ -1570,7 +1570,7 @@ weibull_isf(const struct dist *dist, double p)
|
|||||||
return isf_weibull(p, W->lambda, W->k);
|
return isf_weibull(p, W->lambda, W->k);
|
||||||
}
|
}
|
||||||
|
|
||||||
const struct dist_ops weibull_ops = {
|
const struct dist_ops_t weibull_ops = {
|
||||||
.name = "Weibull",
|
.name = "Weibull",
|
||||||
.sample = weibull_sample,
|
.sample = weibull_sample,
|
||||||
.cdf = weibull_cdf,
|
.cdf = weibull_cdf,
|
||||||
@ -1619,7 +1619,7 @@ genpareto_isf(const struct dist *dist, double p)
|
|||||||
return isf_genpareto(p, GP->mu, GP->sigma, GP->xi);
|
return isf_genpareto(p, GP->mu, GP->sigma, GP->xi);
|
||||||
}
|
}
|
||||||
|
|
||||||
const struct dist_ops genpareto_ops = {
|
const struct dist_ops_t genpareto_ops = {
|
||||||
.name = "generalized Pareto",
|
.name = "generalized Pareto",
|
||||||
.sample = genpareto_sample,
|
.sample = genpareto_sample,
|
||||||
.cdf = genpareto_cdf,
|
.cdf = genpareto_cdf,
|
||||||
@ -1678,7 +1678,7 @@ geometric_isf(const struct dist *dist, double p)
|
|||||||
return log(p)/log1p(-G->p);
|
return log(p)/log1p(-G->p);
|
||||||
}
|
}
|
||||||
|
|
||||||
const struct dist_ops geometric_ops = {
|
const struct dist_ops_t geometric_ops = {
|
||||||
.name = "geometric (1-based)",
|
.name = "geometric (1-based)",
|
||||||
.sample = geometric_sample,
|
.sample = geometric_sample,
|
||||||
.cdf = geometric_cdf,
|
.cdf = geometric_cdf,
|
||||||
|
@ -16,12 +16,12 @@
|
|||||||
* Container for distribution parameters for sampling, CDF, &c.
|
* Container for distribution parameters for sampling, CDF, &c.
|
||||||
*/
|
*/
|
||||||
struct dist {
|
struct dist {
|
||||||
const struct dist_ops *ops;
|
const struct dist_ops_t *ops;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Untyped initializer element for struct dist using the specified
|
* Untyped initializer element for struct dist using the specified
|
||||||
* struct dist_ops pointer. Don't actually use this directly -- use
|
* struct dist_ops_t pointer. Don't actually use this directly -- use
|
||||||
* the type-specific macro built out of DIST_BASE_TYPED below -- but if
|
* the type-specific macro built out of DIST_BASE_TYPED below -- but if
|
||||||
* you did use this directly, it would be something like:
|
* you did use this directly, it would be something like:
|
||||||
*
|
*
|
||||||
@ -62,7 +62,7 @@ struct dist {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Typed initializer element for struct dist using the specified struct
|
* Typed initializer element for struct dist using the specified struct
|
||||||
* dist_ops pointer. Don't actually use this directly -- use a
|
* dist_ops_t pointer. Don't actually use this directly -- use a
|
||||||
* type-specific macro built out of it -- but if you did use this
|
* type-specific macro built out of it -- but if you did use this
|
||||||
* directly, it would be something like:
|
* directly, it would be something like:
|
||||||
*
|
*
|
||||||
@ -82,7 +82,7 @@ struct dist {
|
|||||||
* double phi;
|
* double phi;
|
||||||
* };
|
* };
|
||||||
*
|
*
|
||||||
* struct dist_ops foo_ops = ...;
|
* struct dist_ops_t foo_ops = ...;
|
||||||
*
|
*
|
||||||
* #define FOO(OBJ) DIST_BASE_TYPED(&foo_ops, OBJ, struct foo)
|
* #define FOO(OBJ) DIST_BASE_TYPED(&foo_ops, OBJ, struct foo)
|
||||||
*
|
*
|
||||||
@ -110,7 +110,7 @@ struct dist {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Generic operations on distributions. These simply defer to the
|
* Generic operations on distributions. These simply defer to the
|
||||||
* corresponding dist_ops function. In the parlance of C++, these call
|
* corresponding dist_ops_t function. In the parlance of C++, these call
|
||||||
* virtual member functions.
|
* virtual member functions.
|
||||||
*/
|
*/
|
||||||
const char *dist_name(const struct dist *);
|
const char *dist_name(const struct dist *);
|
||||||
@ -125,7 +125,7 @@ double dist_isf(const struct dist *, double p);
|
|||||||
* distributions. In the parlance of C++, this would be called a
|
* distributions. In the parlance of C++, this would be called a
|
||||||
* `vtable' and the members are virtual member functions.
|
* `vtable' and the members are virtual member functions.
|
||||||
*/
|
*/
|
||||||
struct dist_ops {
|
struct dist_ops_t {
|
||||||
const char *name;
|
const char *name;
|
||||||
double (*sample)(const struct dist *);
|
double (*sample)(const struct dist *);
|
||||||
double (*cdf)(const struct dist *, double x);
|
double (*cdf)(const struct dist *, double x);
|
||||||
@ -141,7 +141,7 @@ struct geometric {
|
|||||||
double p; /* success probability */
|
double p; /* success probability */
|
||||||
};
|
};
|
||||||
|
|
||||||
extern const struct dist_ops geometric_ops;
|
extern const struct dist_ops_t geometric_ops;
|
||||||
|
|
||||||
#define GEOMETRIC(OBJ) \
|
#define GEOMETRIC(OBJ) \
|
||||||
DIST_BASE_TYPED(&geometric_ops, OBJ, struct geometric)
|
DIST_BASE_TYPED(&geometric_ops, OBJ, struct geometric)
|
||||||
@ -155,7 +155,7 @@ struct genpareto {
|
|||||||
double xi;
|
double xi;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern const struct dist_ops genpareto_ops;
|
extern const struct dist_ops_t genpareto_ops;
|
||||||
|
|
||||||
#define GENPARETO(OBJ) \
|
#define GENPARETO(OBJ) \
|
||||||
DIST_BASE_TYPED(&genpareto_ops, OBJ, struct genpareto)
|
DIST_BASE_TYPED(&genpareto_ops, OBJ, struct genpareto)
|
||||||
@ -168,7 +168,7 @@ struct weibull {
|
|||||||
double k;
|
double k;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern const struct dist_ops weibull_ops;
|
extern const struct dist_ops_t weibull_ops;
|
||||||
|
|
||||||
#define WEIBULL(OBJ) \
|
#define WEIBULL(OBJ) \
|
||||||
DIST_BASE_TYPED(&weibull_ops, OBJ, struct weibull)
|
DIST_BASE_TYPED(&weibull_ops, OBJ, struct weibull)
|
||||||
@ -181,7 +181,7 @@ struct log_logistic {
|
|||||||
double beta;
|
double beta;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern const struct dist_ops log_logistic_ops;
|
extern const struct dist_ops_t log_logistic_ops;
|
||||||
|
|
||||||
#define LOG_LOGISTIC(OBJ) \
|
#define LOG_LOGISTIC(OBJ) \
|
||||||
DIST_BASE_TYPED(&log_logistic_ops, OBJ, struct log_logistic)
|
DIST_BASE_TYPED(&log_logistic_ops, OBJ, struct log_logistic)
|
||||||
@ -194,7 +194,7 @@ struct logistic {
|
|||||||
double sigma;
|
double sigma;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern const struct dist_ops logistic_ops;
|
extern const struct dist_ops_t logistic_ops;
|
||||||
|
|
||||||
#define LOGISTIC(OBJ) \
|
#define LOGISTIC(OBJ) \
|
||||||
DIST_BASE_TYPED(&logistic_ops, OBJ, struct logistic)
|
DIST_BASE_TYPED(&logistic_ops, OBJ, struct logistic)
|
||||||
@ -207,7 +207,7 @@ struct uniform {
|
|||||||
double b;
|
double b;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern const struct dist_ops uniform_ops;
|
extern const struct dist_ops_t uniform_ops;
|
||||||
|
|
||||||
#define UNIFORM(OBJ) \
|
#define UNIFORM(OBJ) \
|
||||||
DIST_BASE_TYPED(&uniform_ops, OBJ, struct uniform)
|
DIST_BASE_TYPED(&uniform_ops, OBJ, struct uniform)
|
||||||
|
@ -29,10 +29,10 @@
|
|||||||
#define USE_LIBSECCOMP
|
#define USE_LIBSECCOMP
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
struct sandbox_cfg_elem;
|
struct sandbox_cfg_elem_t;
|
||||||
|
|
||||||
/** Typedef to structure used to manage a sandbox configuration. */
|
/** Typedef to structure used to manage a sandbox configuration. */
|
||||||
typedef struct sandbox_cfg_elem sandbox_cfg_t;
|
typedef struct sandbox_cfg_elem_t sandbox_cfg_t;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Linux definitions
|
* Linux definitions
|
||||||
@ -58,7 +58,7 @@ typedef enum {
|
|||||||
* Configuration parameter structure associated with the LIBSECCOMP2
|
* Configuration parameter structure associated with the LIBSECCOMP2
|
||||||
* implementation.
|
* implementation.
|
||||||
*/
|
*/
|
||||||
typedef struct smp_param {
|
typedef struct smp_param_t {
|
||||||
/** syscall associated with parameter. */
|
/** syscall associated with parameter. */
|
||||||
int syscall;
|
int syscall;
|
||||||
|
|
||||||
@ -77,7 +77,7 @@ typedef struct smp_param {
|
|||||||
* It is implemented as a linked list of parameters. Currently only controls
|
* It is implemented as a linked list of parameters. Currently only controls
|
||||||
* parameters for open, openat, execve, stat64.
|
* parameters for open, openat, execve, stat64.
|
||||||
*/
|
*/
|
||||||
struct sandbox_cfg_elem {
|
struct sandbox_cfg_elem_t {
|
||||||
/** Sandbox implementation which dictates the parameter type. */
|
/** Sandbox implementation which dictates the parameter type. */
|
||||||
SB_IMPL implem;
|
SB_IMPL implem;
|
||||||
|
|
||||||
@ -85,7 +85,7 @@ struct sandbox_cfg_elem {
|
|||||||
smp_param_t *param;
|
smp_param_t *param;
|
||||||
|
|
||||||
/** Next element of the configuration*/
|
/** Next element of the configuration*/
|
||||||
struct sandbox_cfg_elem *next;
|
struct sandbox_cfg_elem_t *next;
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Function pointer defining the prototype of a filter function.*/
|
/** Function pointer defining the prototype of a filter function.*/
|
||||||
|
@ -63,7 +63,7 @@ int tor_cond_wait(tor_cond_t *cond, tor_mutex_t *mutex,
|
|||||||
void tor_cond_signal_one(tor_cond_t *cond);
|
void tor_cond_signal_one(tor_cond_t *cond);
|
||||||
void tor_cond_signal_all(tor_cond_t *cond);
|
void tor_cond_signal_all(tor_cond_t *cond);
|
||||||
|
|
||||||
typedef struct tor_threadlocal_s {
|
typedef struct tor_threadlocal_t {
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
DWORD index;
|
DWORD index;
|
||||||
#else
|
#else
|
||||||
|
@ -59,7 +59,7 @@ main(int argc, char **argv)
|
|||||||
{
|
{
|
||||||
(void)argc;
|
(void)argc;
|
||||||
(void)argv;
|
(void)argv;
|
||||||
tor_libevent_cfg cfg;
|
tor_libevent_cfg_t cfg;
|
||||||
memset(&cfg, 0, sizeof(cfg));
|
memset(&cfg, 0, sizeof(cfg));
|
||||||
tor_libevent_initialize(&cfg);
|
tor_libevent_initialize(&cfg);
|
||||||
timers_initialize();
|
timers_initialize();
|
||||||
|
@ -119,7 +119,7 @@ typedef struct fake_work_queue_ent_t {
|
|||||||
void (*reply_fn)(void *);
|
void (*reply_fn)(void *);
|
||||||
void *arg;
|
void *arg;
|
||||||
} fake_work_queue_ent_t;
|
} fake_work_queue_ent_t;
|
||||||
static struct workqueue_entry_s *
|
static struct workqueue_entry_t *
|
||||||
mock_cpuworker_queue_work(workqueue_priority_t prio,
|
mock_cpuworker_queue_work(workqueue_priority_t prio,
|
||||||
enum workqueue_reply_t (*fn)(void *, void *),
|
enum workqueue_reply_t (*fn)(void *, void *),
|
||||||
void (*reply_fn)(void *),
|
void (*reply_fn)(void *),
|
||||||
@ -135,7 +135,7 @@ mock_cpuworker_queue_work(workqueue_priority_t prio,
|
|||||||
ent->reply_fn = reply_fn;
|
ent->reply_fn = reply_fn;
|
||||||
ent->arg = arg;
|
ent->arg = arg;
|
||||||
smartlist_add(fake_cpuworker_queue, ent);
|
smartlist_add(fake_cpuworker_queue, ent);
|
||||||
return (struct workqueue_entry_s *)ent;
|
return (struct workqueue_entry_t *)ent;
|
||||||
}
|
}
|
||||||
static int
|
static int
|
||||||
mock_cpuworker_run_work(void)
|
mock_cpuworker_run_work(void)
|
||||||
|
@ -167,7 +167,7 @@ test_dispatch_no_recipient(void *arg)
|
|||||||
dcfg_free(cfg);
|
dcfg_free(cfg);
|
||||||
}
|
}
|
||||||
|
|
||||||
struct coord { int x; int y; };
|
struct coord_t { int x; int y; };
|
||||||
static void
|
static void
|
||||||
free_coord(msg_aux_data_t d)
|
free_coord(msg_aux_data_t d)
|
||||||
{
|
{
|
||||||
@ -177,7 +177,7 @@ static char *
|
|||||||
fmt_coord(msg_aux_data_t d)
|
fmt_coord(msg_aux_data_t d)
|
||||||
{
|
{
|
||||||
char *v;
|
char *v;
|
||||||
struct coord *c = d.ptr;
|
struct coord_t *c = d.ptr;
|
||||||
tor_asprintf(&v, "[%d, %d]", c->x, c->y);
|
tor_asprintf(&v, "[%d, %d]", c->x, c->y);
|
||||||
return v;
|
return v;
|
||||||
}
|
}
|
||||||
@ -225,7 +225,7 @@ test_dispatch_with_types(void *arg)
|
|||||||
r = dispatch_set_alert_fn(d, 2, alert_run_immediate, NULL);
|
r = dispatch_set_alert_fn(d, 2, alert_run_immediate, NULL);
|
||||||
tt_int_op(r, OP_EQ, 0);
|
tt_int_op(r, OP_EQ, 0);
|
||||||
|
|
||||||
struct coord *xy = tor_malloc(sizeof(*xy));
|
struct coord_t *xy = tor_malloc(sizeof(*xy));
|
||||||
xy->x = 13;
|
xy->x = 13;
|
||||||
xy->y = 37;
|
xy->y = 37;
|
||||||
msg_aux_data_t data = {.ptr = xy};
|
msg_aux_data_t data = {.ptr = xy};
|
||||||
|
@ -325,7 +325,7 @@ test_link_handshake_certs_ok(void *arg)
|
|||||||
crypto_pk_free(key2);
|
crypto_pk_free(key2);
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef struct certs_data_s {
|
typedef struct certs_data_t {
|
||||||
int is_ed;
|
int is_ed;
|
||||||
int is_link_cert;
|
int is_link_cert;
|
||||||
or_connection_t *c;
|
or_connection_t *c;
|
||||||
@ -972,7 +972,7 @@ test_link_handshake_send_authchallenge(void *arg)
|
|||||||
crypto_pk_free(rsa1);
|
crypto_pk_free(rsa1);
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef struct authchallenge_data_s {
|
typedef struct authchallenge_data_t {
|
||||||
or_connection_t *c;
|
or_connection_t *c;
|
||||||
channel_tls_t *chan;
|
channel_tls_t *chan;
|
||||||
var_cell_t *cell;
|
var_cell_t *cell;
|
||||||
@ -1171,7 +1171,7 @@ mock_set_circid_type(channel_t *chan,
|
|||||||
(void) consider_identity;
|
(void) consider_identity;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef struct authenticate_data_s {
|
typedef struct authenticate_data_t {
|
||||||
int is_ed;
|
int is_ed;
|
||||||
or_connection_t *c1, *c2;
|
or_connection_t *c1, *c2;
|
||||||
channel_tls_t *chan2;
|
channel_tls_t *chan2;
|
||||||
|
@ -155,7 +155,7 @@ test_threads_basic(void *arg)
|
|||||||
tor_mutex_free(thread_test_start2_);
|
tor_mutex_free(thread_test_start2_);
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef struct cv_testinfo_s {
|
typedef struct cv_testinfo_t {
|
||||||
tor_cond_t *cond;
|
tor_cond_t *cond;
|
||||||
tor_mutex_t *mutex;
|
tor_mutex_t *mutex;
|
||||||
int value;
|
int value;
|
||||||
|
@ -32,7 +32,7 @@ int handled_len;
|
|||||||
bitarray_t *handled;
|
bitarray_t *handled;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
typedef struct state_s {
|
typedef struct state_t {
|
||||||
int magic;
|
int magic;
|
||||||
int n_handled;
|
int n_handled;
|
||||||
crypto_pk_t *rsa;
|
crypto_pk_t *rsa;
|
||||||
@ -40,13 +40,13 @@ typedef struct state_s {
|
|||||||
int is_shutdown;
|
int is_shutdown;
|
||||||
} state_t;
|
} state_t;
|
||||||
|
|
||||||
typedef struct rsa_work_s {
|
typedef struct rsa_work_t {
|
||||||
int serial;
|
int serial;
|
||||||
uint8_t msg[128];
|
uint8_t msg[128];
|
||||||
uint8_t msglen;
|
uint8_t msglen;
|
||||||
} rsa_work_t;
|
} rsa_work_t;
|
||||||
|
|
||||||
typedef struct ecdh_work_s {
|
typedef struct ecdh_work_t {
|
||||||
int serial;
|
int serial;
|
||||||
union {
|
union {
|
||||||
curve25519_public_key_t pk;
|
curve25519_public_key_t pk;
|
||||||
@ -339,7 +339,7 @@ main(int argc, char **argv)
|
|||||||
replyqueue_t *rq;
|
replyqueue_t *rq;
|
||||||
threadpool_t *tp;
|
threadpool_t *tp;
|
||||||
int i;
|
int i;
|
||||||
tor_libevent_cfg evcfg;
|
tor_libevent_cfg_t evcfg;
|
||||||
uint32_t as_flags = 0;
|
uint32_t as_flags = 0;
|
||||||
|
|
||||||
for (i = 1; i < argc; ++i) {
|
for (i = 1; i < argc; ++i) {
|
||||||
|
@ -266,7 +266,7 @@ main(int c, const char **v)
|
|||||||
|
|
||||||
options = options_new();
|
options = options_new();
|
||||||
|
|
||||||
struct tor_libevent_cfg cfg;
|
struct tor_libevent_cfg_t cfg;
|
||||||
memset(&cfg, 0, sizeof(cfg));
|
memset(&cfg, 0, sizeof(cfg));
|
||||||
tor_libevent_initialize(&cfg);
|
tor_libevent_initialize(&cfg);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user