Annotation of embedaddon/ntp/lib/isc/unix/syslog.c, revision 1.1

1.1     ! misho       1: /*
        !             2:  * Copyright (C) 2004, 2005, 2007  Internet Systems Consortium, Inc. ("ISC")
        !             3:  * Copyright (C) 2001  Internet Software Consortium.
        !             4:  *
        !             5:  * Permission to use, copy, modify, and/or distribute this software for any
        !             6:  * purpose with or without fee is hereby granted, provided that the above
        !             7:  * copyright notice and this permission notice appear in all copies.
        !             8:  *
        !             9:  * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
        !            10:  * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
        !            11:  * AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
        !            12:  * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
        !            13:  * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
        !            14:  * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
        !            15:  * PERFORMANCE OF THIS SOFTWARE.
        !            16:  */
        !            17: 
        !            18: /* $Id: syslog.c,v 1.8 2007/09/13 04:45:18 each Exp $ */
        !            19: 
        !            20: /*! \file */
        !            21: 
        !            22: #include <config.h>
        !            23: 
        !            24: #include <stdlib.h>
        !            25: #include <syslog.h>
        !            26: 
        !            27: #include <isc/result.h>
        !            28: #include <isc/string.h>
        !            29: #include <isc/syslog.h>
        !            30: #include <isc/util.h>
        !            31: 
        !            32: static struct dsn_c_pvt_sfnt {
        !            33:        int val;
        !            34:        const char *strval;
        !            35: } facilities[] = {
        !            36:        { LOG_KERN,                     "kern" },
        !            37:        { LOG_USER,                     "user" },
        !            38:        { LOG_MAIL,                     "mail" },
        !            39:        { LOG_DAEMON,                   "daemon" },
        !            40:        { LOG_AUTH,                     "auth" },
        !            41:        { LOG_SYSLOG,                   "syslog" },
        !            42:        { LOG_LPR,                      "lpr" },
        !            43: #ifdef LOG_NEWS
        !            44:        { LOG_NEWS,                     "news" },
        !            45: #endif
        !            46: #ifdef LOG_UUCP
        !            47:        { LOG_UUCP,                     "uucp" },
        !            48: #endif
        !            49: #ifdef LOG_CRON
        !            50:        { LOG_CRON,                     "cron" },
        !            51: #endif
        !            52: #ifdef LOG_AUTHPRIV
        !            53:        { LOG_AUTHPRIV,                 "authpriv" },
        !            54: #endif
        !            55: #ifdef LOG_FTP
        !            56:        { LOG_FTP,                      "ftp" },
        !            57: #endif
        !            58:        { LOG_LOCAL0,                   "local0"},
        !            59:        { LOG_LOCAL1,                   "local1"},
        !            60:        { LOG_LOCAL2,                   "local2"},
        !            61:        { LOG_LOCAL3,                   "local3"},
        !            62:        { LOG_LOCAL4,                   "local4"},
        !            63:        { LOG_LOCAL5,                   "local5"},
        !            64:        { LOG_LOCAL6,                   "local6"},
        !            65:        { LOG_LOCAL7,                   "local7"},
        !            66:        { 0,                            NULL }
        !            67: };
        !            68: 
        !            69: isc_result_t
        !            70: isc_syslog_facilityfromstring(const char *str, int *facilityp) {
        !            71:        int i;
        !            72: 
        !            73:        REQUIRE(str != NULL);
        !            74:        REQUIRE(facilityp != NULL);
        !            75: 
        !            76:        for (i = 0; facilities[i].strval != NULL; i++) {
        !            77:                if (strcasecmp(facilities[i].strval, str) == 0) {
        !            78:                        *facilityp = facilities[i].val;
        !            79:                        return (ISC_R_SUCCESS);
        !            80:                }
        !            81:        }
        !            82:        return (ISC_R_NOTFOUND);
        !            83: 
        !            84: }

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