From: Guilherme Maciel Ferreira Date: Sun, 4 Sep 2011 11:50:48 +0000 (-0300) Subject: Solving two issues reported by PC-lint X-Git-Tag: v1.2~62 X-Git-Url: http://developer.intra2net.com/git/?a=commitdiff_plain;h=0b920e264d67ab5c56d0507654a0117f05028df5;p=pingcheck Solving two issues reported by PC-lint - Ignoring return value of function 'sigfillset(__sigset_t *)' - Declaration of symbol 'signal' hides symbol 'signal(int, void (*)(int))' --- diff --git a/src/main.cpp b/src/main.cpp index 0040f57..6518c73 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -164,10 +164,15 @@ void stop_pingers( void block_all_signals() { sigset_t all_signals; - sigfillset(&all_signals); + int result = sigfillset( &all_signals ); + if ( result == -1 ) { + GlobalLogger.error() << "Error: sigfillset failed." << endl; + } - if (sigprocmask(SIG_SETMASK, &all_signals, NULL) == -1) - throw runtime_error("Can't block signals"); + result = sigprocmask( SIG_SETMASK, &all_signals, NULL ); + if ( result == -1 ) { + throw runtime_error( "Can't block signals" ); + } } /** @@ -179,31 +184,39 @@ void handle_signals() { // Wait for signals sigset_t all_signals; - sigfillset(&all_signals); + int result = sigfillset( &all_signals ); + if ( result == -1 ) { + GlobalLogger.error() << "Error: sigfillset failed." << endl; + } // Synchronously process signals bool want_quit = false; - while (!want_quit) + while ( !want_quit ) { - int signal = 0; - int err = sigwait(&all_signals, &signal); + int signal_number = 0; + int err = sigwait( &all_signals, &signal_number ); if (!err) { - if (signal == SIGUSR1) + if ( signal_number == SIGUSR1 ) { int new_log_level = I2n::Logger::get_log_level()+1; I2n::Logger::set_log_level( new_log_level ); //lint !e534 GlobalLogger.info() << "Increased log level to " << new_log_level; - } else if (signal == SIGUSR2) + } + else if ( signal_number == SIGUSR2 ) { I2n::Logger::set_log_level( default_log_level ); //lint !e534 GlobalLogger.info() << "Reset log level to normal (" << default_log_level << ")"; - } else if (signal == SIGTERM || signal == SIGINT) + } + else if ( ( signal_number == SIGTERM ) || ( signal_number == SIGINT )) { want_quit = true; } - } else + } + else + { want_quit = true; + } } }