Commit 719db28f authored by Nick Mathewson's avatar Nick Mathewson 🥔 Committed by Chelsea Holland Komlo
Browse files

Add minimal implementations of functions Rust needs for logging

parent f5d89fab
Loading
Loading
Loading
Loading
+24 −0
Original line number Diff line number Diff line
@@ -225,6 +225,30 @@ log_set_application_name(const char *name)
  appname = name ? tor_strdup(name) : NULL;
}

/** Return true if some of the running logs might be interested in a log
 * message of the given severity in the given domains. If this function
 * returns true, the log message might be ignored anyway, but if it returns
 * false, it is definitely_ safe not to log the message. */
int
log_message_is_interesting(int severity, log_domain_mask_t domain)
{
  (void) domain;
  return (severity <= log_global_min_severity_);
}

/**
 * As tor_log, but takes an optional function name, and does not treat its
 * <b>string</b> as a printf format.
 *
 * For use by Rust integration.
 */
void
tor_log_string(int severity, log_domain_mask_t domain,
               const char *function, const char *string)
{
  log_fn_(severity, domain, function, "%s", string);
}

/** Log time granularity in milliseconds. */
static int log_time_granularity = 1;

+4 −0
Original line number Diff line number Diff line
@@ -189,6 +189,10 @@ void log_fn_ratelim_(struct ratelim_t *ratelim, int severity,
                     const char *format, ...)
  CHECK_PRINTF(5,6);

int log_message_is_interesting(int severity, log_domain_mask_t domain);
void tor_log_string(int severity, log_domain_mask_t domain,
                    const char *function, const char *string);

#if defined(__GNUC__) && __GNUC__ <= 3

/* These are the GCC varidaic macros, so that older versions of GCC don't