Loading changes/ticket24588 0 → 100644 +5 −0 Original line number Diff line number Diff line o Minor features (embedding, mobile): - Applications that want to embed Tor can now tell Tor not to register any of its own POSIX signal handlers, using the __DisableSignalHandlers option. This option is not meant for general use. Closes ticket 24588. src/or/config.c +7 −0 Original line number Diff line number Diff line Loading @@ -564,6 +564,7 @@ static config_var_t option_vars_[] = { VAR("__ReloadTorrcOnSIGHUP", BOOL, ReloadTorrcOnSIGHUP, "1"), VAR("__AllDirActionsPrivate", BOOL, AllDirActionsPrivate, "0"), VAR("__DisablePredictedCircuits",BOOL,DisablePredictedCircuits, "0"), VAR("__DisableSignalHandlers", BOOL, DisableSignalHandlers, "0"), VAR("__LeaveStreamsUnattached",BOOL, LeaveStreamsUnattached, "0"), VAR("__HashedControlSessionPassword", LINELIST, HashedControlSessionPassword, NULL), Loading Loading @@ -4652,6 +4653,12 @@ options_transition_allowed(const or_options_t *old, return -1; } if (old->DisableSignalHandlers != new_val->DisableSignalHandlers) { *msg = tor_strdup("While Tor is running, changing DisableSignalHandlers " "is not allowed."); return -1; } if (strcmp(old->DataDirectory,new_val->DataDirectory)!=0) { tor_asprintf(msg, "While Tor is running, changing DataDirectory " Loading src/or/main.c +3 −1 Original line number Diff line number Diff line Loading @@ -3057,8 +3057,10 @@ void handle_signals(void) { int i; const int enabled = !get_options()->DisableSignalHandlers; for (i = 0; signal_handlers[i].signal_value >= 0; ++i) { if (signal_handlers[i].try_to_register) { if (enabled && signal_handlers[i].try_to_register) { signal_handlers[i].signal_event = tor_evsignal_new(tor_libevent_get_base(), signal_handlers[i].signal_value, Loading src/or/or.h +5 −0 Original line number Diff line number Diff line Loading @@ -4651,6 +4651,11 @@ typedef struct { /** List of files that were opened by %include in torrc and torrc-defaults */ smartlist_t *FilesOpenedByIncludes; /** If true, Tor shouldn't install any posix signal handlers, since it is * running embedded inside another process. */ int DisableSignalHandlers; } or_options_t; #define LOG_PROTOCOL_WARN (get_protocol_warning_severity_level()) Loading Loading
changes/ticket24588 0 → 100644 +5 −0 Original line number Diff line number Diff line o Minor features (embedding, mobile): - Applications that want to embed Tor can now tell Tor not to register any of its own POSIX signal handlers, using the __DisableSignalHandlers option. This option is not meant for general use. Closes ticket 24588.
src/or/config.c +7 −0 Original line number Diff line number Diff line Loading @@ -564,6 +564,7 @@ static config_var_t option_vars_[] = { VAR("__ReloadTorrcOnSIGHUP", BOOL, ReloadTorrcOnSIGHUP, "1"), VAR("__AllDirActionsPrivate", BOOL, AllDirActionsPrivate, "0"), VAR("__DisablePredictedCircuits",BOOL,DisablePredictedCircuits, "0"), VAR("__DisableSignalHandlers", BOOL, DisableSignalHandlers, "0"), VAR("__LeaveStreamsUnattached",BOOL, LeaveStreamsUnattached, "0"), VAR("__HashedControlSessionPassword", LINELIST, HashedControlSessionPassword, NULL), Loading Loading @@ -4652,6 +4653,12 @@ options_transition_allowed(const or_options_t *old, return -1; } if (old->DisableSignalHandlers != new_val->DisableSignalHandlers) { *msg = tor_strdup("While Tor is running, changing DisableSignalHandlers " "is not allowed."); return -1; } if (strcmp(old->DataDirectory,new_val->DataDirectory)!=0) { tor_asprintf(msg, "While Tor is running, changing DataDirectory " Loading
src/or/main.c +3 −1 Original line number Diff line number Diff line Loading @@ -3057,8 +3057,10 @@ void handle_signals(void) { int i; const int enabled = !get_options()->DisableSignalHandlers; for (i = 0; signal_handlers[i].signal_value >= 0; ++i) { if (signal_handlers[i].try_to_register) { if (enabled && signal_handlers[i].try_to_register) { signal_handlers[i].signal_event = tor_evsignal_new(tor_libevent_get_base(), signal_handlers[i].signal_value, Loading
src/or/or.h +5 −0 Original line number Diff line number Diff line Loading @@ -4651,6 +4651,11 @@ typedef struct { /** List of files that were opened by %include in torrc and torrc-defaults */ smartlist_t *FilesOpenedByIncludes; /** If true, Tor shouldn't install any posix signal handlers, since it is * running embedded inside another process. */ int DisableSignalHandlers; } or_options_t; #define LOG_PROTOCOL_WARN (get_protocol_warning_severity_level()) Loading