/*
* Copyright (c) 2004, 2005 Sendmail, Inc. and its suppliers.
* All rights reserved.
*
* By using this file, you agree to the terms and conditions set
* forth in the LICENSE file which can be found at the top level of
* the sendmail distribution.
*
* $Id: logcnfdef.h,v 1.10 2007/05/01 04:18:32 ca Exp $
*/
#ifndef SM_LOGCNFDEF_H
#define SM_LOGCNFDEF_H 1
#include "sm/generic.h"
#include "sm/syslog.h"
#include "sm/sm-conf.h"
#if SM_CONF_LOG_DEF
#define EXTERN
#else
#define EXTERN extern
#endif
typedef struct sm_logspec_S sm_logspec_T, *sm_logspec_P;
struct sm_logspec_S
{
int sm_logspc_opt;
int sm_logspc_facility;
char *sm_logspc_ident;
};
EXTERN
sm_conf_definition_T const sm_log_opts[]
#if SM_CONF_LOG_DEF
=
{
#ifdef LOG_CONS
{ SM_CONF_DEF_MAGIC,
"cons", sm_conf_type_choice_value, LOG_CONS,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_NDELAY
{ SM_CONF_DEF_MAGIC,
"ndelay", sm_conf_type_choice_value, LOG_NDELAY,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_PERROR
{ SM_CONF_DEF_MAGIC,
"perror", sm_conf_type_choice_value, LOG_PERROR,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_PID
{ SM_CONF_DEF_MAGIC,
"pid", sm_conf_type_choice_value, LOG_PID,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
/* Sentinel */
{ SM_CONF_DEF_MAGIC, NULL, 0, 0, 0, NULL, 0, NULL, NULL, NULL, NULL SM_LC_NO_ISSET SM_LC_SET_MAGIC(0)}
}
#endif /* SM_CONF_LOG_DEF */
;
/*
created by: lines like this (from syslog.h):
LOG_...
apply:
:'a,.s/LOG_\(.*\)$/#ifdef &
{ SM_CONF_DEF_MAGIC,
"\1", sm_conf_type_choice_value, & },
#endif/
*/
EXTERN
sm_conf_definition_T const sm_log_facilities[]
#if SM_CONF_LOG_DEF
=
{
#ifdef LOG_USER
{ SM_CONF_DEF_MAGIC,
"USER", sm_conf_type_choice_value, LOG_USER,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_MAIL
{ SM_CONF_DEF_MAGIC,
"MAIL", sm_conf_type_choice_value, LOG_MAIL,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_DAEMON
{ SM_CONF_DEF_MAGIC,
"DAEMON", sm_conf_type_choice_value, LOG_DAEMON,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_AUTH
{ SM_CONF_DEF_MAGIC,
"AUTH", sm_conf_type_choice_value, LOG_AUTH,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#if 0
/* Messages generated internally by syslogd(8). */
#ifdef LOG_SYSLOG
{ SM_CONF_DEF_MAGIC,
"SYSLOG", sm_conf_type_choice_value, LOG_SYSLOG,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#endif /* 0 */
#ifdef LOG_LPR
{ SM_CONF_DEF_MAGIC,
"LPR", sm_conf_type_choice_value, LOG_LPR,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_NEWS
{ SM_CONF_DEF_MAGIC,
"NEWS", sm_conf_type_choice_value, LOG_NEWS,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_UUCP
{ SM_CONF_DEF_MAGIC,
"UUCP", sm_conf_type_choice_value, LOG_UUCP,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_CRON
{ SM_CONF_DEF_MAGIC,
"CRON", sm_conf_type_choice_value, LOG_CRON,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_AUTHPRIV
{ SM_CONF_DEF_MAGIC,
"AUTHPRIV", sm_conf_type_choice_value, LOG_AUTHPRIV,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_FTP
{ SM_CONF_DEF_MAGIC,
"FTP", sm_conf_type_choice_value, LOG_FTP,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_NTP
{ SM_CONF_DEF_MAGIC,
"NTP", sm_conf_type_choice_value, LOG_NTP,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_SECURITY
{ SM_CONF_DEF_MAGIC,
"SECURITY", sm_conf_type_choice_value, LOG_SECURITY,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_CONSOLE
{ SM_CONF_DEF_MAGIC,
"CONSOLE", sm_conf_type_choice_value, LOG_CONSOLE,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_LOCAL0
{ SM_CONF_DEF_MAGIC,
"LOCAL0", sm_conf_type_choice_value, LOG_LOCAL0,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_LOCAL1
{ SM_CONF_DEF_MAGIC,
"LOCAL1", sm_conf_type_choice_value, LOG_LOCAL1,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_LOCAL2
{ SM_CONF_DEF_MAGIC,
"LOCAL2", sm_conf_type_choice_value, LOG_LOCAL2,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_LOCAL3
{ SM_CONF_DEF_MAGIC,
"LOCAL3", sm_conf_type_choice_value, LOG_LOCAL3,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_LOCAL4
{ SM_CONF_DEF_MAGIC,
"LOCAL4", sm_conf_type_choice_value, LOG_LOCAL4,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_LOCAL5
{ SM_CONF_DEF_MAGIC,
"LOCAL5", sm_conf_type_choice_value, LOG_LOCAL5,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_LOCAL6
{ SM_CONF_DEF_MAGIC,
"LOCAL6", sm_conf_type_choice_value, LOG_LOCAL6,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
#ifdef LOG_LOCAL7
{ SM_CONF_DEF_MAGIC,
"LOCAL7", sm_conf_type_choice_value, LOG_LOCAL7,
0, NULL, 0, NULL, NULL, NULL, NULL
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
#endif
/* Sentinel */
{ SM_CONF_DEF_MAGIC, NULL, 0, 0, 0, NULL, 0, NULL, NULL, NULL, NULL SM_LC_NO_ISSET SM_LC_SET_MAGIC(0)}
}
#endif /* SM_CONF_LOG_DEF */
;
EXTERN
sm_conf_definition_T sm_log_spec_defs[]
#if SM_CONF_LOG_DEF
=
{
{ SM_CONF_DEF_MAGIC, "options", sm_conf_type_choice,
offsetof(sm_logspec_T, sm_logspc_opt), sizeof(int),
NULL, SM_CONF_FLAG_MULTIPLE, sm_log_opts,
NULL, NULL,
"options for openlog(3)"
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
{ SM_CONF_DEF_MAGIC, "facility", sm_conf_type_choice,
offsetof(sm_logspec_T, sm_logspc_facility), sizeof(int),
NULL, 0, sm_log_facilities,
NULL, NULL,
"facility for openlog(3)"
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
{ SM_CONF_DEF_MAGIC, "ident", sm_conf_type_string,
offsetof(sm_logspec_T, sm_logspc_ident), 0,
#ifdef SM_LOG_IDENT
SM_LOG_IDENT
#else
NULL
#endif
, 0, NULL, NULL, NULL,
"ident for openlog(3)"
SM_LC_NO_ISSET SM_LC_SET_MAGIC(0) },
/* Sentinel */
{ SM_CONF_DEF_MAGIC, NULL, 0, 0, 0, NULL, 0, NULL, NULL, NULL, NULL SM_LC_NO_ISSET SM_LC_SET_MAGIC(0)}
}
#endif /* SM_CONF_LOG_DEF */
;
#undef EXTERN
#endif /* SM_LOGCNFDEF_H */
syntax highlighted by Code2HTML, v. 0.9.1