[BACK]Return to logerr.h CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / external / bsd / dhcpcd / dist / src

Annotation of src/external/bsd/dhcpcd/dist/src/logerr.h, Revision 1.1.1.3.2.1

1.1       roy         1: /*
                      2:  * logerr: errx with logging
1.1.1.3.2.1! pgoyette    3:  * Copyright (c) 2006-2019 Roy Marples <roy@marples.name>
1.1       roy         4:  * All rights reserved
                      5:
                      6:  * Redistribution and use in source and binary forms, with or without
                      7:  * modification, are permitted provided that the following conditions
                      8:  * are met:
                      9:  * 1. Redistributions of source code must retain the above copyright
                     10:  *    notice, this list of conditions and the following disclaimer.
                     11:  * 2. Redistributions in binary form must reproduce the above copyright
                     12:  *    notice, this list of conditions and the following disclaimer in the
                     13:  *    documentation and/or other materials provided with the distribution.
                     14:  *
                     15:  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
                     16:  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     17:  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     18:  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
                     19:  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     20:  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     21:  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     22:  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     23:  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     24:  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     25:  * SUCH DAMAGE.
                     26:  */
                     27:
                     28: #ifndef LOGERR_H
                     29: #define LOGERR_H
                     30:
                     31: #include <sys/param.h>
                     32:
                     33: #ifndef __printflike
                     34: #if __GNUC__ > 2 || defined(__INTEL_COMPILER)
                     35: #define        __printflike(a, b) __attribute__((format(printf, a, b)))
                     36: #else
1.1.1.3   roy        37: #define        __printflike(a, b)
1.1       roy        38: #endif
                     39: #endif /* !__printflike */
                     40:
                     41: __printflike(1, 2) typedef void logfunc_t(const char *, ...);
                     42:
                     43: __printflike(1, 2) void logdebug(const char *, ...);
                     44: __printflike(1, 2) void logdebugx(const char *, ...);
                     45: __printflike(1, 2) void loginfo(const char *, ...);
                     46: __printflike(1, 2) void loginfox(const char *, ...);
                     47: __printflike(1, 2) void logwarn(const char *, ...);
                     48: __printflike(1, 2) void logwarnx(const char *, ...);
                     49: __printflike(1, 2) void logerr(const char *, ...);
                     50: #define        LOGERROR        logerr("%s: %d", __FILE__, __LINE__)
                     51: __printflike(1, 2) void logerrx(const char *, ...);
                     52:
                     53: void logsetopts(unsigned int);
                     54: #define        LOGERR_DEBUG    (1U << 6)
                     55: #define        LOGERR_QUIET    (1U << 7)
                     56: #define        LOGERR_LOG      (1U << 11)
                     57: #define        LOGERR_LOG_DATE (1U << 12)
                     58: #define        LOGERR_LOG_HOST (1U << 13)
                     59: #define        LOGERR_LOG_TAG  (1U << 14)
                     60: #define        LOGERR_LOG_PID  (1U << 15)
                     61: #define        LOGERR_ERR      (1U << 21)
                     62: #define        LOGERR_ERR_DATE (1U << 22)
                     63: #define        LOGERR_ERR_HOST (1U << 23)
                     64: #define        LOGERR_ERR_TAG  (1U << 24)
                     65: #define        LOGERR_ERR_PID  (1U << 25)
                     66:
                     67: /* To build tag support or not. */
                     68: //#define      LOGERR_TAG
                     69: #if defined(LOGERR_TAG)
                     70: void logsettag(const char *);
                     71: #endif
                     72:
                     73: int logopen(const char *);
                     74: void logclose(void);
                     75: int logreopen(void);
                     76:
                     77: #endif

CVSweb <webmaster@jp.NetBSD.org>