From 54e31640362a7a995dd49f100eee9550d745e58f Mon Sep 17 00:00:00 2001 From: Niklas Date: Wed, 19 Oct 2011 17:00:58 +0200 Subject: put the NetworkDiscovery code into the src folder of the fbgui. made some test, building a usb stick iso and running it on a maschine. did some bug fixes --- customdhcpcd/src/dhcpcd.c | 3 +- customdhcpcd/src/logger.c | 86 +++++++++++++++++++++++++------------------- customdhcpcd/src/logwriter.c | 9 +++-- 3 files changed, 57 insertions(+), 41 deletions(-) (limited to 'customdhcpcd/src') diff --git a/customdhcpcd/src/dhcpcd.c b/customdhcpcd/src/dhcpcd.c index c200211..d0ad5e7 100644 --- a/customdhcpcd/src/dhcpcd.c +++ b/customdhcpcd/src/dhcpcd.c @@ -1,5 +1,4 @@ -/* - * dhcpcd - DHCP client daemon + /* dhcpcd - DHCP client daemon * Copyright 2006-2008 Roy Marples * All rights reserved diff --git a/customdhcpcd/src/logger.c b/customdhcpcd/src/logger.c index 91d6cc0..70c693a 100644 --- a/customdhcpcd/src/logger.c +++ b/customdhcpcd/src/logger.c @@ -80,47 +80,59 @@ void setlogprefix(const char *prefix) { void logger(int level, const char *fmt, ...) { va_list p; va_list p2; - FILE *f = stderr; +// FILE *f = stderr; + FILE *f; + char* path = "/tmp/cdhcpcd.log"; + + f = fopen(path,"a"); va_start (p, fmt); va_copy (p2, p); - if (level <= LOG_ERR || level <= loglevel) { - - /* new function by Niklas Goby - * send the log message also to our Qt programm. - * implemented in logwriter.c - * */ - logLoggerToQt(level, fmt, p); - - if (level == LOG_DEBUG || level == LOG_INFO) - f = stdout; - fprintf(f, "%s, %s", leveltolog(level), logprefix); - vfprintf(f, fmt, p); - fputc('\n', f); - - /* stdout, stderr may be re-directed to some kind of buffer. - * So we always flush to ensure it's written. */ - fflush(f); - } - - if (level < LOG_DEBUG || level <= loglevel) { - size_t len = strlen(logprefix); - size_t fmt2len = strlen(fmt) + len + 1; - char *fmt2 = malloc(sizeof(char) * fmt2len); - char *pf = fmt2; - if (fmt2) { - memcpy(pf, logprefix, len); - pf += len; - strlcpy(pf, fmt, fmt2len - len); - vsyslog(level, fmt2, p2); - free(fmt2); - } else { - vsyslog(level, fmt, p2); - syslog(LOG_ERR, "logger: memory exhausted"); - exit(EXIT_FAILURE); - } - } + fprintf(f, "%s, %s", leveltolog(level), logprefix); + vfprintf(f, fmt, p); + fputc('\n', f); + + /* stdout, stderr may be re-directed to some kind of buffer. + * So we always flush to ensure it's written. */ + fflush(f); + +// //logLoggerToQt(level, fmt, p); +// if (level <= LOG_ERR || level <= loglevel) { +// +// /* new function by Niklas Goby +// * send the log message also to our Qt programm. +// * implemented in logwriter.c +// * */ +// //logLoggerToQt(level, fmt, p); +// +// if (level == LOG_DEBUG || level == LOG_INFO) +// f = stdout; +// fprintf(f, "%s, %s", leveltolog(level), logprefix); +// vfprintf(f, fmt, p); +// fputc('\n', f); +// +// /* stdout, stderr may be re-directed to some kind of buffer. +// * So we always flush to ensure it's written. */ +// fflush(f); +// } +// if (level < LOG_DEBUG || level <= loglevel) { +// size_t len = strlen(logprefix); +// size_t fmt2len = strlen(fmt) + len + 1; +// char *fmt2 = malloc(sizeof(char) * fmt2len); +// char *pf = fmt2; +// if (fmt2) { +// memcpy(pf, logprefix, len); +// pf += len; +// strlcpy(pf, fmt, fmt2len - len); +// vsyslog(level, fmt2, p2); +// free(fmt2); +// } else { +// vsyslog(level, fmt, p2); +// syslog(LOG_ERR, "logger: memory exhausted"); +// exit(EXIT_FAILURE); +// } +// } va_end (p2); va_end (p); diff --git a/customdhcpcd/src/logwriter.c b/customdhcpcd/src/logwriter.c index d8c3537..e407bc2 100644 --- a/customdhcpcd/src/logwriter.c +++ b/customdhcpcd/src/logwriter.c @@ -83,7 +83,8 @@ void sendToQt(log_msg * msg) { ret = snprintf(outbuf, DHCP_MESSAGE_SIZE, tpl, msg->device, msg->status, msg->substatus, msg->msg); if (ret < 1) { - syslog(LOG_INFO, "[fbgui] ERROR filling message buffer"); + logger(LOG_INFO, "[fbgui] ERROR filling message buffer"); + //syslog(LOG_INFO, "[fbgui] ERROR filling message buffer"); return; } if (outbuf != NULL) { @@ -93,9 +94,12 @@ void sendToQt(log_msg * msg) { msg->status, msg->substatus, msg->msg, msg->device); if (n <= 0) { - syslog(LOG_ERR, "[fbgui] ERROR writing to socket: [%d:%d] %s (%s)", + logger(LOG_ERR, "[fbgui] ERROR writing to socket: [%d:%d] %s (%s)", msg->status, msg->substatus, msg->msg, msg->device); + //syslog(LOG_ERR, "[fbgui] ERROR writing to socket: [%d:%d] %s (%s)", + // msg->status, msg->substatus, msg->msg, msg->device); } + /* memset(ack, 0, ACK_SIZE); if ((t = recv(sockfd, ack, ACK_SIZE, 0)) > 0) { syslog(LOG_ERR, "[fbgui] recv ack echo> %s", ack); @@ -106,6 +110,7 @@ void sendToQt(log_msg * msg) { else syslog(LOG_ERR, "[fbgui] ERROR Server closed"); } + */ } void logToQt(int status, int substatus, const char * msg) { -- cgit v1.2.3-55-g7522