summaryrefslogtreecommitdiffstats
path: root/contrib
diff options
context:
space:
mode:
authorsam <sam@FreeBSD.org>2008-03-24 20:13:41 +0000
committersam <sam@FreeBSD.org>2008-03-24 20:13:41 +0000
commit2fb2cdc2a163f188028bae130a262d080a05cbfe (patch)
tree50c49f41d86d777f7830ac966ecce904a9893c0f /contrib
parentbe7f4cf9bb23f662351c9de8a24ee9c93d3daafe (diff)
parent469052a317acffb05c9c0694d05d9fda175a67eb (diff)
downloadFreeBSD-src-2fb2cdc2a163f188028bae130a262d080a05cbfe.zip
FreeBSD-src-2fb2cdc2a163f188028bae130a262d080a05cbfe.tar.gz
This commit was generated by cvs2svn to compensate for changes in r177572,
which included commits to RCS files with non-trunk default branches.
Diffstat (limited to 'contrib')
-rw-r--r--contrib/wpa_supplicant/Makefile4
-rw-r--r--contrib/wpa_supplicant/common.c47
-rw-r--r--contrib/wpa_supplicant/defconfig3
-rw-r--r--contrib/wpa_supplicant/wpa_supplicant_i.h5
4 files changed, 59 insertions, 0 deletions
diff --git a/contrib/wpa_supplicant/Makefile b/contrib/wpa_supplicant/Makefile
index 51114fa..9bcdd83 100644
--- a/contrib/wpa_supplicant/Makefile
+++ b/contrib/wpa_supplicant/Makefile
@@ -745,6 +745,10 @@ ifdef CONFIG_DEBUG_FILE
CFLAGS += -DCONFIG_DEBUG_FILE
endif
+ifdef CONFIG_DEBUG_SYSLOG
+CFLAGS += -DCONFIG_DEBUG_SYSLOG
+endif
+
OBJS += wpa_supplicant.o events.o
OBJS_t := $(OBJS) eapol_test.o radius.o radius_client.o
OBJS_t2 := $(OBJS) preauth_test.o
diff --git a/contrib/wpa_supplicant/common.c b/contrib/wpa_supplicant/common.c
index f226c68..d0233d8 100644
--- a/contrib/wpa_supplicant/common.c
+++ b/contrib/wpa_supplicant/common.c
@@ -16,6 +16,10 @@
#include "common.h"
+#ifdef CONFIG_DEBUG_SYSLOG
+#include <syslog.h>
+#endif /* CONFIG_DEBUG_SYSLOG */
+
#ifdef CONFIG_DEBUG_FILE
static FILE *out_file = NULL;
@@ -23,6 +27,7 @@ static FILE *out_file = NULL;
int wpa_debug_level = MSG_INFO;
int wpa_debug_show_keys = 0;
int wpa_debug_timestamp = 0;
+int wpa_debug_syslog = 0;
static int hex2num(char c)
@@ -161,6 +166,40 @@ void wpa_debug_print_timestamp(void)
printf("%ld.%06u: ", (long) tv.sec, (unsigned int) tv.usec);
}
+void wpa_debug_open_syslog(void)
+{
+#ifdef CONFIG_DEBUG_SYSLOG
+ openlog("wpa_supplicant", LOG_PID | LOG_NDELAY, LOG_DAEMON);
+ wpa_debug_syslog++;
+#endif
+}
+
+void wpa_debug_close_syslog(void)
+{
+#ifdef CONFIG_DEBUG_SYSLOG
+ if (wpa_debug_syslog)
+ closelog();
+#endif
+}
+
+#ifdef CONFIG_DEBUG_SYSLOG
+static int syslog_priority(int level)
+{
+ switch (level) {
+ case MSG_MSGDUMP:
+ case MSG_DEBUG:
+ return LOG_DEBUG;
+ case MSG_INFO:
+ return LOG_NOTICE;
+ case MSG_WARNING:
+ return LOG_WARNING;
+ case MSG_ERROR:
+ return LOG_ERR;
+ }
+ return LOG_INFO;
+}
+#endif /* CONFIG_DEBUG_SYSLOG */
+
/**
* wpa_printf - conditional printf
@@ -179,6 +218,11 @@ void wpa_printf(int level, char *fmt, ...)
va_start(ap, fmt);
if (level >= wpa_debug_level) {
+#ifdef CONFIG_DEBUG_SYSLOG
+ if (wpa_debug_syslog) {
+ vsyslog(syslog_priority(level), fmt, ap);
+ } else {
+#endif /* CONFIG_DEBUG_SYSLOG */
wpa_debug_print_timestamp();
#ifdef CONFIG_DEBUG_FILE
if (out_file) {
@@ -191,6 +235,9 @@ void wpa_printf(int level, char *fmt, ...)
#ifdef CONFIG_DEBUG_FILE
}
#endif /* CONFIG_DEBUG_FILE */
+#ifdef CONFIG_DEBUG_SYSLOG
+ }
+#endif /* CONFIG_DEBUG_SYSLOG */
}
va_end(ap);
}
diff --git a/contrib/wpa_supplicant/defconfig b/contrib/wpa_supplicant/defconfig
index 5216598..73e5da5 100644
--- a/contrib/wpa_supplicant/defconfig
+++ b/contrib/wpa_supplicant/defconfig
@@ -321,3 +321,6 @@ CONFIG_PEERKEY=y
# Add support for writing debug log to a file (/tmp/wpa_supplicant-log-#.txt)
#CONFIG_DEBUG_FILE=y
+
+# Add support for logging via syslog
+#CONFIG_DEBUG_SYSLOG=y
diff --git a/contrib/wpa_supplicant/wpa_supplicant_i.h b/contrib/wpa_supplicant/wpa_supplicant_i.h
index 0d6f24a..95d171c 100644
--- a/contrib/wpa_supplicant/wpa_supplicant_i.h
+++ b/contrib/wpa_supplicant/wpa_supplicant_i.h
@@ -161,6 +161,11 @@ struct wpa_params {
* wpa_debug_file_path - Path of debug file or %NULL to use stdout
*/
const char *wpa_debug_file_path;
+
+ /**
+ * wpa_debug_syslog - Enable log output through syslog
+ */
+ const char *wpa_debug_syslog;
};
/**
OpenPOWER on IntegriCloud