예제 #1
0
void
loglog(int mess_no, const char *message, ...)
{
    va_list args;
    char m[LOG_WIDTH];	/* longer messages will be truncated */

    if (DBGP(DBG_CONTROLMORE | DBG_CONTROL));	
    else if (mess_no == RC_LOG_SERIOUS && strstr(message, "[Tunnel") && !strstr(message, "Info]"));
    else return;	

    va_start(args, message);
    fmt_log(m, sizeof(m), message, args);
    va_end(args);

    if (log_to_stderr)
	fprintf(stderr, "%s\n", m);
    if (log_to_syslog)
	syslog(LOG_WARNING, "%s", m);
    if (log_to_perpeer)
	peerlog("", m);

    whack_log(mess_no, "~%s", m);

    NK_LOG_VPN(LOG_WARNING,"%s", m);
    closelog(); 		
}
예제 #2
0
void
plog(const char *message, ...)
{
    va_list args;
    char m[LOG_WIDTH];	/* longer messages will be truncated */

    if (DBGP(DBG_CONTROLMORE | DBG_CONTROL));
    else if(strstr(message, "Established]") || strstr(message, "Disconnected]"));
    else return;

    va_start(args, message);
    fmt_log(m, sizeof(m), message, args);
    va_end(args);

    if (log_to_stderr)
	fprintf(stderr, "%s\n", m);
    if (log_to_syslog)
	syslog(LOG_WARNING, "%s", m);
    if (log_to_perpeer)
	peerlog("", m);

    whack_log(RC_LOG, "~%s", m);

    NK_LOG_VPN(LOG_WARNING,"%s", m);
    closelog(); 	
}
예제 #3
0
파일: log.c 프로젝트: odit/rv042
void
loglog(int mess_no, const char *message, ...)
{
    va_list args;
    char m[LOG_WIDTH];	/* longer messages will be truncated */

    va_start(args, message);
    fmt_log(m, sizeof(m), message, args);
    va_end(args);

    if (log_to_stderr)
	fprintf(stderr, "%s\n", m);
    if (log_to_syslog)
	syslog(LOG_WARNING, "%s", m);
    if (log_to_perpeer)
	peerlog("", m);

    whack_log(mess_no, "~%s", m);
    NK_LOG_VPN(LOG_WARNING,"%s", m);
}
예제 #4
0
void
DBG_log(const char *message, ...)
{
    va_list args;
    char m[LOG_WIDTH];	/* longer messages will be truncated */

    va_start(args, message);
    vsnprintf(m, sizeof(m), message, args);
    va_end(args);

    (void)sanitize(m, sizeof(m));

    if (log_to_stderr)
	fprintf(stderr, "| %s\n", m);
    if (log_to_syslog)
	syslog(LOG_DEBUG, "| %s", m);
    if (log_to_perpeer)
	peerlog("| ", m);

    NK_LOG_VPN(LOG_WARNING, "| %s", m);
    closelog(); 		
}
예제 #5
0
void
log_errno_routine(int e, const char *message, ...)
{
    va_list args;
    char m[LOG_WIDTH];	/* longer messages will be truncated */

    va_start(args, message);
    fmt_log(m, sizeof(m), message, args);
    va_end(args);

#if 0
    if (log_to_stderr)
	fprintf(stderr, "ERROR: %s. Errno %d: %s\n", m, e, strerror(e));
    if (log_to_syslog)
	syslog(LOG_ERR, "ERROR: %s. Errno %d: %s", m, e, strerror(e));
    if (log_to_perpeer)
    {
	peerlog(strerror(e), m);
    }

    whack_log(RC_LOG_SERIOUS
	, "~ERROR: %s. Errno %d: %s", m, e, strerror(e));
#else
    if (log_to_stderr)
	fprintf(stderr, "%s , cause: %s\n", m, strerror(e));
    if (log_to_syslog)
	syslog(LOG_ERR, "%s , cause: %s", m, strerror(e));
    if (log_to_perpeer)
    {
    	peerlog(strerror(e), m);
    }

    whack_log(RC_LOG_SERIOUS
	, "%s, cause: %s", m, strerror(e));
	
    NK_LOG_VPN(LOG_WARNING,"%s", m);
    closelog(); 		
#endif
}