diff options
-rw-r--r-- | changes/bug919 | 4 | ||||
-rw-r--r-- | src/or/config.c | 10 |
2 files changed, 10 insertions, 4 deletions
diff --git a/changes/bug919 b/changes/bug919 new file mode 100644 index 0000000000..728b821a95 --- /dev/null +++ b/changes/bug919 @@ -0,0 +1,4 @@ + o Minor bugfixes: + - Fix a regression that caused Tor to rebind its ports if it receives + SIGHUP while hibernating. Bugfix in 0.1.1.6-alpha, closes bug 919. + diff --git a/src/or/config.c b/src/or/config.c index 20ae9f072f..46066b1862 100644 --- a/src/or/config.c +++ b/src/or/config.c @@ -950,10 +950,12 @@ options_act_reversible(or_options_t *old_options, char **msg) } /* Launch the listeners. (We do this before we setuid, so we can bind to - * ports under 1024.) */ - if (retry_all_listeners(replaced_listeners, new_listeners) < 0) { - *msg = tor_strdup("Failed to bind one of the listener ports."); - goto rollback; + * ports under 1024.) We don't want to rebind if we're hibernating. */ + if (!we_are_hibernating()) { + if (retry_all_listeners(replaced_listeners, new_listeners) < 0) { + *msg = tor_strdup("Failed to bind one of the listener ports."); + goto rollback; + } } } |