mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-24 12:23:32 +01:00
ns: Move ns_detached_signatures_free() to networkstatus.c
From dirvote.c to networkstatus.c where it makes more sense both in terms of namespace and subsystem responsability. This removes one less dependency on the dirauth module. Signed-off-by: David Goulet <dgoulet@torproject.org>
This commit is contained in:
parent
35ff2a3b86
commit
d7e4706f22
@ -2703,25 +2703,6 @@ get_detached_signatures_from_pending_consensuses(pending_consensus_t *pending,
|
||||
return signatures;
|
||||
}
|
||||
|
||||
/** Release all storage held in <b>s</b>. */
|
||||
void
|
||||
ns_detached_signatures_free_(ns_detached_signatures_t *s)
|
||||
{
|
||||
if (!s)
|
||||
return;
|
||||
if (s->signatures) {
|
||||
STRMAP_FOREACH(s->signatures, flavor, smartlist_t *, sigs) {
|
||||
SMARTLIST_FOREACH(sigs, document_signature_t *, sig,
|
||||
document_signature_free(sig));
|
||||
smartlist_free(sigs);
|
||||
} STRMAP_FOREACH_END;
|
||||
strmap_free(s->signatures, NULL);
|
||||
strmap_free(s->digests, tor_free_);
|
||||
}
|
||||
|
||||
tor_free(s);
|
||||
}
|
||||
|
||||
/** Entry point: Take whatever voting actions are pending as of <b>now</b>. */
|
||||
void
|
||||
dirvote_act(const or_options_t *options, time_t now)
|
||||
|
@ -115,11 +115,6 @@ dirvote_free_all(void)
|
||||
|
||||
#endif /* HAVE_MODULE_DIRAUTH */
|
||||
|
||||
/* Vote manipulation */
|
||||
void ns_detached_signatures_free_(ns_detached_signatures_t *s);
|
||||
#define ns_detached_signatures_free(s) \
|
||||
FREE_AND_NULL(ns_detached_signatures_t, ns_detached_signatures_free_, (s))
|
||||
|
||||
void dirvote_recalculate_timing(const or_options_t *options, time_t now);
|
||||
/* Invoked on timers and by outside triggers. */
|
||||
struct pending_vote_t * dirvote_add_vote(const char *vote_body,
|
||||
|
@ -2642,6 +2642,25 @@ networkstatus_check_required_protocols(const networkstatus_t *ns,
|
||||
return 0;
|
||||
}
|
||||
|
||||
/** Release all storage held in <b>s</b>. */
|
||||
void
|
||||
ns_detached_signatures_free_(ns_detached_signatures_t *s)
|
||||
{
|
||||
if (!s)
|
||||
return;
|
||||
if (s->signatures) {
|
||||
STRMAP_FOREACH(s->signatures, flavor, smartlist_t *, sigs) {
|
||||
SMARTLIST_FOREACH(sigs, document_signature_t *, sig,
|
||||
document_signature_free(sig));
|
||||
smartlist_free(sigs);
|
||||
} STRMAP_FOREACH_END;
|
||||
strmap_free(s->signatures, NULL);
|
||||
strmap_free(s->digests, tor_free_);
|
||||
}
|
||||
|
||||
tor_free(s);
|
||||
}
|
||||
|
||||
/** Free all storage held locally in this module. */
|
||||
void
|
||||
networkstatus_free_all(void)
|
||||
|
@ -24,6 +24,9 @@ void routerstatus_free_(routerstatus_t *rs);
|
||||
void networkstatus_vote_free_(networkstatus_t *ns);
|
||||
#define networkstatus_vote_free(ns) \
|
||||
FREE_AND_NULL(networkstatus_t, networkstatus_vote_free_, (ns))
|
||||
void ns_detached_signatures_free_(ns_detached_signatures_t *s);
|
||||
#define ns_detached_signatures_free(s) \
|
||||
FREE_AND_NULL(ns_detached_signatures_t, ns_detached_signatures_free_, (s))
|
||||
networkstatus_voter_info_t *networkstatus_get_voter_by_id(
|
||||
networkstatus_t *vote,
|
||||
const char *identity);
|
||||
|
Loading…
Reference in New Issue
Block a user