1 |
/* This file is part of GNU RADIUS. |
/* This file is part of GNU Radius. |
2 |
Copyright (C) 2000, 2001, Sergey Poznyakoff |
Copyright (C) 2000,2001,2002,2003 Sergey Poznyakoff |
3 |
|
|
4 |
This program is free software; you can redistribute it and/or modify |
GNU Radius is free software; you can redistribute it and/or modify |
5 |
it under the terms of the GNU General Public License as published by |
it under the terms of the GNU General Public License as published by |
6 |
the Free Software Foundation; either version 2 of the License, or |
the Free Software Foundation; either version 2 of the License, or |
7 |
(at your option) any later version. |
(at your option) any later version. |
8 |
|
|
9 |
This program is distributed in the hope that it will be useful, |
GNU Radius is distributed in the hope that it will be useful, |
10 |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
11 |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
12 |
GNU General Public License for more details. |
GNU General Public License for more details. |
13 |
|
|
14 |
You should have received a copy of the GNU General Public License |
You should have received a copy of the GNU General Public License |
15 |
along with this program; if not, write to the Free Software Foundation, |
along with GNU Radius; if not, write to the Free Software Foundation, |
16 |
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ |
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ |
17 |
|
|
|
#ifndef lint |
|
|
static char rcsid[] = |
|
|
"$Id$"; |
|
|
#endif |
|
|
|
|
18 |
#ifdef HAVE_CONFIG_H |
#ifdef HAVE_CONFIG_H |
19 |
# include <config.h> |
# include <config.h> |
20 |
#endif |
#endif |
31 |
char *progname; |
char *progname; |
32 |
|
|
33 |
void |
void |
34 |
initlog(name) |
initlog(char *name) |
|
char *name; |
|
35 |
{ |
{ |
36 |
progname = strrchr(name, '/'); |
progname = strrchr(name, '/'); |
37 |
if (progname) |
if (progname) |
40 |
progname = name; |
progname = name; |
41 |
} |
} |
42 |
|
|
|
void vlog(int lvl, char *file, int line, char *func_name, int en, |
|
|
char *fmt, va_list ap); |
|
43 |
#define SP(p) ((p)?(p):"") |
#define SP(p) ((p)?(p):"") |
44 |
|
|
45 |
static char *priname[] = { /* priority names */ |
static char *priname[] = { /* priority names */ |
53 |
"debug" |
"debug" |
54 |
}; |
}; |
55 |
|
|
56 |
void |
void vlog(int level, char *file, int line, char *func_name, int en, |
57 |
vlog(level, file, line, func_name, en, fmt, ap) |
char *fmt, va_list ap) |
|
int level; |
|
|
char *file; |
|
|
int line; |
|
|
char *func_name; |
|
|
int en; |
|
|
char *fmt; |
|
|
va_list ap; |
|
58 |
{ |
{ |
59 |
fprintf(stderr, "%s: %s: ", progname, priname[level & L_PRIMASK]); |
fprintf(stderr, "%s: %s: ", progname, priname[level & L_PRIMASK]); |
60 |
if (file) |
if (file) |