From 673ef9b9aa0a5ccf3041dae720d3a9175e8c5137 Mon Sep 17 00:00:00 2001 From: Chia-chi Yeh Date: Fri, 8 May 2009 07:24:40 +0800 Subject: [PATCH 1/1] Bind the logging to logit() since pppd uses special expressions such as "%I" which __android_log_vprint() does not understand. --- pppd/utils.c | 52 +++++++++++++++++++++++++--------------------------- 1 file changed, 25 insertions(+), 27 deletions(-) diff --git a/pppd/utils.c b/pppd/utils.c index 6f668b8..781044f 100644 --- a/pppd/utils.c +++ b/pppd/utils.c @@ -649,6 +649,26 @@ print_string(p, len, printer, arg) printer(arg, "\""); } + +#ifdef ANDROID_CHANGES + +#if LOG_PRIMASK != 7 +#error Syslog.h has been changed! Please fix this table! +#endif + +static int syslog_to_android[] = { + [LOG_EMERG] = ANDROID_LOG_FATAL, + [LOG_ALERT] = ANDROID_LOG_FATAL, + [LOG_CRIT] = ANDROID_LOG_FATAL, + [LOG_ERR] = ANDROID_LOG_ERROR, + [LOG_WARNING] = ANDROID_LOG_WARN, + [LOG_NOTICE] = ANDROID_LOG_INFO, + [LOG_INFO] = ANDROID_LOG_INFO, + [LOG_DEBUG] = ANDROID_LOG_DEBUG, +}; + +#endif + /* * logit - does the hard work for fatal et al. */ @@ -662,7 +682,12 @@ logit(level, fmt, args) char buf[1024]; n = vslprintf(buf, sizeof(buf), fmt, args); + +#ifndef ANDROID_CHANGES log_write(level, buf); +#else + __android_log_write(syslog_to_android[level], LOG_TAG, buf); +#endif } static void @@ -701,11 +726,7 @@ fatal __V((char *fmt, ...)) fmt = va_arg(pvar, char *); #endif -#ifdef ANDROID_CHANGES - __android_log_vprint(ANDROID_LOG_ERROR, LOG_TAG, fmt, pvar); -#else logit(LOG_ERR, fmt, pvar); -#endif va_end(pvar); die(1); /* as promised */ @@ -727,12 +748,7 @@ error __V((char *fmt, ...)) fmt = va_arg(pvar, char *); #endif -#ifdef ANDROID_CHANGES - __android_log_vprint(ANDROID_LOG_ERROR, LOG_TAG, fmt, pvar); -#else logit(LOG_ERR, fmt, pvar); -#endif - va_end(pvar); ++error_count; } @@ -753,12 +769,7 @@ warn __V((char *fmt, ...)) fmt = va_arg(pvar, char *); #endif -#ifdef ANDROID_CHANGES - __android_log_vprint(ANDROID_LOG_WARN, LOG_TAG, fmt, pvar); -#else logit(LOG_WARNING, fmt, pvar); -#endif - va_end(pvar); } @@ -778,11 +789,7 @@ notice __V((char *fmt, ...)) fmt = va_arg(pvar, char *); #endif -#ifdef ANDROID_CHANGES - __android_log_vprint(ANDROID_LOG_INFO, LOG_TAG, fmt, pvar); -#else logit(LOG_NOTICE, fmt, pvar); -#endif va_end(pvar); } @@ -802,12 +809,7 @@ info __V((char *fmt, ...)) fmt = va_arg(pvar, char *); #endif -#ifdef ANDROID_CHANGES - __android_log_vprint(ANDROID_LOG_INFO, LOG_TAG, fmt, pvar); -#else logit(LOG_INFO, fmt, pvar); -#endif - va_end(pvar); } @@ -827,11 +829,7 @@ dbglog __V((char *fmt, ...)) fmt = va_arg(pvar, char *); #endif -#ifdef ANDROID_CHANGES - __android_log_vprint(ANDROID_LOG_DEBUG, LOG_TAG, fmt, pvar); -#else logit(LOG_DEBUG, fmt, pvar); -#endif va_end(pvar); } -- 2.11.0