[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[or-cvs] Refuse to use RunAsDaemon when torrc is a relative path. Fi...
Update of /home/or/cvsroot/tor/src/or
In directory moria:/tmp/cvs-serv20970/src/or
Modified Files:
config.c
Log Message:
Refuse to use RunAsDaemon when torrc is a relative path. Fixes bug 229.
Index: config.c
===================================================================
RCS file: /home/or/cvsroot/tor/src/or/config.c,v
retrieving revision 1.480
retrieving revision 1.481
diff -u -p -d -r1.480 -r1.481
--- config.c 7 Jan 2006 00:41:50 -0000 1.480
+++ config.c 10 Jan 2006 20:00:20 -0000 1.481
@@ -1887,6 +1887,11 @@ options_validate(or_options_t *old_optio
result = -1;
}
+#ifndef MS_WINDOWS
+ if (options->RunAsDaemon && torrc_fname && path_is_relative(torrc_fname))
+ REJECT("Can't use a relative path to torrc when RunAsDaemon is set.");
+#endif
+
if (options->SocksPort < 0 || options->SocksPort > 65535)
REJECT("SocksPort option out of bounds.");
@@ -2502,6 +2507,9 @@ options_init_from_torrc(int argc, char *
tor_assert(fname);
log(LOG_DEBUG, LD_CONFIG, "Opening config file \"%s\"", fname);
+ tor_free(torrc_fname);
+ torrc_fname = fname;
+
/* get config lines, assign them */
if (file_status(fname) != FN_FILE ||
!(cf = read_file_to_str(fname,0))) {
@@ -2543,8 +2551,6 @@ options_init_from_torrc(int argc, char *
if (set_options(newoptions))
goto err; /* frees and replaces old options */
- tor_free(torrc_fname);
- torrc_fname = fname;
return 0;
err:
tor_free(fname);