mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-27 13:53:31 +01:00
New controller command "getinfo config-text"
It returns the contents that Tor would write if you send it a SAVECONF command, so the controller can write the file to disk itself.
This commit is contained in:
parent
d086c9a7f7
commit
f7d99b62a3
@ -4,6 +4,9 @@ Changes in version 0.2.2.7-alpha - 2009-??-??
|
||||
timeout schedule for how many seconds until we detach a stream from
|
||||
a circuit and try a new circuit. If your network is particularly
|
||||
slow, you might want to set this to a number like 60.
|
||||
- New controller command "getinfo config-text". It returns the
|
||||
contents that Tor would write if you send it a SAVECONF command,
|
||||
so the controller can write the file to disk itself.
|
||||
|
||||
o Minor bugfixes:
|
||||
- Fix compilation on OSX 10.3, which has a stub mlockall() but
|
||||
|
@ -270,6 +270,9 @@
|
||||
returns "250 OK" if successful, or "551 Unable to write configuration
|
||||
to disk" if it can't write the file or some other error occurs.
|
||||
|
||||
See also the "getinfo config-text" command, if the controller wants
|
||||
to write the torrc file itself.
|
||||
|
||||
3.7. SIGNAL
|
||||
|
||||
Sent from the client to the server. The syntax is:
|
||||
@ -378,6 +381,10 @@
|
||||
|
||||
"config-file" -- The location of Tor's configuration file ("torrc").
|
||||
|
||||
"config-text" -- The contents that Tor would write if you send it
|
||||
a SAVECONF command, so the controller can write the file to
|
||||
disk itself. [First implemented in 0.2.2.7-alpha.]
|
||||
|
||||
["exit-policy/prepend" -- The default exit policy lines that Tor will
|
||||
*prepend* to the ExitPolicy config option.
|
||||
-- Never implemented. Useful?]
|
||||
|
@ -2843,7 +2843,7 @@ config_dump(config_format_t *fmt, void *options, int minimal,
|
||||
* the configuration in <b>options</b>. If <b>minimal</b> is true, do not
|
||||
* include options that are the same as Tor's defaults.
|
||||
*/
|
||||
static char *
|
||||
char *
|
||||
options_dump(or_options_t *options, int minimal)
|
||||
{
|
||||
return config_dump(&options_format, options, minimal, 0);
|
||||
|
@ -114,8 +114,6 @@ static int handle_control_setevents(control_connection_t *conn, uint32_t len,
|
||||
static int handle_control_authenticate(control_connection_t *conn,
|
||||
uint32_t len,
|
||||
const char *body);
|
||||
static int handle_control_saveconf(control_connection_t *conn, uint32_t len,
|
||||
const char *body);
|
||||
static int handle_control_signal(control_connection_t *conn, uint32_t len,
|
||||
const char *body);
|
||||
static int handle_control_mapaddress(control_connection_t *conn, uint32_t len,
|
||||
@ -1301,6 +1299,8 @@ getinfo_helper_misc(control_connection_t *conn, const char *question,
|
||||
*answer = tor_strdup(get_version());
|
||||
} else if (!strcmp(question, "config-file")) {
|
||||
*answer = tor_strdup(get_torrc_fname());
|
||||
} else if (!strcmp(question, "config-text")) {
|
||||
*answer = options_dump(get_options(), 1);
|
||||
} else if (!strcmp(question, "info/names")) {
|
||||
*answer = list_getinfo_options();
|
||||
} else if (!strcmp(question, "events/names")) {
|
||||
@ -1802,6 +1802,8 @@ typedef struct getinfo_item_t {
|
||||
static const getinfo_item_t getinfo_items[] = {
|
||||
ITEM("version", misc, "The current version of Tor."),
|
||||
ITEM("config-file", misc, "Current location of the \"torrc\" file."),
|
||||
ITEM("config-text", misc,
|
||||
"Return the string that would be written by a saveconf command."),
|
||||
ITEM("accounting/bytes", accounting,
|
||||
"Number of bytes read/written so far in the accounting interval."),
|
||||
ITEM("accounting/bytes-left", accounting,
|
||||
|
@ -2084,7 +2084,7 @@ networkstatus_get_flavor_name(consensus_flavor_t flav)
|
||||
}
|
||||
|
||||
/** Return the consensus_flavor_t value for the flavor called <b>flavname</b>,
|
||||
* or -1 if the flavor is not recongized. */
|
||||
* or -1 if the flavor is not recognized. */
|
||||
int
|
||||
networkstatus_parse_flavor_name(const char *flavname)
|
||||
{
|
||||
|
@ -3219,6 +3219,7 @@ int resolve_my_address(int warn_severity, or_options_t *options,
|
||||
uint32_t *addr, char **hostname_out);
|
||||
int is_local_addr(const tor_addr_t *addr) ATTR_PURE;
|
||||
void options_init(or_options_t *options);
|
||||
char *options_dump(or_options_t *options, int minimal);
|
||||
int options_init_from_torrc(int argc, char **argv);
|
||||
setopt_err_t options_init_from_string(const char *cf,
|
||||
int command, const char *command_arg, char **msg);
|
||||
|
Loading…
Reference in New Issue
Block a user