7 April 2015: Wouter
- Libunbound skips dos-line-endings from etc/hosts.
+ - Unbound exits with a fatal error when the auto-trust-anchor-file
+ fails to be writable. This is seconds after startup. You can
+ load a readonly auto-trust-anchor-file with trust-anchor-file.
+ The file has to be writable to notice the trust anchor change,
+ without it, a trust anchor change will be unnoticed and the system
+ will then become unoperable.
2 April 2015: Wouter
- Fix #660: Fix interface-automatic broken in the presence of
verbose(VERB_ALGO, "autotrust: write to disk: %s", tempf);
out = fopen(tempf, "w");
if(!out) {
- log_err("could not open autotrust file for writing, %s: %s",
+ fatal_exit("could not open autotrust file for writing, %s: %s",
tempf, strerror(errno));
return;
}
/* failed to write contents (completely) */
fclose(out);
unlink(tempf);
- log_err("could not completely write: %s", fname);
+ fatal_exit("could not completely write: %s", fname);
return;
}
if(fclose(out) != 0) {
- log_err("could not complete write: %s: %s",
+ fatal_exit("could not complete write: %s: %s",
fname, strerror(errno));
unlink(tempf);
return;
(void)unlink(fname); /* windows does not replace file with rename() */
#endif
if(rename(tempf, fname) < 0) {
- log_err("rename(%s to %s): %s", tempf, fname, strerror(errno));
+ fatal_exit("rename(%s to %s): %s", tempf, fname, strerror(errno));
}
}