Pārlūkot izejas kodu

try to address bug 257: if rename() fails during saveconf, tell
the controller.


svn:r6049

Roger Dingledine 19 gadi atpakaļ
vecāks
revīzija
57bcdcecf1
1 mainītis faili ar 6 papildinājumiem un 1 dzēšanām
  1. 6 1
      src/or/config.c

+ 6 - 1
src/or/config.c

@@ -3653,7 +3653,12 @@ write_configuration_file(const char *fname, or_options_t *options)
       ++i;
     }
     log_notice(LD_CONFIG, "Renaming old configuration file to \"%s\"", fn_tmp);
-    rename(fname, fn_tmp);
+    if (rename(fname, fn_tmp) < 0) {
+      log_warn(LD_FS, "Couldn't rename \"%s\" to \"%s\": %s",
+             fname, fn_tmp, strerror(errno));
+      tor_free(fn_tmp);
+      goto err;
+    }
     tor_free(fn_tmp);
   }