mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-12-06 19:41:15 +01:00
Let the users set ControlListenAddress in the torrc.
This can be dangerous, but there are some cases (like a secured LAN) where it makes sense. svn:r5997
This commit is contained in:
@@ -137,6 +137,7 @@ static config_var_t _option_vars[] = {
|
||||
VAR("ClientOnly", BOOL, ClientOnly, "0"),
|
||||
VAR("ConnLimit", UINT, ConnLimit, "1024"),
|
||||
VAR("ContactInfo", STRING, ContactInfo, NULL),
|
||||
VAR("ControlListenAddress",LINELIST, ControlListenAddress, NULL),
|
||||
VAR("ControlPort", UINT, ControlPort, "0"),
|
||||
VAR("CookieAuthentication",BOOL, CookieAuthentication, "0"),
|
||||
VAR("DataDirectory", STRING, DataDirectory, NULL),
|
||||
@@ -1906,6 +1907,9 @@ options_validate(or_options_t *old_options, or_options_t *options,
|
||||
if (options->DirPort == 0 && options->DirListenAddress != NULL)
|
||||
REJECT("DirPort must be defined if DirListenAddress is defined.");
|
||||
|
||||
if (options->ControlPort == 0 && options->ControlListenAddress != NULL)
|
||||
REJECT("ControlPort must be defined if ControlListenAddress is defined.");
|
||||
|
||||
#if 0 /* don't complain, since a standard configuration does this! */
|
||||
if (options->SocksPort == 0 && options->SocksListenAddress != NULL)
|
||||
REJECT("SocksPort must be defined if SocksListenAddress is defined.");
|
||||
|
||||
+2
-1
@@ -973,7 +973,8 @@ retry_all_listeners(int force, smartlist_t *replaced_conns,
|
||||
options->SocksPort, "127.0.0.1", force,
|
||||
replaced_conns, new_conns)<0)
|
||||
return -1;
|
||||
if (retry_listeners(CONN_TYPE_CONTROL_LISTENER, NULL,
|
||||
if (retry_listeners(CONN_TYPE_CONTROL_LISTENER,
|
||||
options->ControlListenAddress,
|
||||
options->ControlPort, "127.0.0.1", force,
|
||||
replaced_conns, new_conns)<0)
|
||||
return -1;
|
||||
|
||||
@@ -1240,6 +1240,8 @@ typedef struct {
|
||||
config_line_t *ORListenAddress;
|
||||
/** Addresses to bind for listening for directory connections. */
|
||||
config_line_t *DirListenAddress;
|
||||
/** Addresses to bind for listening for control connections. */
|
||||
config_line_t *ControlListenAddress;
|
||||
/** Local address to bind outbound sockets */
|
||||
char *OutboundBindAddress;
|
||||
/** Directory server only: which versions of
|
||||
|
||||
Reference in New Issue
Block a user