commit 719db28f54ad1fa957999f2a6256e07bdb412e4f Author: Nick Mathewson nickm@torproject.org Date: Mon Nov 20 16:52:55 2017 -0500
Add minimal implementations of functions Rust needs for logging --- src/common/log.c | 24 ++++++++++++++++++++++++ src/common/torlog.h | 4 ++++ 2 files changed, 28 insertions(+)
diff --git a/src/common/log.c b/src/common/log.c index ac6d07a92..608ffea95 100644 --- a/src/common/log.c +++ b/src/common/log.c @@ -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;
diff --git a/src/common/torlog.h b/src/common/torlog.h index b7d033adb..be8a39a1b 100644 --- a/src/common/torlog.h +++ b/src/common/torlog.h @@ -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
tor-commits@lists.torproject.org