mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-12-06 19:41:15 +01:00
Use semicolons after HT_PROTOTYPE and HT_GENERATE.
This commit is contained in:
@@ -119,10 +119,10 @@ channel_id_eq(const channel_t *a, const channel_t *b)
|
||||
return a->global_identifier == b->global_identifier;
|
||||
}
|
||||
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_t, gidmap_node,
|
||||
channel_id_hash, channel_id_eq,
|
||||
0.6, tor_reallocarray_, tor_free_)
|
||||
0.6, tor_reallocarray_, tor_free_);
|
||||
|
||||
HANDLE_IMPL(channel, channel_t,)
|
||||
|
||||
@@ -160,9 +160,9 @@ channel_idmap_eq(const channel_idmap_entry_t *a,
|
||||
}
|
||||
|
||||
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_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 */
|
||||
static void channel_remove_from_digest_map(channel_t *chan);
|
||||
|
||||
@@ -215,10 +215,10 @@ chan_circid_entry_hash_(chan_circid_circuit_map_t *a)
|
||||
static HT_HEAD(chan_circid_map, chan_circid_circuit_map_t)
|
||||
chan_circid_map = HT_INITIALIZER();
|
||||
HT_PROTOTYPE(chan_circid_map, chan_circid_circuit_map_t, node,
|
||||
chan_circid_entry_hash_, chan_circid_entries_eq_)
|
||||
chan_circid_entry_hash_, chan_circid_entries_eq_);
|
||||
HT_GENERATE2(chan_circid_map, chan_circid_circuit_map_t, node,
|
||||
chan_circid_entry_hash_, chan_circid_entries_eq_, 0.6,
|
||||
tor_reallocarray_, tor_free_)
|
||||
tor_reallocarray_, tor_free_);
|
||||
|
||||
/** The most recently returned entry from circuit_get_by_circid_chan;
|
||||
* used to improve performance when many cells arrive in a row from the
|
||||
|
||||
@@ -174,10 +174,10 @@ chanid_circid_entry_hash(chanid_circid_muxinfo_t *a)
|
||||
|
||||
/* Emit a bunch of hash table stuff */
|
||||
HT_PROTOTYPE(chanid_circid_muxinfo_map, chanid_circid_muxinfo_t, node,
|
||||
chanid_circid_entry_hash, chanid_circid_entries_eq)
|
||||
chanid_circid_entry_hash, chanid_circid_entries_eq);
|
||||
HT_GENERATE2(chanid_circid_muxinfo_map, chanid_circid_muxinfo_t, node,
|
||||
chanid_circid_entry_hash, chanid_circid_entries_eq, 0.6,
|
||||
tor_reallocarray_, tor_free_)
|
||||
tor_reallocarray_, tor_free_);
|
||||
|
||||
/*
|
||||
* Circuitmux alloc/free functions
|
||||
@@ -1282,4 +1282,3 @@ circuitmux_compare_muxes, (circuitmux_t *cmux_1, circuitmux_t *cmux_2))
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1283,11 +1283,11 @@ or_connect_failure_ht_hash(const or_connect_failure_entry_t *entry)
|
||||
}
|
||||
|
||||
HT_PROTOTYPE(or_connect_failure_ht, or_connect_failure_entry_t, node,
|
||||
or_connect_failure_ht_hash, or_connect_failure_ht_eq)
|
||||
or_connect_failure_ht_hash, or_connect_failure_ht_eq);
|
||||
|
||||
HT_GENERATE2(or_connect_failure_ht, or_connect_failure_entry_t, node,
|
||||
or_connect_failure_ht_hash, or_connect_failure_ht_eq,
|
||||
0.6, tor_reallocarray_, tor_free_)
|
||||
0.6, tor_reallocarray_, tor_free_);
|
||||
|
||||
/* Initialize a given connect failure entry with the given identity_digest,
|
||||
* addr and port. All field are optional except ocf. */
|
||||
|
||||
@@ -1405,9 +1405,9 @@ policy_hash(const policy_map_ent_t *ent)
|
||||
}
|
||||
|
||||
HT_PROTOTYPE(policy_map, policy_map_ent_t, node, policy_hash,
|
||||
policy_eq)
|
||||
policy_eq);
|
||||
HT_GENERATE2(policy_map, policy_map_ent_t, node, policy_hash,
|
||||
policy_eq, 0.6, tor_reallocarray_, tor_free_)
|
||||
policy_eq, 0.6, tor_reallocarray_, tor_free_);
|
||||
|
||||
/** Given a pointer to an addr_policy_t, return a copy of the pointer to the
|
||||
* "canonical" copy of that addr_policy_t; the canonical copy is a single
|
||||
|
||||
@@ -56,9 +56,9 @@ typedef HT_HEAD(socket_table_s, socket_table_ent_t) socket_table_t;
|
||||
static socket_table_t socket_table = HT_INITIALIZER();
|
||||
|
||||
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_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
|
||||
* channels have data sitting in their outbuf so the kist scheduler can force
|
||||
@@ -83,9 +83,9 @@ outbuf_table_ent_eq(const outbuf_table_ent_t *a, const outbuf_table_ent_t *b)
|
||||
}
|
||||
|
||||
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_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_);
|
||||
|
||||
/*****************************************************************************
|
||||
* Other internal data
|
||||
|
||||
@@ -47,17 +47,18 @@ bto_chan_eq_(bt_orconn_t *a, bt_orconn_t *b)
|
||||
}
|
||||
|
||||
HT_HEAD(bto_gid_ht, bt_orconn_t);
|
||||
HT_PROTOTYPE(bto_gid_ht, bt_orconn_t, node, bto_gid_hash_, bto_gid_eq_)
|
||||
HT_PROTOTYPE(bto_gid_ht, bt_orconn_t, node, bto_gid_hash_, bto_gid_eq_);
|
||||
HT_GENERATE2(bto_gid_ht, bt_orconn_t, node,
|
||||
bto_gid_hash_, bto_gid_eq_, 0.6,
|
||||
tor_reallocarray_, tor_free_)
|
||||
tor_reallocarray_, tor_free_);
|
||||
static struct bto_gid_ht *bto_gid_map;
|
||||
|
||||
HT_HEAD(bto_chan_ht, bt_orconn_t);
|
||||
HT_PROTOTYPE(bto_chan_ht, bt_orconn_t, chan_node, bto_chan_hash_, bto_chan_eq_)
|
||||
HT_PROTOTYPE(bto_chan_ht, bt_orconn_t, chan_node, bto_chan_hash_,
|
||||
bto_chan_eq_);
|
||||
HT_GENERATE2(bto_chan_ht, bt_orconn_t, chan_node,
|
||||
bto_chan_hash_, bto_chan_eq_, 0.6,
|
||||
tor_reallocarray_, tor_free_)
|
||||
tor_reallocarray_, tor_free_);
|
||||
static struct bto_chan_ht *bto_chan_map;
|
||||
|
||||
/** Clear the GID hash map, freeing any bt_orconn_t objects that become
|
||||
|
||||
@@ -90,9 +90,9 @@ ddmap_entry_set_digests(ddmap_entry_t *ent,
|
||||
}
|
||||
|
||||
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_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
|
||||
* <b>dc</b>, indexing it by its RSA key digest, and by the 2-tuple of its RSA
|
||||
@@ -324,4 +324,3 @@ dircollator_get_votes_for_router(dircollator_t *dc, int idx)
|
||||
return digestmap_get(dc->by_collated_rsa_sha1,
|
||||
smartlist_get(dc->all_rsa_sha1_lst, idx));
|
||||
}
|
||||
|
||||
|
||||
@@ -118,14 +118,14 @@ return (unsigned) siphash24g(a->ed25519_key, sizeof(a->ed25519_key));
|
||||
}
|
||||
|
||||
HT_PROTOTYPE(rsamap, keypin_ent_st, rsamap_node, keypin_ent_hash_rsa,
|
||||
keypin_ents_eq_rsa)
|
||||
keypin_ents_eq_rsa);
|
||||
HT_GENERATE2(rsamap, keypin_ent_st, rsamap_node, keypin_ent_hash_rsa,
|
||||
keypin_ents_eq_rsa, 0.6, tor_reallocarray, tor_free_)
|
||||
keypin_ents_eq_rsa, 0.6, tor_reallocarray, tor_free_);
|
||||
|
||||
HT_PROTOTYPE(edmap, keypin_ent_st, edmap_node, keypin_ent_hash_ed,
|
||||
keypin_ents_eq_ed)
|
||||
keypin_ents_eq_ed);
|
||||
HT_GENERATE2(edmap, keypin_ent_st, edmap_node, keypin_ent_hash_ed,
|
||||
keypin_ents_eq_ed, 0.6, tor_reallocarray, tor_free_)
|
||||
keypin_ents_eq_ed, 0.6, tor_reallocarray, tor_free_);
|
||||
|
||||
/**
|
||||
* Check whether we already have an entry in the key pinning table for a
|
||||
|
||||
@@ -218,9 +218,9 @@ cdm_diff_eq(const cdm_diff_t *diff1, const cdm_diff_t *diff2)
|
||||
diff1->compress_method == diff2->compress_method;
|
||||
}
|
||||
|
||||
HT_PROTOTYPE(cdm_diff_ht, cdm_diff_t, node, cdm_diff_hash, cdm_diff_eq)
|
||||
HT_PROTOTYPE(cdm_diff_ht, cdm_diff_t, node, cdm_diff_hash, cdm_diff_eq);
|
||||
HT_GENERATE2(cdm_diff_ht, cdm_diff_t, node, cdm_diff_hash, cdm_diff_eq,
|
||||
0.6, tor_reallocarray, tor_free_)
|
||||
0.6, tor_reallocarray, tor_free_);
|
||||
|
||||
#define cdm_diff_free(diff) \
|
||||
FREE_AND_NULL(cdm_diff_t, cdm_diff_free_, (diff))
|
||||
|
||||
@@ -57,10 +57,10 @@ fp_pair_map_entry_hash(const fp_pair_map_entry_t *a)
|
||||
*/
|
||||
|
||||
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_t, node,
|
||||
fp_pair_map_entry_hash, fp_pair_map_entries_eq,
|
||||
0.6, tor_reallocarray_, tor_free_)
|
||||
0.6, tor_reallocarray_, tor_free_);
|
||||
|
||||
/** Constructor to create a new empty map from fp_pair_t to void *
|
||||
*/
|
||||
@@ -312,4 +312,3 @@ fp_pair_map_assert_ok(const fp_pair_map_t *map)
|
||||
{
|
||||
tor_assert(!fp_pair_map_impl_HT_REP_IS_BAD_(&(map->head)));
|
||||
}
|
||||
|
||||
|
||||
@@ -76,11 +76,11 @@ hs_circuit_hash_token(const circuit_t *circuit)
|
||||
HT_PROTOTYPE(hs_circuitmap_ht, // The name of the hashtable struct
|
||||
circuit_t, // The name of the element struct,
|
||||
hs_circuitmap_node, // The name of HT_ENTRY member
|
||||
hs_circuit_hash_token, hs_circuits_have_same_token)
|
||||
hs_circuit_hash_token, hs_circuits_have_same_token);
|
||||
|
||||
HT_GENERATE2(hs_circuitmap_ht, circuit_t, hs_circuitmap_node,
|
||||
hs_circuit_hash_token, hs_circuits_have_same_token,
|
||||
0.6, tor_reallocarray, tor_free_)
|
||||
0.6, tor_reallocarray, tor_free_);
|
||||
|
||||
#ifdef TOR_UNIT_TESTS
|
||||
|
||||
|
||||
@@ -151,11 +151,11 @@ HT_PROTOTYPE(hs_service_ht, /* Name of hashtable. */
|
||||
hs_service_t, /* Object contained in the map. */
|
||||
hs_service_node, /* The name of the HT_ENTRY member. */
|
||||
hs_service_ht_hash, /* Hashing function. */
|
||||
hs_service_ht_eq) /* Compare function for objects. */
|
||||
hs_service_ht_eq); /* Compare function for objects. */
|
||||
|
||||
HT_GENERATE2(hs_service_ht, hs_service_t, hs_service_node,
|
||||
hs_service_ht_hash, hs_service_ht_eq,
|
||||
0.6, tor_reallocarray, tor_free_)
|
||||
0.6, tor_reallocarray, tor_free_);
|
||||
|
||||
/** Query the given service map with a public key and return a service object
|
||||
* if found else NULL. It is also possible to set a directory path in the
|
||||
|
||||
@@ -90,10 +90,10 @@ microdesc_eq_(microdesc_t *a, microdesc_t *b)
|
||||
}
|
||||
|
||||
HT_PROTOTYPE(microdesc_map, microdesc_t, node,
|
||||
microdesc_hash_, microdesc_eq_)
|
||||
microdesc_hash_, microdesc_eq_);
|
||||
HT_GENERATE2(microdesc_map, microdesc_t, node,
|
||||
microdesc_hash_, microdesc_eq_, 0.6,
|
||||
tor_reallocarray_, tor_free_)
|
||||
tor_reallocarray_, tor_free_);
|
||||
|
||||
/************************* md fetch fail cache *****************************/
|
||||
|
||||
|
||||
@@ -69,9 +69,9 @@ static HT_HEAD(nodefamily_map, nodefamily_t) the_node_families
|
||||
= HT_INITIALIZER();
|
||||
|
||||
HT_PROTOTYPE(nodefamily_map, nodefamily_t, ht_ent, nodefamily_hash,
|
||||
nodefamily_eq)
|
||||
nodefamily_eq);
|
||||
HT_GENERATE2(nodefamily_map, nodefamily_t, ht_ent, nodefamily_hash,
|
||||
node_family_eq, 0.6, tor_reallocarray_, tor_free_)
|
||||
node_family_eq, 0.6, tor_reallocarray_, tor_free_);
|
||||
|
||||
/**
|
||||
* Parse the family declaration in <b>s</b>, returning the canonical
|
||||
|
||||
@@ -153,9 +153,9 @@ node_id_eq(const node_t *node1, const node_t *node2)
|
||||
return tor_memeq(node1->identity, node2->identity, DIGEST_LEN);
|
||||
}
|
||||
|
||||
HT_PROTOTYPE(nodelist_map, node_t, ht_ent, node_id_hash, node_id_eq)
|
||||
HT_PROTOTYPE(nodelist_map, node_t, ht_ent, node_id_hash, node_id_eq);
|
||||
HT_GENERATE2(nodelist_map, node_t, ht_ent, node_id_hash, node_id_eq,
|
||||
0.6, tor_reallocarray_, tor_free_)
|
||||
0.6, tor_reallocarray_, tor_free_);
|
||||
|
||||
static inline unsigned int
|
||||
node_ed_id_hash(const node_t *node)
|
||||
@@ -170,9 +170,9 @@ node_ed_id_eq(const node_t *node1, const node_t *node2)
|
||||
}
|
||||
|
||||
HT_PROTOTYPE(nodelist_ed_map, node_t, ed_ht_ent, node_ed_id_hash,
|
||||
node_ed_id_eq)
|
||||
node_ed_id_eq);
|
||||
HT_GENERATE2(nodelist_ed_map, node_t, ed_ht_ent, node_ed_id_hash,
|
||||
node_ed_id_eq, 0.6, tor_reallocarray_, tor_free_)
|
||||
node_ed_id_eq, 0.6, tor_reallocarray_, tor_free_);
|
||||
|
||||
/** The global nodelist. */
|
||||
static nodelist_t *the_nodelist=NULL;
|
||||
|
||||
@@ -146,9 +146,9 @@ cached_resolve_hash(cached_resolve_t *a)
|
||||
}
|
||||
|
||||
HT_PROTOTYPE(cache_map, cached_resolve_t, node, cached_resolve_hash,
|
||||
cached_resolves_eq)
|
||||
cached_resolves_eq);
|
||||
HT_GENERATE2(cache_map, cached_resolve_t, node, cached_resolve_hash,
|
||||
cached_resolves_eq, 0.6, tor_reallocarray_, tor_free_)
|
||||
cached_resolves_eq, 0.6, tor_reallocarray_, tor_free_);
|
||||
|
||||
/** Initialize the DNS cache. */
|
||||
static void
|
||||
|
||||
@@ -146,9 +146,9 @@ clientmap_entries_eq(const clientmap_entry_t *a, const clientmap_entry_t *b)
|
||||
}
|
||||
|
||||
HT_PROTOTYPE(clientmap, clientmap_entry_t, node, clientmap_entry_hash,
|
||||
clientmap_entries_eq)
|
||||
clientmap_entries_eq);
|
||||
HT_GENERATE2(clientmap, clientmap_entry_t, node, clientmap_entry_hash,
|
||||
clientmap_entries_eq, 0.6, tor_reallocarray_, tor_free_)
|
||||
clientmap_entries_eq, 0.6, tor_reallocarray_, tor_free_);
|
||||
|
||||
#define clientmap_entry_free(ent) \
|
||||
FREE_AND_NULL(clientmap_entry_t, clientmap_entry_free_, ent)
|
||||
@@ -484,9 +484,9 @@ dirreq_map_ent_hash(const dirreq_map_entry_t *entry)
|
||||
}
|
||||
|
||||
HT_PROTOTYPE(dirreqmap, dirreq_map_entry_t, node, dirreq_map_ent_hash,
|
||||
dirreq_map_ent_eq)
|
||||
dirreq_map_ent_eq);
|
||||
HT_GENERATE2(dirreqmap, dirreq_map_entry_t, node, dirreq_map_ent_hash,
|
||||
dirreq_map_ent_eq, 0.6, tor_reallocarray_, tor_free_)
|
||||
dirreq_map_ent_eq, 0.6, tor_reallocarray_, tor_free_);
|
||||
|
||||
/** Helper: Put <b>entry</b> into map of directory requests using
|
||||
* <b>type</b> and <b>dirreq_id</b> as key parts. If there is
|
||||
|
||||
@@ -2285,9 +2285,9 @@ bidi_map_ent_hash(const bidi_map_entry_t *entry)
|
||||
}
|
||||
|
||||
HT_PROTOTYPE(bidimap, bidi_map_entry_t, node, bidi_map_ent_hash,
|
||||
bidi_map_ent_eq)
|
||||
bidi_map_ent_eq);
|
||||
HT_GENERATE2(bidimap, bidi_map_entry_t, node, bidi_map_ent_hash,
|
||||
bidi_map_ent_eq, 0.6, tor_reallocarray_, tor_free_)
|
||||
bidi_map_ent_eq, 0.6, tor_reallocarray_, tor_free_);
|
||||
|
||||
/* DOCDOC bidi_map_free */
|
||||
static void
|
||||
|
||||
@@ -85,21 +85,21 @@ digest256map_entry_hash(const digest256map_entry_t *a)
|
||||
}
|
||||
|
||||
HT_PROTOTYPE(strmap_impl, strmap_entry_t, node, strmap_entry_hash,
|
||||
strmap_entries_eq)
|
||||
strmap_entries_eq);
|
||||
HT_GENERATE2(strmap_impl, strmap_entry_t, node, strmap_entry_hash,
|
||||
strmap_entries_eq, 0.6, tor_reallocarray_, tor_free_)
|
||||
strmap_entries_eq, 0.6, tor_reallocarray_, tor_free_);
|
||||
|
||||
HT_PROTOTYPE(digestmap_impl, digestmap_entry_t, node, digestmap_entry_hash,
|
||||
digestmap_entries_eq)
|
||||
digestmap_entries_eq);
|
||||
HT_GENERATE2(digestmap_impl, digestmap_entry_t, node, digestmap_entry_hash,
|
||||
digestmap_entries_eq, 0.6, tor_reallocarray_, tor_free_)
|
||||
digestmap_entries_eq, 0.6, tor_reallocarray_, tor_free_);
|
||||
|
||||
HT_PROTOTYPE(digest256map_impl, digest256map_entry_t, node,
|
||||
digest256map_entry_hash,
|
||||
digest256map_entries_eq)
|
||||
digest256map_entries_eq);
|
||||
HT_GENERATE2(digest256map_impl, digest256map_entry_t, node,
|
||||
digest256map_entry_hash,
|
||||
digest256map_entries_eq, 0.6, tor_reallocarray_, tor_free_)
|
||||
digest256map_entries_eq, 0.6, tor_reallocarray_, tor_free_);
|
||||
|
||||
#define strmap_entry_free(ent) \
|
||||
FREE_AND_NULL(strmap_entry_t, strmap_entry_free_, (ent))
|
||||
|
||||
@@ -35,9 +35,9 @@ mapped_name_hash(const mapped_name_t *a)
|
||||
}
|
||||
|
||||
HT_PROTOTYPE(namemap_ht, mapped_name_t, node, mapped_name_hash,
|
||||
mapped_name_eq)
|
||||
mapped_name_eq);
|
||||
HT_GENERATE2(namemap_ht, mapped_name_t, node, mapped_name_hash,
|
||||
mapped_name_eq, 0.6, tor_reallocarray_, tor_free_)
|
||||
mapped_name_eq, 0.6, tor_reallocarray_, tor_free_);
|
||||
|
||||
/** Set up an uninitialized <b>map</b>. */
|
||||
void
|
||||
|
||||
@@ -372,11 +372,11 @@ static HT_HEAD(getaddrinfo_cache, cached_getaddrinfo_item_t)
|
||||
|
||||
HT_PROTOTYPE(getaddrinfo_cache, cached_getaddrinfo_item_t, node,
|
||||
cached_getaddrinfo_item_hash,
|
||||
cached_getaddrinfo_items_eq)
|
||||
cached_getaddrinfo_items_eq);
|
||||
HT_GENERATE2(getaddrinfo_cache, cached_getaddrinfo_item_t, node,
|
||||
cached_getaddrinfo_item_hash,
|
||||
cached_getaddrinfo_items_eq,
|
||||
0.6, tor_reallocarray_, tor_free_)
|
||||
0.6, tor_reallocarray_, tor_free_);
|
||||
|
||||
/** If true, don't try to cache getaddrinfo results. */
|
||||
static int sandbox_getaddrinfo_cache_disabled = 0;
|
||||
|
||||
@@ -58,9 +58,9 @@ process_map_entries_eq_(const waitpid_callback_t *a,
|
||||
static HT_HEAD(process_map, waitpid_callback_t) process_map = HT_INITIALIZER();
|
||||
|
||||
HT_PROTOTYPE(process_map, waitpid_callback_t, node, process_map_entry_hash_,
|
||||
process_map_entries_eq_)
|
||||
process_map_entries_eq_);
|
||||
HT_GENERATE2(process_map, waitpid_callback_t, node, process_map_entry_hash_,
|
||||
process_map_entries_eq_, 0.6, tor_reallocarray_, tor_free_)
|
||||
process_map_entries_eq_, 0.6, tor_reallocarray_, tor_free_);
|
||||
|
||||
/**
|
||||
* Begin monitoring the child pid <b>pid</b> to see if we get a SIGCHLD for
|
||||
|
||||
Reference in New Issue
Block a user