Pārlūkot izejas kodu

Bug #919: Don't rebind ports if we receive SIGHUP while hibernating.

Chris Ball 15 gadi atpakaļ
vecāks
revīzija
73a4c0690e
2 mainītis faili ar 10 papildinājumiem un 4 dzēšanām
  1. 4 0
      changes/bug919
  2. 6 4
      src/or/config.c

+ 4 - 0
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.
+

+ 6 - 4
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;
+      }
     }
   }