Annotation of embedaddon/mpd/src/log.h, revision 1.1.1.2

1.1       misho       1: 
                      2: /*
                      3:  * log.h
                      4:  *
                      5:  * Written by Toshiharu OHNO <tony-o@iij.ad.jp>
                      6:  * Copyright (c) 1993, Internet Initiative Japan, Inc. All rights reserved.
                      7:  * See ``COPYRIGHT.iij''
                      8:  * 
                      9:  * Rewritten by Archie Cobbs <archie@freebsd.org>
                     10:  * Copyright (c) 1995-1999 Whistle Communications, Inc. All rights reserved.
                     11:  * See ``COPYRIGHT.whistle''
                     12:  */
                     13: 
                     14: #ifndef _LG_H_
                     15: #define        _LG_H_
                     16: 
1.1.1.2 ! misho      17: #include "mbuf.h"
        !            18: 
        !            19: #include <stdio.h>
        !            20: 
1.1       misho      21: /*
                     22:  * DEFINITIONS
                     23:  */
                     24: 
                     25:   enum
                     26:   {
                     27:     LG_I_ALWAYS = 0,
                     28:     LG_I_BUND,
                     29:     LG_I_BUND2,
                     30:     LG_I_LINK,
                     31:     LG_I_REP,
                     32:     LG_I_CHAT,
                     33:     LG_I_CHAT2,
                     34:     LG_I_IFACE,
                     35:     LG_I_IFACE2,
                     36:     LG_I_LCP,
                     37:     LG_I_LCP2,
                     38:     LG_I_AUTH,
                     39:     LG_I_AUTH2,
                     40:     LG_I_IPCP,
                     41:     LG_I_IPCP2,
                     42:     LG_I_IPV6CP,
                     43:     LG_I_IPV6CP2,
                     44:     LG_I_CCP,
                     45:     LG_I_CCP2,
                     46:     LG_I_ECP,
                     47:     LG_I_ECP2,
                     48:     LG_I_FSM,
                     49:     LG_I_ECHO,
                     50:     LG_I_PHYS,
                     51:     LG_I_PHYS2,
                     52:     LG_I_PHYS3,
                     53:     LG_I_FRAME,
                     54:     LG_I_RADIUS,
                     55:     LG_I_RADIUS2,
                     56:     LG_I_CONSOLE,
                     57:     LG_I_EVENTS
                     58:   };
                     59: 
                     60: /* Definition of log options */
                     61: 
                     62:   #define LG_BUND              (1 << LG_I_BUND)
                     63:   #define LG_BUND2             (1 << LG_I_BUND2)
                     64:   #define LG_LINK              (1 << LG_I_LINK)
                     65:   #define LG_REP               (1 << LG_I_REP)
                     66:   #define LG_CHAT              (1 << LG_I_CHAT)
                     67:   #define LG_CHAT2             (1 << LG_I_CHAT2)
                     68:   #define LG_IFACE             (1 << LG_I_IFACE)
                     69:   #define LG_IFACE2            (1 << LG_I_IFACE2)
                     70:   #define LG_LCP               (1 << LG_I_LCP)
                     71:   #define LG_LCP2              (1 << LG_I_LCP2)
                     72:   #define LG_AUTH              (1 << LG_I_AUTH)
                     73:   #define LG_AUTH2             (1 << LG_I_AUTH2)
                     74:   #define LG_IPCP              (1 << LG_I_IPCP)
                     75:   #define LG_IPCP2             (1 << LG_I_IPCP2)
                     76:   #define LG_IPV6CP            (1 << LG_I_IPV6CP)
                     77:   #define LG_IPV6CP2           (1 << LG_I_IPV6CP2)
                     78:   #define LG_CCP               (1 << LG_I_CCP)
                     79:   #define LG_CCP2              (1 << LG_I_CCP2)
                     80:   #define LG_ECP               (1 << LG_I_ECP)
                     81:   #define LG_ECP2              (1 << LG_I_ECP2)
                     82:   #define LG_FSM               (1 << LG_I_FSM)
                     83:   #define LG_ECHO              (1 << LG_I_ECHO)
                     84:   #define LG_PHYS              (1 << LG_I_PHYS)
                     85:   #define LG_PHYS2             (1 << LG_I_PHYS2)
                     86:   #define LG_PHYS3             (1 << LG_I_PHYS3)
                     87:   #define LG_FRAME             (1 << LG_I_FRAME)
                     88:   #define LG_RADIUS            (1 << LG_I_RADIUS)
                     89:   #define LG_RADIUS2           (1 << LG_I_RADIUS2)
                     90:   #define LG_CONSOLE           (1 << LG_I_CONSOLE)
                     91:   #define LG_ALWAYS            (1 << LG_I_ALWAYS)
                     92:   #define LG_EVENTS            (1 << LG_I_EVENTS)
                     93: 
                     94:   #define LG_ERR               (LG_ALWAYS)
                     95: 
                     96: /* Default options at startup */
                     97: 
                     98:   #define LG_DEFAULT_OPT       (0                      \
                     99:                                | LG_BUND               \
                    100:                                | LG_LINK               \
                    101:                                | LG_REP                \
                    102:                                | LG_IFACE              \
                    103:                                | LG_CONSOLE            \
                    104:                                | LG_CHAT               \
                    105:                                | LG_LCP                \
                    106:                                | LG_IPCP               \
                    107:                                | LG_IPV6CP             \
                    108:                                | LG_CCP                \
                    109:                                | LG_ECP                \
                    110:                                | LG_AUTH               \
                    111:                                | LG_RADIUS             \
                    112:                                | LG_FSM                \
                    113:                                | LG_PHYS               \
                    114:                                )
                    115: 
                    116:   #define Log(lev, args)       do {                            \
                    117:                                  if (gLogOptions & (lev))      \
                    118:                                    LogPrintf args;             \
                    119:                                } while (0)
                    120: 
                    121:   #define Log2(lev, args)      do {                            \
                    122:                                  if (gLogOptions & (lev))      \
                    123:                                    LogPrintf2 args;            \
                    124:                                } while (0)
                    125: 
                    126:   #define LogDumpBuf(lev, buf, len, fmt, args...) do {         \
                    127:                                  if (gLogOptions & (lev))      \
                    128:                                    LogDumpBuf2(buf, len, fmt, ##args); \
                    129:                                } while (0)
                    130: 
                    131:   #define LogDumpBp(lev, bp, fmt, args...) do {                        \
                    132:                                  if (gLogOptions & (lev))      \
                    133:                                    LogDumpBp2(bp, fmt, ##args);\
                    134:                                } while (0)
                    135: 
                    136: /*
                    137:  * VARIABLES
                    138:  */
                    139: 
                    140:   extern int   gLogOptions;
                    141: #ifdef SYSLOG_FACILITY
                    142:   extern char  gSysLogIdent[32];
                    143: #endif
                    144: 
                    145: /*
                    146:  * FUNCTIONS
                    147:  */
                    148: 
                    149:   extern int   LogOpen(void);
                    150:   extern void  LogClose(void);
                    151:   extern void  LogPrintf(const char *fmt, ...) __printflike(1, 2);
                    152:   extern void  vLogPrintf(const char *fmt, va_list args);
                    153:   extern void  LogPrintf2(const char *fmt, ...) __printflike(1, 2);
1.1.1.2 ! misho     154:   extern int   LogCommand(Context ctx, int ac, const char *const av[], const void *arg);
1.1       misho     155:   extern void  LogDumpBuf2(const u_char *buf, int len,
                    156:                        const char *fmt, ...) __printflike(3, 4);
                    157:   extern void  LogDumpBp2(Mbuf bp, const char *fmt, ...)
                    158:                        __printflike(2, 3);
                    159:   extern void  Perror(const char *fmt, ...) __printflike(1, 2);
                    160: 
                    161: #endif
                    162: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>