X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=src%2Frmr%2Fcommon%2Fsrc%2Flogging.c;h=65fb7458ae3311a54e7e742dde3cc467195f278e;hb=5ec64c5253b3b7611ec69cc1487989fae45eca26;hp=0105391f6789f535032494ad0fbf25ee9c4900d4;hpb=0d4def6c7b673f3be486338ced65ccdd25a859ed;p=ric-plt%2Flib%2Frmr.git diff --git a/src/rmr/common/src/logging.c b/src/rmr/common/src/logging.c index 0105391..65fb745 100644 --- a/src/rmr/common/src/logging.c +++ b/src/rmr/common/src/logging.c @@ -145,7 +145,11 @@ extern void rmr_vlog( int write_level, char* fmt, ... ) { write_level = RMR_VL_DEBUG; } + memset( msg, 0, sizeof( msg ) ); // logging is slow; this ensures 0 term if msg is too large hlen = snprintf( msg, sizeof( msg ), "%ld %d/RMR [%s] ", (long) time( NULL ), log_pid, log_situations[write_level] ); + if( hlen > sizeof( msg ) - 1024 ) { // should never happen, but be parinoid + return; + } body = msg + hlen; va_start( argp, fmt ); // suss out parm past fmt @@ -171,6 +175,10 @@ extern void rmr_vlog_force( int write_level, char* fmt, ... ) { rmr_vlog_init(); } + if( log_vlevel <= 0 ) { // can force if off completely to allow for total silience + return; + } + if( write_level > RMR_VL_DEBUG || write_level < 0 ) { write_level = RMR_VL_DEBUG; }