Commit 01ffe8e2 authored by David Goulet's avatar David Goulet 🤘
Browse files

config: Move any_client_port_set() to config.c



This functions is now used outside of networkstatus.c and makes more sense to
be in config.c.

It is also renamed to options_any_client_port_set() for the config.c
namespace.

No code behavior change.
Signed-off-by: David Goulet's avatarDavid Goulet <dgoulet@torproject.org>
parent 61d5ce83
......@@ -8433,3 +8433,18 @@ init_cookie_authentication(const char *fname, const char *header,
return retval;
}
/**
* Return true if any option is set in <b>options</b> to make us behave
* as a client.
*/
int
options_any_client_port_set(const or_options_t *options)
{
return (options->SocksPort_set ||
options->TransPort_set ||
options->NATDPort_set ||
options->ControlPort_set ||
options->DNSPort_set ||
options->HTTPTunnelPort_set);
}
......@@ -214,6 +214,9 @@ smartlist_t *get_options_from_transport_options_line(const char *line,
const char *transport);
smartlist_t *get_options_for_server_transport(const char *transport);
/* Port helper functions. */
int options_any_client_port_set(const or_options_t *options);
#ifdef CONFIG_PRIVATE
#define CL_PORT_NO_STREAM_OPTIONS (1u<<0)
......
......@@ -1497,7 +1497,7 @@ get_my_roles(const or_options_t *options)
int roles = 0;
int is_bridge = options->BridgeRelay;
int is_client = any_client_port_set(options);
int is_client = options_any_client_port_set(options);
int is_relay = server_mode(options);
int is_dirauth = authdir_mode_v3(options);
int is_bridgeauth = authdir_mode_bridge(options);
......
......@@ -1690,24 +1690,6 @@ networkstatus_set_current_consensus_from_ns(networkstatus_t *c,
}
#endif /* defined(TOR_UNIT_TESTS) */
/**
* Return true if any option is set in <b>options</b> to make us behave
* as a client.
*
* XXXX If we need this elsewhere at any point, we should make it nonstatic
* XXXX and move it into another file.
*/
int
any_client_port_set(const or_options_t *options)
{
return (options->SocksPort_set ||
options->TransPort_set ||
options->NATDPort_set ||
options->ControlPort_set ||
options->DNSPort_set ||
options->HTTPTunnelPort_set);
}
/**
* Helper for handle_missing_protocol_warning: handles either the
* client case (if <b>is_client</b> is set) or the server case otherwise.
......@@ -1743,7 +1725,7 @@ handle_missing_protocol_warning(const networkstatus_t *c,
const or_options_t *options)
{
const int is_server = server_mode(options);
const int is_client = any_client_port_set(options) || !is_server;
const int is_client = options_any_client_port_set(options) || !is_server;
if (is_server)
handle_missing_protocol_warning_impl(c, 0);
......
......@@ -147,8 +147,6 @@ void vote_routerstatus_free_(vote_routerstatus_t *rs);
#define vote_routerstatus_free(rs) \
FREE_AND_NULL(vote_routerstatus_t, vote_routerstatus_free_, (rs))
int any_client_port_set(const or_options_t *options);
#ifdef NETWORKSTATUS_PRIVATE
#ifdef TOR_UNIT_TESTS
STATIC int networkstatus_set_current_consensus_from_ns(networkstatus_t *c,
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment