diff options
Diffstat (limited to 'src/or')
-rw-r--r-- | src/or/config.c | 4 | ||||
-rw-r--r-- | src/or/main.c | 13 |
2 files changed, 14 insertions, 3 deletions
diff --git a/src/or/config.c b/src/or/config.c index 71c6fef9f..7dd4042a9 100644 --- a/src/or/config.c +++ b/src/or/config.c @@ -1195,7 +1195,8 @@ config_get_commandlines(int argc, char **argv, config_line_t **result) continue; } else if (!strcmp(argv[i],"--list-fingerprint") || !strcmp(argv[i],"--verify-config") || - !strcmp(argv[i],"--ignore-missing-torrc")) { + !strcmp(argv[i],"--ignore-missing-torrc") || + !strcmp(argv[i],"--quiet")) { i += 1; /* command-line option. ignore it. */ continue; } else if (!strcmp(argv[i],"--nt-service") || @@ -1203,6 +1204,7 @@ config_get_commandlines(int argc, char **argv, config_line_t **result) i += 1; continue; } + if (i == argc-1) { log_warn(LD_CONFIG,"Command-line option '%s' with no value. Failing.", argv[i]); diff --git a/src/or/main.c b/src/or/main.c index 08b5e805e..ea09bf524 100644 --- a/src/or/main.c +++ b/src/or/main.c @@ -1718,6 +1718,7 @@ handle_signals(int is_parent) tor_init(int argc, char *argv[]) { char buf[256]; + int i, quiet = 0; time_of_process_start = time(NULL); if (!connection_array) connection_array = smartlist_create(); @@ -1737,8 +1738,16 @@ tor_init(int argc, char *argv[]) addressmap_init(); /* Init the client dns cache. Do it always, since it's * cheap. */ - /* give it somewhere to log to initially */ - add_temp_log(); + /* We search for the "quiet" option first, since it decides whether we + * will log anything at all to the command line. */ + for (i=1;i<argc;++i) { + if (!strcmp(argv[i], "--quiet")) /*DOCDOC in mangpage.*/ + quiet = 1; + } + if (!quiet) { + /* give it somewhere to log to initially */ + add_temp_log(); + } log(LOG_NOTICE, LD_GENERAL, "Tor v%s. This is experimental software. " "Do not rely on it for strong anonymity. (Running on %s)",get_version(), |