IXP425开发工具

源代码在线查看: syslog.h

软件大小: 1953 K
上传用户: jiangleip531
关键词: IXP 425 开发工具
下载地址: 免注册下载 普通下载 VIP

相关代码

				/* $Id: syslog.h,v 1.3 2003/03/14 08:28:56 chris_reid Exp $ */				/* -/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/				 . Copyright (c) 2001 Michael Davis 				 . All rights reserved.				 .				 . Redistribution and use in source and binary forms, with or without				 . modification, are permitted provided that the following conditions				 . are met:				 .				 . 1. Redistributions of source code must retain the above copyright				 .    notice, this list of conditions and the following disclaimer.				 .				 . 2. Redistributions in binary form must reproduce the above copyright				 .    notice, this list of conditions and the following disclaimer in the				 .    documentation and/or other materials provided with the distribution.				 .				 . 3. The name of author may not be used to endorse or promote products				 .    derived from this software without specific prior written permission.				 .				 . THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,				 . INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY				 . AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL				 . THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,				 . EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,				 . PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;				 . OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,				 . WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR				 . OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF				 . ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.				 . -\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\ */				 				/*	$OpenBSD: syslog.h,v 1.5 1998/02/10 18:41:57 deraadt Exp $	*/				/*	$NetBSD: syslog.h,v 1.14 1996/04/03 20:46:44 christos Exp $	*/								/*				 * Copyright (c) 1982, 1986, 1988, 1993				 *	The Regents of the University of California.  All rights reserved.				 *				 * Redistribution and use in source and binary forms, with or without				 * modification, are permitted provided that the following conditions				 * are met:				 * 1. Redistributions of source code must retain the above copyright				 *    notice, this list of conditions and the following disclaimer.				 * 2. Redistributions in binary form must reproduce the above copyright				 *    notice, this list of conditions and the following disclaimer in the				 *    documentation and/or other materials provided with the distribution.				 * 3. All advertising materials mentioning features or use of this software				 *    must display the following acknowledgement:				 *	This product includes software developed by the University of				 *	California, Berkeley and its contributors.				 * 4. Neither the name of the University nor the names of its contributors				 *    may be used to endorse or promote products derived from this software				 *    without specific prior written permission.				 *				 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND				 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE				 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE				 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE				 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL				 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS				 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)				 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT				 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY				 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF				 * SUCH DAMAGE.				 *				 *	@(#)syslog.h	8.1 (Berkeley) 6/2/93				 */								#define	_PATH_LOG	"/dev/log"								/*				 * priorities/facilities are encoded into a single 32-bit quantity, where the				 * bottom 3 bits are the priority (0-7) and the top 28 bits are the facility				 * (0-big number).  Both the priorities and the facilities map roughly				 * one-to-one to strings in the syslogd(8) source code.  This mapping is				 * included in this file.				 *				 * priorities (these are ordered)				 */				#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 */								#define	LOG_PRIMASK	0x07	/* mask to extract priority part (internal) */								/* extract priority */				#define	LOG_PRI(p)	((p) & LOG_PRIMASK)				#define	LOG_MAKEPRI(fac, pri)	(((fac) 								#ifdef SYSLOG_NAMES				#define	INTERNAL_NOPRI	0x10	/* the "no priority" priority */								/* mark "facility" */				#define	INTERNAL_MARK	LOG_MAKEPRI(LOG_NFACILITIES, 0)				typedef struct _code {					char	*c_name;					int	c_val;				} CODE;								CODE prioritynames[] = {					{ "alert",	LOG_ALERT },					{ "crit",	LOG_CRIT },					{ "debug",	LOG_DEBUG },					{ "emerg",	LOG_EMERG },					{ "err",	LOG_ERR },					{ "error",	LOG_ERR },		/* DEPRECATED */					{ "info",	LOG_INFO },					{ "none",	INTERNAL_NOPRI },	/* INTERNAL */					{ "notice",	LOG_NOTICE },					{ "panic", 	LOG_EMERG },		/* DEPRECATED */					{ "warn",	LOG_WARNING },		/* DEPRECATED */					{ "warning",	LOG_WARNING },					{ NULL,		-1 },				};				#endif								/* facility codes */				#define	LOG_KERN	(0				#define	LOG_USER	(1				#define	LOG_MAIL	(2				#define	LOG_DAEMON	(3				#define	LOG_AUTH	(4				#define	LOG_SYSLOG	(5				#define	LOG_LPR		(6				#define	LOG_NEWS	(7				#define	LOG_UUCP	(8				#define	LOG_CRON	(9				#define	LOG_AUTHPRIV	(10				#define	LOG_FTP		(11									/* other codes through 15 reserved for system use */				#define	LOG_LOCAL0	(16				#define	LOG_LOCAL1	(17				#define	LOG_LOCAL2	(18				#define	LOG_LOCAL3	(19				#define	LOG_LOCAL4	(20				#define	LOG_LOCAL5	(21				#define	LOG_LOCAL6	(22				#define	LOG_LOCAL7	(23								#define	LOG_NFACILITIES	24	/* current number of facilities */				#define	LOG_FACMASK	0x03f8	/* mask to extract facility part */								/* facility of pri */				#define	LOG_FAC(p)	(((p) & LOG_FACMASK) >> 3)								#ifdef SYSLOG_NAMES				CODE facilitynames[] = {					{ "auth",	LOG_AUTH },					{ "authpriv",	LOG_AUTHPRIV },					{ "cron", 	LOG_CRON },					{ "daemon",	LOG_DAEMON },					{ "ftp",	LOG_FTP },					{ "kern",	LOG_KERN },					{ "lpr",	LOG_LPR },					{ "mail",	LOG_MAIL },					{ "mark", 	INTERNAL_MARK },	/* INTERNAL */					{ "news",	LOG_NEWS },					{ "security",	LOG_AUTH },		/* DEPRECATED */					{ "syslog",	LOG_SYSLOG },					{ "user",	LOG_USER },					{ "uucp",	LOG_UUCP },					{ "local0",	LOG_LOCAL0 },					{ "local1",	LOG_LOCAL1 },					{ "local2",	LOG_LOCAL2 },					{ "local3",	LOG_LOCAL3 },					{ "local4",	LOG_LOCAL4 },					{ "local5",	LOG_LOCAL5 },					{ "local6",	LOG_LOCAL6 },					{ "local7",	LOG_LOCAL7 },					{ NULL,		-1 },				};				#endif								#ifdef _KERNEL				#define	LOG_PRINTF	-1	/* pseudo-priority to indicate use of printf */				#endif								/*				 * arguments to setlogmask.				 */				#define	LOG_MASK(pri)	(1 				#define	LOG_UPTO(pri)	((1 								/*				 * Option flags for openlog.				 *				 * LOG_ODELAY no longer does anything.				 * LOG_NDELAY is the inverse of what it used to be.				 */				#define	LOG_PID		0x01	/* log the pid with each message */				#define	LOG_CONS	0x02	/* log on the console if errors in sending */				#define	LOG_ODELAY	0x04	/* delay open until first syslog() (default) */				#define	LOG_NDELAY	0x08	/* don't delay open */				#define	LOG_NOWAIT	0x10	/* don't wait for console forks: DEPRECATED */				#define	LOG_PERROR	0x20	/* log to stderr as well */								#ifndef _KERNEL								/*				 * Don't use va_list in the vsyslog() prototype.   Va_list is typedef'd in two				 * places ( and ), so if we include one				 * of them here we may collide with the utility's includes.  It's unreasonable				 * for utilities to have to include one of them to include syslog.h, so we get				 * _BSD_VA_LIST_ from  and use it.				 */				#ifndef WIN32				#include 				#include 				#endif								#ifdef WIN32				void AddEventSource(char *);				void syslog(int, char *, ...);				void vsyslog(int, char *, va_list);				void openlog(char *, int, int);				unsigned long resolve_host(char *);				#else				__BEGIN_DECLS				void	closelog __P((void));				void	openlog __P((const char *, int, int));				int	setlogmask __P((int));				void	syslog __P((int, const char *, ...))				    __attribute__((__format__(__printf__,2,3)));				void	vsyslog __P((int, const char *, _BSD_VA_LIST_));				__END_DECLS				#endif								#else /* !_KERNEL */								void	logpri __P((int));				void	log __P((int, const char *, ...))				    __kprintf_attribute__((__format__(__kprintf__,2,3)));				int	addlog __P((const char *, ...))				    __kprintf_attribute__((__format__(__kprintf__,1,2)));				void	logwakeup __P((void));								#endif /* !_KERNEL */							

相关资源