aboutsummaryrefslogtreecommitdiffstats
path: root/src/verbose.h
diff options
context:
space:
mode:
authorJosé Bollo <jose.bollo@iot.bzh>2016-04-05 10:07:55 +0200
committerJosé Bollo <jose.bollo@iot.bzh>2016-04-05 10:07:55 +0200
commit04331cc45e03325c6470bc5285d5c09843b24afd (patch)
treeaaca7d56b511c102f5155e66a48b4bc6261ed5b9 /src/verbose.h
parent98fe774e6e926fe36697a29280797166222fa973 (diff)
refactored verbosity
Change-Id: Ibbf6645fbf1149687be9a7475773685cfb06b514 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
Diffstat (limited to 'src/verbose.h')
-rw-r--r--src/verbose.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/verbose.h b/src/verbose.h
new file mode 100644
index 00000000..7b32a663
--- /dev/null
+++ b/src/verbose.h
@@ -0,0 +1,39 @@
+/*
+ Copyright 2015 IoT.bzh
+
+ author: José Bollo <jose.bollo@iot.bzh>
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+
+#if !defined(NDEBUG)
+#include <syslog.h>
+extern int verbosity;
+#define LOGUSER(app) openlog(app,LOG_PERROR,LOG_USER)
+#define LOGAUTH(app) openlog(app,LOG_PERROR,LOG_AUTH)
+#define ERROR(...) syslog(LOG_ERR,__VA_ARGS__)
+#define WARNING(...) do{if(verbosity)syslog(LOG_WARNING,__VA_ARGS__);}while(0)
+#define NOTICE(...) do{if(verbosity)syslog(LOG_NOTICE,__VA_ARGS__);}while(0)
+#define INFO(...) do{if(verbosity>1)syslog(LOG_INFO,__VA_ARGS__);}while(0)
+#define DEBUG(...) do{if(verbosity>2)syslog(LOG_DEBUG,__VA_ARGS__);}while(0)
+#else
+#include <syslog.h>
+#define LOGUSER(app) openlog(app,LOG_PERROR,LOG_USER)
+#define LOGAUTH(app) openlog(app,LOG_PERROR,LOG_AUTH)
+extern void verbose_error(const char *file, int line);
+#define ERROR(...) verbose_error(__FILE__,__LINE__)
+#define WARNING(...) do{/*nothing*/}while(0)
+#define NOTICE(...) do{/*nothing*/}while(0)
+#define INFO(...) do{/*nothing*/}while(0)
+#define DEBUG(...) do{/*nothing*/}while(0)
+#endif