⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 snmp_logging.h

📁 net_snmp应用程序示例
💻 H
字号:
#ifndef SNMP_LOGGING_H#define SNMP_LOGGING_H#ifdef __cplusplusextern          "C" {#endif#if HAVE_SYSLOG_H#include <syslog.h>#endif#if HAVE_STDARG_H#include <stdarg.h>#else#include <varargs.h>#endif#ifndef LOG_ERR#define LOG_EMERG       0       /* system is unusable */#define LOG_ALERT       1       /* action must be taken immediately */#define LOG_CRIT        2       /* critical conditions */#define LOG_ERR         3       /* error conditions */#define LOG_WARNING     4       /* warning conditions */#define LOG_NOTICE      5       /* normal but significant condition */#define LOG_INFO        6       /* informational */#define LOG_DEBUG       7       /* debug-level messages */#endif    struct snmp_log_message {        int             priority;        const char     *msg;    };#ifndef DEFAULT_LOG_ID#define DEFAULT_LOG_ID "net-snmp"#endif    void            init_snmp_logging(void);    int             snmp_get_do_logging(void);    void            snmp_disable_syslog(void);    void            snmp_disable_filelog(void);    void            snmp_disable_stderrlog(void);    void            snmp_disable_calllog(void);    void            snmp_disable_log(void);    void            snmp_enable_syslog(void);    void            snmp_enable_syslog_ident(const char *ident,                                             const int   facility);    void            snmp_enable_filelog(const char *logfilename,                                        int dont_zero_log);    void            snmp_enable_stderrlog(void);    void            snmp_enable_calllog(void);    int             snmp_stderrlog_status(void);#if HAVE_STDARG_H# if !defined(__GNUC__) || __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 8)    int             snmp_log(int priority, const char *format, ...);# else    int             snmp_log(int priority, const char *format, ...)                    	__attribute__ ((__format__ (__printf__, 2, 3)));# endif#else    int             snmp_log(va_alist);#endif    int             snmp_vlog(int priority, const char *format,                              va_list ap);    /*     * 0 - successful message formatting      */    /*     * -1 - Could not format log-string      */    /*     * -2 - Could not allocate memory for log-message      */    /*     * -3 - Log-message too long!      */    void            snmp_log_perror(const char *s);#define NETSNMP_LOGHANDLER_STDOUT	1#define NETSNMP_LOGHANDLER_STDERR	2#define NETSNMP_LOGHANDLER_FILE		3#define NETSNMP_LOGHANDLER_SYSLOG	4#define NETSNMP_LOGHANDLER_CALLBACK	5#define NETSNMP_LOGHANDLER_NONE		6    int snmp_log_options(char *optarg, int argc, char *const *argv);    void snmp_log_options_usage(const char *lead, FILE *outf);    char *snmp_log_syslogname(const char *syslogname);    typedef struct netsnmp_log_handler_s netsnmp_log_handler;     typedef int (NetsnmpLogHandler)(netsnmp_log_handler*, int, const char *);    NetsnmpLogHandler log_handler_stdouterr;    NetsnmpLogHandler log_handler_file;    NetsnmpLogHandler log_handler_syslog;    NetsnmpLogHandler log_handler_callback;    NetsnmpLogHandler log_handler_null;    struct netsnmp_log_handler_s {        int	enabled;        int	priority;        int	pri_max;        int	type;	const char *token;		/* Also used for filename */	NetsnmpLogHandler	*handler;	int     imagic;		/* E.g. file descriptor, syslog facility */	void   *magic;		/* E.g. Callback function */	netsnmp_log_handler	*next, *prev;    };netsnmp_log_handler *get_logh_head( void );netsnmp_log_handler *netsnmp_register_loghandler( int type, int pri );netsnmp_log_handler *netsnmp_find_loghandler( const char *token );int netsnmp_add_loghandler(    netsnmp_log_handler *logh );int netsnmp_remove_loghandler( netsnmp_log_handler *logh );int netsnmp_enable_loghandler( const char *token );int netsnmp_disable_loghandler( const char *token );void netsnmp_logging_restart(void);#ifdef __cplusplus}#endif#endif                          /* SNMP_LOGGING_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -