Pass through indent and add more doxygen comments.

This commit is contained in:
mmdolze
2011-02-27 11:31:42 +00:00
parent 2b28c02449
commit 7a7d6e9f73
2 changed files with 107 additions and 95 deletions
+49 -35
View File
@@ -3,7 +3,6 @@
*/
/*-
* report.c
* This file is part of LCDproc.
*
* This file is released under the GNU General Public License. Refer to the
@@ -31,37 +30,37 @@ static char *stored_msgs[MAX_STORED_MSGS];
static int stored_levels[MAX_STORED_MSGS];
static int num_stored_msgs = 0;
/* local functions */
static void store_report_message( int level, const char *message );
static void store_report_message(int level, const char *message);
static void flush_messages();
void report( const int level, const char *format, .../*args*/ )
void
report(const int level, const char *format,... /* args */ )
{
/* Check if we should report it */
if( level <= report_level || report_dest == RPT_DEST_STORE ) {
if (level <= report_level || report_dest == RPT_DEST_STORE) {
char buf[1024];
char buf[1024];
/* Following functions appear to work on RedHat and Debian
/*
* Following functions appear to work on RedHat and Debian
* Linux, FreeBSD and Solaris
*/
va_list ap;
va_start(ap, format); /* measure the required size (the number of elements of format) */
va_start(ap, format);
switch( report_dest ) {
case RPT_DEST_STDERR:
vfprintf( stderr, format, ap );
fprintf( stderr, "\n" );
switch (report_dest) {
case RPT_DEST_STDERR:
vfprintf(stderr, format, ap);
fprintf(stderr, "\n");
break;
case RPT_DEST_SYSLOG:
vsyslog( LOG_USER|(level+2), format, ap );
case RPT_DEST_SYSLOG:
vsyslog(LOG_USER | (level + 2), format, ap);
break;
case RPT_DEST_STORE:
vsnprintf( buf, sizeof(buf), format, ap );
buf[sizeof(buf)-1] = 0; /* be sure to have a terminating 0 */
store_report_message( level, buf );
case RPT_DEST_STORE:
vsnprintf(buf, sizeof(buf), format, ap);
buf[sizeof(buf) - 1] = 0;
store_report_message(level, buf);
break;
}
va_end(ap);
@@ -69,47 +68,62 @@ void report( const int level, const char *format, .../*args*/ )
}
int set_reporting( char *application_name, int new_level, int new_dest )
int
set_reporting(char *application_name, int new_level, int new_dest)
{
if( new_level < RPT_CRIT || new_level > RPT_DEBUG ) {
report( RPT_ERR, "report level invalid: %d", new_level );
if (new_level < RPT_CRIT || new_level > RPT_DEBUG) {
report(RPT_ERR, "report level invalid: %d", new_level);
return -1;
}
if( report_dest != RPT_DEST_SYSLOG && new_dest == RPT_DEST_SYSLOG ) {
openlog( application_name, 0, LOG_USER );
if (report_dest != RPT_DEST_SYSLOG && new_dest == RPT_DEST_SYSLOG) {
openlog(application_name, 0, LOG_USER);
}
else if( report_dest == RPT_DEST_SYSLOG && new_dest != RPT_DEST_SYSLOG ) {
else if (report_dest == RPT_DEST_SYSLOG && new_dest != RPT_DEST_SYSLOG) {
closelog();
}
report_level = new_level;
report_dest = new_dest;
if( report_dest != RPT_DEST_STORE )
/*
* Flush all messages currently in the message store if the new
* destination is not the store itself.
*/
if (report_dest != RPT_DEST_STORE)
flush_messages();
return 0;
}
static void store_report_message( int level, const char *message )
/**
* Puts a message into the message store. If the store is full new messages
* are silently discarded.
*/
static void
store_report_message(int level, const char *message)
{
if( num_stored_msgs < MAX_STORED_MSGS ) {
stored_msgs[num_stored_msgs] = malloc(strlen( message )+1);
strcpy( stored_msgs[num_stored_msgs], message );
if (num_stored_msgs < MAX_STORED_MSGS) {
stored_msgs[num_stored_msgs] = malloc(strlen(message) + 1);
strcpy(stored_msgs[num_stored_msgs], message);
stored_levels[num_stored_msgs] = level;
num_stored_msgs ++;
num_stored_msgs++;
}
}
static void flush_messages()
/**
* Report all messages contained in the message store to the current report
* destination and release their memory.
*/
static void
flush_messages()
{
int i;
for( i=0; i<num_stored_msgs; i++ ) {
report( stored_levels[i], "%s", stored_msgs[i] );
free( stored_msgs[i] );
for (i = 0; i < num_stored_msgs; i++) {
report(stored_levels[i], "%s", stored_msgs[i]);
free(stored_msgs[i]);
}
num_stored_msgs = 0;
}