From 87a217f9f1640ed08dbe06564f6fbcd3cdfdeefb Mon Sep 17 00:00:00 2001 From: Martin Willi Date: Mon, 20 Mar 2006 15:43:26 +0000 Subject: - works quite well now with ipsec.conf & ipsec starter --- Source/charon/utils/logger.c | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) (limited to 'Source/charon/utils/logger.c') diff --git a/Source/charon/utils/logger.c b/Source/charon/utils/logger.c index 29f485baa..3e2c93860 100644 --- a/Source/charon/utils/logger.c +++ b/Source/charon/utils/logger.c @@ -178,6 +178,7 @@ static void log_bytes(private_logger_t *this, logger_level_t loglevel, char *lab if ((this->level & loglevel) == loglevel) { char buffer[MAX_LOG]; + char ascii_buffer[17]; char *format; char *buffer_pos; char *bytes_pos, *bytes_roof; @@ -207,6 +208,7 @@ static void log_bytes(private_logger_t *this, logger_level_t loglevel, char *lab bytes_pos = bytes; bytes_roof = bytes + len; buffer_pos = buffer; + memset(ascii_buffer, 0, 17); for (i = 1; bytes_pos < bytes_roof; i++) { @@ -219,30 +221,34 @@ static void log_bytes(private_logger_t *this, logger_level_t loglevel, char *lab buffer_pos = buffer; if (this->output == NULL) { - syslog(LOG_INFO, "[=>] [%5d ] %s", line_start, buffer); + syslog(LOG_INFO, "[=>] [%5d ] %s %s", line_start, buffer, ascii_buffer); } else { - fprintf(this->output, "[=>] [%5d ] %s\n", line_start, buffer); + fprintf(this->output, "[=>] [%5d ] %s %s\n", line_start, buffer, ascii_buffer); } + memset(ascii_buffer, 0, 16); line_start += 16; } - else if ((i % 8) == 0) - { - *buffer_pos++ = ' '; - *buffer_pos++ = ' '; - *buffer_pos++ = ' '; - } else if ((i % 4) == 0) { *buffer_pos++ = ' '; - *buffer_pos++ = ' '; + // *buffer_pos++ = ' '; } else { *buffer_pos++ = ' '; } + if (*bytes_pos > 31 && *bytes_pos < 127) + { + ascii_buffer[(i % 16)] = *bytes_pos; + } + else + { + ascii_buffer[(i % 16)] = '*'; + } + bytes_pos++; } @@ -252,11 +258,11 @@ static void log_bytes(private_logger_t *this, logger_level_t loglevel, char *lab buffer_pos = buffer; if (this->output == NULL) { - syslog(LOG_INFO, "[=>] [%5d ] %s", line_start, buffer); + syslog(LOG_INFO, "[=>] [%5d ] %s %16s", line_start, buffer, ascii_buffer); } else { - fprintf(this->output, "[=>] [%5d ] %s\n", line_start, buffer); + fprintf(this->output, "[=>] [%5d ] %s %16s\n", line_start, buffer, ascii_buffer); } } pthread_mutex_unlock(&mutex); -- cgit v1.2.3