aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDmitry Shmidt <dimitrysh@google.com>2011-02-25 14:44:34 (GMT)
committerJouni Malinen <j@w1.fi>2011-02-25 14:44:34 (GMT)
commit193f439a8c4806a25399e8b4c6c24df0a57c7af4 (patch)
treea0852bde557af4536583c6932925cddbcb812378 /src
parent1a13534f1789f0634ccac0c0d4c0c6c11b4a622e (diff)
downloadhostap-193f439a8c4806a25399e8b4c6c24df0a57c7af4.zip
hostap-193f439a8c4806a25399e8b4c6c24df0a57c7af4.tar.gz
hostap-193f439a8c4806a25399e8b4c6c24df0a57c7af4.tar.bz2
Add CONFIG_ANDROID_LOG support
This makes wpa_printf() calls use __android_log_vprint(). In addition, hexdumps are commented out.
Diffstat (limited to 'src')
-rw-r--r--src/utils/wpa_debug.c25
-rw-r--r--src/utils/wpa_debug.h28
2 files changed, 53 insertions, 0 deletions
diff --git a/src/utils/wpa_debug.c b/src/utils/wpa_debug.c
index 27a61c0..ba554ef 100644
--- a/src/utils/wpa_debug.c
+++ b/src/utils/wpa_debug.c
@@ -28,6 +28,30 @@ int wpa_debug_show_keys = 0;
int wpa_debug_timestamp = 0;
+#ifdef CONFIG_ANDROID_LOG
+
+#include <android/log.h>
+
+void android_printf(int level, char *format, ...)
+{
+ if (level >= wpa_debug_level) {
+ va_list ap;
+ if (level == MSG_ERROR)
+ level = ANDROID_LOG_ERROR;
+ else if (level == MSG_WARNING)
+ level = ANDROID_LOG_WARN;
+ else if (level == MSG_INFO)
+ level = ANDROID_LOG_INFO;
+ else
+ level = ANDROID_LOG_DEBUG;
+ va_start(ap, format);
+ __android_log_vprint(level, "wpa_supplicant", format, ap);
+ va_end(ap);
+ }
+}
+
+#else /* CONFIG_ANDROID_LOG */
+
#ifndef CONFIG_NO_STDOUT_DEBUG
#ifdef CONFIG_DEBUG_FILE
@@ -340,6 +364,7 @@ void wpa_debug_close_file(void)
#endif /* CONFIG_NO_STDOUT_DEBUG */
+#endif /* CONFIG_ANDROID_LOG */
#ifndef CONFIG_NO_WPA_MSG
static wpa_msg_cb_func wpa_msg_cb = NULL;
diff --git a/src/utils/wpa_debug.h b/src/utils/wpa_debug.h
index 0c8cdf2..ae36afe 100644
--- a/src/utils/wpa_debug.h
+++ b/src/utils/wpa_debug.h
@@ -24,6 +24,32 @@ enum {
MSG_EXCESSIVE, MSG_MSGDUMP, MSG_DEBUG, MSG_INFO, MSG_WARNING, MSG_ERROR
};
+#ifdef CONFIG_ANDROID_LOG
+
+#define wpa_debug_print_timestamp() do {} while (0)
+#define wpa_hexdump(...) do {} while (0)
+#define wpa_hexdump_key(...) do {} while (0)
+#define wpa_hexdump_buf(l,t,b) do {} while (0)
+#define wpa_hexdump_buf_key(l,t,b) do {} while (0)
+#define wpa_hexdump_ascii(...) do {} while (0)
+#define wpa_hexdump_ascii_key(...) do {} while (0)
+#define wpa_debug_open_file(...) do {} while (0)
+#define wpa_debug_close_file() do {} while (0)
+#define wpa_dbg(...) do {} while (0)
+
+static inline int wpa_debug_reopen_file(void)
+{
+ return 0;
+}
+
+
+void android_printf(int level, char *format, ...)
+PRINTF_FORMAT(2, 3);
+
+#define wpa_printf android_printf
+
+#else /* CONFIG_ANDROID_LOG */
+
#ifdef CONFIG_NO_STDOUT_DEBUG
#define wpa_debug_print_timestamp() do { } while (0)
@@ -157,6 +183,8 @@ void wpa_hexdump_ascii_key(int level, const char *title, const u8 *buf,
#endif /* CONFIG_NO_STDOUT_DEBUG */
+#endif /* CONFIG_ANDROID_LOG */
+
#ifdef CONFIG_NO_WPA_MSG
#define wpa_msg(args...) do { } while (0)