X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=include%2Fgw-log.h;h=d2f10f28eb9fe72b4c62c14cb4c2ec55de7e8208;hb=373495ef158d123d95ab44465d4249e65847492b;hp=27c123673bd93e5fe252d9855489315705c87be3;hpb=8467171ebdb5f018740de8d82149c8ccc53d2815;p=egate.git diff --git a/include/gw-log.h b/include/gw-log.h index 27c1236..d2f10f2 100644 --- a/include/gw-log.h +++ b/include/gw-log.h @@ -1,10 +1,72 @@ /* - * gw-log.h: Logging facilities. + * Copyright (c) 1995, the EUROPAGATE consortium (see below). + * + * The EUROPAGATE consortium members are: + * + * University College Dublin + * Danmarks Teknologiske Videnscenter + * An Chomhairle Leabharlanna + * Consejo Superior de Investigaciones Cientificas + * + * Permission to use, copy, modify, distribute, and sell this software and + * its documentation, in whole or in part, for any purpose, is hereby granted, + * provided that: + * + * 1. This copyright and permission notice appear in all copies of the + * software and its documentation. Notices of copyright or attribution + * which appear at the beginning of any file must remain unchanged. + * + * 2. The names of EUROPAGATE or the project partners may not be used to + * endorse or promote products derived from this software without specific + * prior written permission. + * + * 3. Users of this software (implementors and gateway operators) agree to + * inform the EUROPAGATE consortium of their use of the software. This + * information will be used to evaluate the EUROPAGATE project and the + * software, and to plan further developments. The consortium may use + * the information in later publications. + * + * 4. Users of this software agree to make their best efforts, when + * documenting their use of the software, to acknowledge the EUROPAGATE + * consortium, and the role played by the software in their work. + * + * THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT WARRANTY OF ANY KIND, + * EXPRESS, IMPLIED, OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY + * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + * IN NO EVENT SHALL THE EUROPAGATE CONSORTIUM OR ITS MEMBERS BE LIABLE + * FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF + * ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA + * OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND + * ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * USE OR PERFORMANCE OF THIS SOFTWARE. + * + */ + +/* + * Logging facilities. * * Europagate, 1994-1995. * * $Log: gw-log.h,v $ - * Revision 1.3 1995/02/23 08:32:11 adam + * Revision 1.9 1995/12/01 12:41:00 adam + * Bug fix. + * + * Revision 1.8 1995/12/01 12:24:14 adam + * New function: gw_log_mask_str. + * + * Revision 1.7 1995/05/16 09:39:39 adam + * LICENSE. + * + * Revision 1.6 1995/03/30 07:32:42 adam + * New log-level: GW_LOG_NOTICE. New 2709 function: iso2709_mk. + * + * Revision 1.5 1995/03/28 07:52:35 adam + * Bug fix: Bad log masks. + * + * Revision 1.4 1995/03/27 12:50:40 adam + * New level: GW_LOG_ERRNO. + * + * Revision 1.3 1995/02/23 08:32:11 adam * Changed header. * * Revision 1.1.1.1 1995/02/09 17:27:12 adam @@ -18,19 +80,21 @@ /* The log level is an unsigned integer value with at least 16 bits */ /* The log levels are defined below */ -#define GW_LOG_FATAL 0x01 -#define GW_LOG_WARN 0x02 -#define GW_LOG_ACCT 0x04 -#define GW_LOG_STAT 0x08 +#define GW_LOG_FATAL 0x01 +#define GW_LOG_WARN 0x02 +#define GW_LOG_ACCT 0x04 +#define GW_LOG_STAT 0x08 +#define GW_LOG_ERRNO 0x10 +#define GW_LOG_NOTICE 0x20 /* All debug levels */ -#define GW_LOG_DEBUG 0xfff0 -/* Individual debug levels, x sould be in range 0-11 */ -#define GW_LOG_DEBUGN(x) (0x10<<(x)) +#define GW_LOG_DEBUG 0xffc0 +/* Individual debug levels, x sould be in range 0-9 */ +#define GW_LOG_DEBUGN(x) (0x40<<(x)) /* All levels on / All levels except debugging */ -#define GW_LOG_ALL 0xffff -#define GW_LOG_DEFAULT 0x0f +#define GW_LOG_ALL 0xffef +#define GW_LOG_DEFAULT 0x2f void gw_log_init (const char *app_name); /* @@ -82,20 +146,39 @@ int gw_log (unsigned level, const char *event_type, const char *format, ...); This function returns 0 on success; -1 on failure. */ +unsigned gw_log_mask_str (const char *str); +/* + Return the log level corresponding to str. + str is a comma separated sequence of tokens. A token is one of: + "all", "default", "def", "fatal", "warn", "stat", "notice", "debug", + "none" or "debug" where n is 0..9. + The level of each token are ORed with initial level being GW_LOG_DEFAULT + unless first token is "none" in which case the initial level is 0 (none). + */ + + char *gw_strdup (const char *s); /* - Works as strdup, which is not defined by ANSI. + Works as strdup(3s), which is not defined by ANSI. */ /* log file format: - +