From ba96d1cc28b9f1a54720bc997b38a9fabf896cdd Mon Sep 17 00:00:00 2001 From: venaas Date: Thu, 3 May 2007 13:27:26 +0000 Subject: debug functions git-svn-id: https://svn.testnett.uninett.no/radsecproxy/trunk@66 e88ac4ed-0b26-0410-9574-a7f39faa03bf --- debug.c | 35 +++++++++++++++++++++++++++++++++++ debug.h | 13 +++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 debug.c create mode 100644 debug.h diff --git a/debug.c b/debug.c new file mode 100644 index 0000000..f507f50 --- /dev/null +++ b/debug.c @@ -0,0 +1,35 @@ +/* + * Copyright (C) 2007 Stig Venaas + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + */ + +#include +#include +#include +#include +#include +#include "debug.h" + +static uint8_t debug_level = 0; + +void debug(uint8_t level, char *format, ...) { + extern int errno; + + if (level >= debug_level) { + va_list ap; + va_start(ap, format); + vfprintf(stderr, format, ap); + va_end(ap); + if (errno) { + fprintf(stderr, ": "); + perror(NULL); + fprintf(stderr, "errno=%d\n", errno); + } else + fprintf(stderr, "\n"); + } + if (level >= DBG_ERR) + exit(1); +} diff --git a/debug.h b/debug.h new file mode 100644 index 0000000..6249ee9 --- /dev/null +++ b/debug.h @@ -0,0 +1,13 @@ +/* + * Copyright (C) 2007 Stig Venaas + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + */ + +#define DBG_INFO 16 +#define DBG_WARN 32 +#define DBG_ERR 64 + +void debug(uint8_t level, char *format, ...); -- cgit v1.1