From 41354b0b972df187d5b6f6b02b26b736ec6bce23 Mon Sep 17 00:00:00 2001 From: Stephen Gallagher Date: Fri, 20 Dec 2013 15:17:19 -0500 Subject: DEBUG: Allow debug_fn to process __FILE__ and __LINE__ MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In preparation for enabling journald support for the DEBUG logs, we will need to be able to pass in certain additional arguments that will be required, specifically the code file and line number. We will be able to optionally enable this in the file-based logs as well if we so choose, but for right now we will avoid breaking the log format on disk. Reviewed-by: Jakub Hrozek Reviewed-by: Lukáš Slebodník --- src/util/util.h | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'src/util/util.h') diff --git a/src/util/util.h b/src/util/util.h index b5e742f6e..c74ff5b56 100644 --- a/src/util/util.h +++ b/src/util/util.h @@ -68,8 +68,11 @@ extern int debug_timestamps; extern int debug_microseconds; extern int debug_to_file; extern const char *debug_log_file; -void debug_fn(const char *function, int level, const char *format, ...) - SSS_ATTRIBUTE_PRINTF(3, 4); +void debug_fn(const char *file, + long line, + const char *function, + int level, + const char *format, ...) SSS_ATTRIBUTE_PRINTF(5,6); int debug_convert_old_level(int old_level); errno_t set_debug_file_from_fd(const int fd); @@ -118,8 +121,11 @@ errno_t set_debug_file_from_fd(const int fd); */ #define DEBUG(level, format, ...) do { \ int __debug_macro_level = level; \ - if (DEBUG_IS_SET(__debug_macro_level)) \ - debug_fn(__FUNCTION__, __debug_macro_level, format, ##__VA_ARGS__); \ + if (DEBUG_IS_SET(__debug_macro_level)) { \ + debug_fn(__FILE__, __LINE__, __FUNCTION__, \ + __debug_macro_level, \ + format, ##__VA_ARGS__); \ + } \ } while (0) /** \def DEBUG_IS_SET(level) -- cgit