void write_to_daemoncore_pipe(const char* fmt, ... ) { if( vmgahp_stdout_pipe == -1 ) { return; } MyString output; va_list args; va_start(args, fmt); output.vsprintf(fmt, args); write_to_daemoncore_pipe(vmgahp_stdout_pipe, output.Value(), output.Length()); va_end(args); }
void vmprintf( int flags, const char *fmt, ... ) { int saved_flags = 0; static pid_t mypid = 0; if( !mypid ) { mypid = daemonCore->getpid(); } if( !fmt ) { return; } if( !(flags & oriDebugFlags) ) { return; } saved_flags = oriDebugFlags; /* Limit recursive calls */ oriDebugFlags = 0; MyString output; va_list args; va_start(args, fmt); output.vsprintf(fmt, args); va_end(args); if( output.IsEmpty() ) { oriDebugFlags = saved_flags; return; } if( Termlog ) { if( (vmgahp_mode == VMGAHP_TEST_MODE) || (vmgahp_mode == VMGAHP_KILL_MODE) ) { fprintf(stderr, "VMGAHP[%d]: %s", (int)mypid, output.Value()); oriDebugFlags = saved_flags; return; } if( (vmgahp_stderr_tid != -1 ) && (vmgahp_stderr_pipe != -1 )) { vmgahp_stderr_buffer.Write(output.Value()); daemonCore->Reset_Timer(vmgahp_stderr_tid, 0, 2); } }else { dprintf(flags, "VMGAHP[%d]: %s", (int)mypid, output.Value()); } oriDebugFlags = saved_flags; }