mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2025-02-24 14:51:11 +01:00
Allow the unit tests to pass a service list to rend_service_load_all_keys
This commit is contained in:
parent
41f96078c2
commit
65b2d34c9c
2 changed files with 17 additions and 5 deletions
|
@ -1153,12 +1153,24 @@ rend_service_poison_new_single_onion_dirs(const smartlist_t *service_list)
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Load and/or generate private keys for all hidden services, possibly
|
/** Load and/or generate private keys for all hidden services, possibly
|
||||||
* including keys for client authorization. Return 0 on success, -1 on
|
* including keys for client authorization.
|
||||||
* failure. */
|
* If a <b>service_list</b> is provided, treat it as the list of hidden
|
||||||
|
* services (used in unittests). Otherwise, require that rend_service_list is
|
||||||
|
* not NULL.
|
||||||
|
* Return 0 on success, -1 on failure. */
|
||||||
int
|
int
|
||||||
rend_service_load_all_keys(void)
|
rend_service_load_all_keys(const smartlist_t *service_list)
|
||||||
{
|
{
|
||||||
SMARTLIST_FOREACH_BEGIN(rend_service_list, rend_service_t *, s) {
|
const smartlist_t *s_list;
|
||||||
|
/* If no special service list is provided, then just use the global one. */
|
||||||
|
if (!service_list) {
|
||||||
|
tor_assert(rend_service_list);
|
||||||
|
s_list = rend_service_list;
|
||||||
|
} else {
|
||||||
|
s_list = service_list;
|
||||||
|
}
|
||||||
|
|
||||||
|
SMARTLIST_FOREACH_BEGIN(s_list, rend_service_t *, s) {
|
||||||
if (s->private_key)
|
if (s->private_key)
|
||||||
continue;
|
continue;
|
||||||
log_info(LD_REND, "Loading hidden-service keys from \"%s\"",
|
log_info(LD_REND, "Loading hidden-service keys from \"%s\"",
|
||||||
|
|
|
@ -123,7 +123,7 @@ STATIC void rend_service_free(rend_service_t *service);
|
||||||
|
|
||||||
int num_rend_services(void);
|
int num_rend_services(void);
|
||||||
int rend_config_services(const or_options_t *options, int validate_only);
|
int rend_config_services(const or_options_t *options, int validate_only);
|
||||||
int rend_service_load_all_keys(void);
|
int rend_service_load_all_keys(const smartlist_t *service_list);
|
||||||
void rend_services_add_filenames_to_lists(smartlist_t *open_lst,
|
void rend_services_add_filenames_to_lists(smartlist_t *open_lst,
|
||||||
smartlist_t *stat_lst);
|
smartlist_t *stat_lst);
|
||||||
void rend_consider_services_intro_points(void);
|
void rend_consider_services_intro_points(void);
|
||||||
|
|
Loading…
Add table
Reference in a new issue