1 |
|
/* |
2 |
< |
* ircd-hybrid: an advanced Internet Relay Chat Daemon(ircd). |
3 |
< |
* s_log.h: A header for the logger functions. |
2 |
> |
* ircd-hybrid: an advanced, lightweight Internet Relay Chat Daemon (ircd) |
3 |
|
* |
4 |
< |
* Copyright (C) 2002 by the past and present ircd coders, and others. |
4 |
> |
* Copyright (c) 1997-2015 ircd-hybrid development team |
5 |
|
* |
6 |
|
* This program is free software; you can redistribute it and/or modify |
7 |
|
* it under the terms of the GNU General Public License as published by |
15 |
|
* |
16 |
|
* You should have received a copy of the GNU General Public License |
17 |
|
* along with this program; if not, write to the Free Software |
18 |
< |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 |
18 |
> |
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 |
19 |
|
* USA |
20 |
< |
* |
21 |
< |
* $Id: s_log.h,v 7.21 2005/09/05 18:49:43 db Exp $ |
20 |
> |
*/ |
21 |
> |
|
22 |
> |
/*! \file log.h |
23 |
> |
* \brief A header for the logger functions. |
24 |
> |
* \version $Id$ |
25 |
|
*/ |
26 |
|
|
27 |
|
#ifndef INCLUDED_s_log_h |
28 |
|
#define INCLUDED_s_log_h |
29 |
|
|
30 |
< |
struct Client; |
29 |
< |
|
30 |
< |
#define L_CRIT 0 |
31 |
< |
#define L_ERROR 1 |
32 |
< |
#define L_WARN 2 |
33 |
< |
#define L_NOTICE 3 |
34 |
< |
#define L_TRACE 4 |
35 |
< |
#define L_INFO 5 |
36 |
< |
#define L_DEBUG 6 |
37 |
< |
|
38 |
< |
extern void init_log(const char *); |
39 |
< |
extern void reopen_log(const char *); |
40 |
< |
extern void set_log_level(const int); |
41 |
< |
extern int get_log_level(void); |
42 |
< |
#ifdef __GNUC__ |
43 |
< |
extern void ilog(const int, const char *, ...) __attribute__((format(printf, 2, 3))); |
44 |
< |
#else |
45 |
< |
extern void ilog(const int, const char *, ...); |
46 |
< |
#endif |
47 |
< |
extern const char *get_log_level_as_string(int); |
48 |
< |
extern void log_user_exit(struct Client *); |
49 |
< |
extern void log_oper_action(int type, const struct Client *, const char *, ...); |
30 |
> |
enum { LOG_BUFSIZE = 1024 }; |
31 |
|
|
32 |
< |
enum { |
33 |
< |
LOG_OPER_TYPE, |
34 |
< |
LOG_FAILED_OPER_TYPE, |
35 |
< |
LOG_KLINE_TYPE, |
36 |
< |
LOG_RKLINE_TYPE, |
37 |
< |
LOG_TEMP_KLINE_TYPE, |
38 |
< |
LOG_DLINE_TYPE, |
39 |
< |
LOG_TEMP_DLINE_TYPE, |
40 |
< |
LOG_GLINE_TYPE, |
41 |
< |
LOG_KILL_TYPE, |
42 |
< |
LOG_OPERSPY_TYPE, |
43 |
< |
LOG_IOERR_TYPE |
32 |
> |
enum log_type |
33 |
> |
{ |
34 |
> |
LOG_TYPE_IRCD, |
35 |
> |
LOG_TYPE_KILL, |
36 |
> |
LOG_TYPE_KLINE, |
37 |
> |
LOG_TYPE_DLINE, |
38 |
> |
LOG_TYPE_XLINE, |
39 |
> |
LOG_TYPE_RESV, |
40 |
> |
LOG_TYPE_OPER, |
41 |
> |
LOG_TYPE_USER, |
42 |
> |
LOG_TYPE_DEBUG, |
43 |
> |
LOG_TYPE_LAST |
44 |
|
}; |
45 |
|
|
46 |
+ |
extern void log_set_file(enum log_type, size_t, const char *); |
47 |
+ |
extern void log_del_all(void); |
48 |
+ |
extern void log_reopen_all(void); |
49 |
+ |
extern void ilog(enum log_type, const char *, ...) AFP(2,3); |
50 |
|
#endif /* INCLUDED_s_log_h */ |