* $Source: /usr/src/kerberosIV/krb/RCS/log.c,v $
* Copyright 1985, 1986, 1987, 1988 by the Massachusetts Institute
* For copying and distribution information, please see the file
static char *rcsid_log_c
=
"$Header: /usr/src/kerberosIV/krb/RCS/log.c,v 4.8 90/06/25 20:56:49 kfall Exp $";
#include <mit-copyright.h>
static char *log_name
= KRBLOG
;
* This file contains three logging routines: set_logfile()
* to determine the file that log entries should be written to;
* and log() and new_log() to write log entries to the file.
* log() is used to add entries to the logfile (see set_logfile()
* below). Note that it is probably not portable since it makes
* assumptions about what the compiler will do when it is called
* with less than the correct number of arguments which is the
* way it is usually called.
* The log entry consists of a timestamp and the given arguments
* printed according to the given "format".
* The log file is opened and closed for each log entry.
* The return value is undefined.
void log(format
,a1
,a2
,a3
,a4
,a5
,a6
,a7
,a8
,a9
,a0
)
int a1
,a2
,a3
,a4
,a5
,a6
,a7
,a8
,a9
,a0
;
if ((logfile
= fopen(log_name
,"a")) == NULL
)
fprintf(logfile
,"%2d-%s-%02d %02d:%02d:%02d ",tm
->tm_mday
,
month_sname(tm
->tm_mon
+ 1),tm
->tm_year
,
tm
->tm_hour
, tm
->tm_min
, tm
->tm_sec
);
fprintf(logfile
,format
,a1
,a2
,a3
,a4
,a5
,a6
,a7
,a8
,a9
,a0
);
* set_logfile() changes the name of the file to which
* messages are logged. If set_logfile() is not called,
* the logfile defaults to KRBLOG, defined in "krb.h".
* new_log() appends a log entry containing the give time "t" and the
* string "string" to the logfile (see set_logfile() above). The file
* is opened once and left open. The routine returns 1 on failure, 0
if ((logfile
= fopen(log_name
,"a")) == NULL
) return(1);
fprintf(logfile
,"\n%2d-%s-%02d %02d:%02d:%02d %s",tm
->tm_mday
,
month_sname(tm
->tm_mon
+ 1),tm
->tm_year
,
tm
->tm_hour
, tm
->tm_min
, tm
->tm_sec
, string
);
fprintf(logfile
,"\n%20s%s","",string
);