Commit 9d132fbd authored by Peter Palfrader's avatar Peter Palfrader
Browse files

Add --hush switch.

New --hush command-line option similar to --quiet.  While --quiet disables all
logging to the console on startup, --hush limits the output to messages of
warning and error severity.


svn:r14222
parent 3bc512cf
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -47,6 +47,9 @@ Changes in version 0.2.1.1-alpha - 2008-??-??
      this accounted for over 40% of allocations from within Tor's code
      on a typical directory cache.
    - Lots of new unit tests.
    - New --hush command-line option similar to --quiet.  While --quiet
      disables all logging to the console on startup, --hush limits the
      output to messages of warning and error severity.

  o Code simplifications and refactoring:
    - Refactor code using connection_ap_handshake_attach_circuit() to
+2 −2
Original line number Diff line number Diff line
@@ -535,10 +535,10 @@ init_logging(void)
 * logs are initialized).
 */
void
add_temp_log(void)
add_temp_log(int min_severity)
{
  log_severity_list_t *s = tor_malloc_zero(sizeof(log_severity_list_t));
  set_log_severity_config(LOG_NOTICE, LOG_ERR, s);
  set_log_severity_config(min_severity, LOG_ERR, s);
  LOCK_LOGS();
  add_stream_log_impl(s, "<temp>", stdout);
  tor_free(s);
+1 −1
Original line number Diff line number Diff line
@@ -130,7 +130,7 @@ int add_callback_log(log_severity_list_t *severity, log_callback cb);
int get_min_log_level(void);
void switch_logs_debug(void);
void logs_free_all(void);
void add_temp_log(void);
void add_temp_log(int min_severity);
void close_temp_logs(void);
void rollback_log_changes(void);
void mark_logs_temp(void);
+2 −1
Original line number Diff line number Diff line
@@ -1343,7 +1343,8 @@ config_get_commandlines(int argc, char **argv, config_line_t **result)
    } else if (!strcmp(argv[i],"--list-fingerprint") ||
               !strcmp(argv[i],"--verify-config") ||
               !strcmp(argv[i],"--ignore-missing-torrc") ||
               !strcmp(argv[i],"--quiet")) {
               !strcmp(argv[i],"--quiet") ||
               !strcmp(argv[i],"--hush")) {
      i += 1; /* command-line option. ignore it. */
      continue;
    } else if (!strcmp(argv[i],"--nt-service") ||
+13 −4
Original line number Diff line number Diff line
@@ -1780,12 +1780,21 @@ tor_init(int argc, char *argv[])
  /* 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"))
    if (!strcmp(argv[i], "--hush"))
      quiet = 1;
    if (!strcmp(argv[i], "--quiet"))
      quiet = 2;
  }
  if (!quiet) {
 /* give it somewhere to log to initially */
    add_temp_log();
  switch (quiet) {
    case 2:
      /* no initial logging */
      break;
    case 1:
      add_temp_log(LOG_WARN);
      break;
    default:
      add_temp_log(LOG_NOTICE);
  }

  log(LOG_NOTICE, LD_GENERAL, "Tor v%s. This is experimental software. "