Deleted Added
full compact
conf.c (90795) conf.c (94337)
1/*
2 * Copyright (c) 1998-2002 Sendmail, Inc. and its suppliers.
3 * All rights reserved.
4 * Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved.
5 * Copyright (c) 1988, 1993
6 * The Regents of the University of California. All rights reserved.
7 *
8 * By using this file, you agree to the terms and conditions set
9 * forth in the LICENSE file which can be found at the top level of
10 * the sendmail distribution.
11 *
12 */
13
14#include <sendmail.h>
15
1/*
2 * Copyright (c) 1998-2002 Sendmail, Inc. and its suppliers.
3 * All rights reserved.
4 * Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved.
5 * Copyright (c) 1988, 1993
6 * The Regents of the University of California. All rights reserved.
7 *
8 * By using this file, you agree to the terms and conditions set
9 * forth in the LICENSE file which can be found at the top level of
10 * the sendmail distribution.
11 *
12 */
13
14#include <sendmail.h>
15
16SM_RCSID("@(#)$Id: conf.c,v 8.939 2002/01/09 17:26:28 gshapiro Exp $")
16SM_RCSID("@(#)$Id: conf.c,v 8.961 2002/04/04 21:32:14 gshapiro Exp $")
17
17
18/* $FreeBSD: head/contrib/sendmail/src/conf.c 90795 2002-02-17 21:58:34Z gshapiro $ */
18/* $FreeBSD: head/contrib/sendmail/src/conf.c 94337 2002-04-10 03:06:22Z gshapiro $ */
19
20#include <sendmail/pathnames.h>
21
22# include <sys/ioctl.h>
23# include <sys/param.h>
24
25#include <limits.h>
26#if NETINET || NETINET6

--- 494 unchanged lines hidden (view full) ---

521#if 0
522 MAPDEF("dns", NULL, 0,
523 dns_map_init, null_map_open, null_map_close,
524 dns_map_lookup, null_map_store);
525#endif /* 0 */
526
527#if NAMED_BIND
528# if DNSMAP
19
20#include <sendmail/pathnames.h>
21
22# include <sys/ioctl.h>
23# include <sys/param.h>
24
25#include <limits.h>
26#if NETINET || NETINET6

--- 494 unchanged lines hidden (view full) ---

521#if 0
522 MAPDEF("dns", NULL, 0,
523 dns_map_init, null_map_open, null_map_close,
524 dns_map_lookup, null_map_store);
525#endif /* 0 */
526
527#if NAMED_BIND
528# if DNSMAP
529# if _FFR_DNSMAP_ALIASABLE
530 MAPDEF("dns", NULL, MCF_ALIASOK,
531 dns_map_parseargs, dns_map_open, null_map_close,
532 dns_map_lookup, null_map_store);
533# else /* _FFR_DNSMAP_ALIASABLE */
529 MAPDEF("dns", NULL, 0,
530 dns_map_parseargs, dns_map_open, null_map_close,
531 dns_map_lookup, null_map_store);
534 MAPDEF("dns", NULL, 0,
535 dns_map_parseargs, dns_map_open, null_map_close,
536 dns_map_lookup, null_map_store);
537# endif /* _FFR_DNSMAP_ALIASABLE */
532# endif /* DNSMAP */
533#endif /* NAMED_BIND */
534
535#if NAMED_BIND
536 /* best MX DNS lookup */
537 MAPDEF("bestmx", NULL, MCF_OPTFILE,
538 map_parseargs, null_map_open, null_map_close,
539 bestmx_map_lookup, null_map_store);

--- 2469 unchanged lines hidden (view full) ---

3009 "/usr/bin/posix/sh",
3010# else /* V4FS */
3011 "/bin/rsh", /* restricted Bourne shell */
3012 "/bin/ksh", /* Korn shell */
3013 "/bin/rksh", /* restricted Korn shell */
3014 "/bin/pam",
3015 "/usr/bin/keysh", /* key shell (extended Korn shell) */
3016 "/bin/posix/sh",
538# endif /* DNSMAP */
539#endif /* NAMED_BIND */
540
541#if NAMED_BIND
542 /* best MX DNS lookup */
543 MAPDEF("bestmx", NULL, MCF_OPTFILE,
544 map_parseargs, null_map_open, null_map_close,
545 bestmx_map_lookup, null_map_store);

--- 2469 unchanged lines hidden (view full) ---

3015 "/usr/bin/posix/sh",
3016# else /* V4FS */
3017 "/bin/rsh", /* restricted Bourne shell */
3018 "/bin/ksh", /* Korn shell */
3019 "/bin/rksh", /* restricted Korn shell */
3020 "/bin/pam",
3021 "/usr/bin/keysh", /* key shell (extended Korn shell) */
3022 "/bin/posix/sh",
3023 "/sbin/sh"
3017# endif /* V4FS */
3018# endif /* __hpux */
3019# if defined(_AIX3) || defined(_AIX4)
3020 "/bin/ksh", /* Korn shell */
3021 "/usr/bin/ksh",
3022 "/bin/tsh", /* trusted shell */
3023 "/usr/bin/tsh",
3024 "/bin/bsh", /* Bourne shell */

--- 454 unchanged lines hidden (view full) ---

3479 if (tTd(55, 60))
3480 sm_dprintf("SUCCESS\n");
3481 return true;
3482 }
3483
3484 if (!bitset(LOCK_NB, type) ||
3485 (save_errno != EACCES && save_errno != EAGAIN))
3486 {
3024# endif /* V4FS */
3025# endif /* __hpux */
3026# if defined(_AIX3) || defined(_AIX4)
3027 "/bin/ksh", /* Korn shell */
3028 "/usr/bin/ksh",
3029 "/bin/tsh", /* trusted shell */
3030 "/usr/bin/tsh",
3031 "/bin/bsh", /* Bourne shell */

--- 454 unchanged lines hidden (view full) ---

3486 if (tTd(55, 60))
3487 sm_dprintf("SUCCESS\n");
3488 return true;
3489 }
3490
3491 if (!bitset(LOCK_NB, type) ||
3492 (save_errno != EACCES && save_errno != EAGAIN))
3493 {
3487 int omode = -1;
3488# ifdef F_GETFL
3489 (void) fcntl(fd, F_GETFL, &omode);
3494 int omode = fcntl(fd, F_GETFL, 0);
3495 uid_t euid = geteuid();
3496
3490 errno = save_errno;
3497 errno = save_errno;
3491# endif /* F_GETFL */
3492 syserr("cannot lockf(%s%s, fd=%d, type=%o, omode=%o, euid=%d)",
3498 syserr("cannot lockf(%s%s, fd=%d, type=%o, omode=%o, euid=%d)",
3493 filename, ext, fd, type, omode, geteuid());
3499 filename, ext, fd, type, omode, euid);
3494 dumpfd(fd, true, true);
3495 }
3496# else /* !HASFLOCK */
3497 if (ext == NULL)
3498 ext = "";
3499
3500 if (tTd(55, 60))
3501 sm_dprintf("lockfile(%s%s, type=%o): ", filename, ext, type);

--- 8 unchanged lines hidden (view full) ---

3510 }
3511 save_errno = errno;
3512
3513 if (tTd(55, 60))
3514 sm_dprintf("(%s) ", sm_errstring(save_errno));
3515
3516 if (!bitset(LOCK_NB, type) || save_errno != EWOULDBLOCK)
3517 {
3500 dumpfd(fd, true, true);
3501 }
3502# else /* !HASFLOCK */
3503 if (ext == NULL)
3504 ext = "";
3505
3506 if (tTd(55, 60))
3507 sm_dprintf("lockfile(%s%s, type=%o): ", filename, ext, type);

--- 8 unchanged lines hidden (view full) ---

3516 }
3517 save_errno = errno;
3518
3519 if (tTd(55, 60))
3520 sm_dprintf("(%s) ", sm_errstring(save_errno));
3521
3522 if (!bitset(LOCK_NB, type) || save_errno != EWOULDBLOCK)
3523 {
3518 int omode = -1;
3519# ifdef F_GETFL
3520 (void) fcntl(fd, F_GETFL, &omode);
3524 int omode = fcntl(fd, F_GETFL, 0);
3525 uid_t euid = geteuid();
3526
3521 errno = save_errno;
3527 errno = save_errno;
3522# endif /* F_GETFL */
3523 syserr("cannot flock(%s%s, fd=%d, type=%o, omode=%o, euid=%d)",
3528 syserr("cannot flock(%s%s, fd=%d, type=%o, omode=%o, euid=%d)",
3524 filename, ext, fd, type, omode, geteuid());
3529 filename, ext, fd, type, omode, euid);
3525 dumpfd(fd, true, true);
3526 }
3527# endif /* !HASFLOCK */
3528 if (tTd(55, 60))
3529 sm_dprintf("FAIL\n");
3530 errno = save_errno;
3531 return false;
3532}

--- 1880 unchanged lines hidden (view full) ---

5413 char *p = buf;
5414
5415 while (left > 0 &&
5416 (writelen = write(dst, p, (size_t) left)) >= 0)
5417 {
5418 left -= writelen;
5419 p += writelen;
5420 }
3530 dumpfd(fd, true, true);
3531 }
3532# endif /* !HASFLOCK */
3533 if (tTd(55, 60))
3534 sm_dprintf("FAIL\n");
3535 errno = save_errno;
3536 return false;
3537}

--- 1880 unchanged lines hidden (view full) ---

5418 char *p = buf;
5419
5420 while (left > 0 &&
5421 (writelen = write(dst, p, (size_t) left)) >= 0)
5422 {
5423 left -= writelen;
5424 p += writelen;
5425 }
5421 if (writeln < 0)
5426 if (writelen < 0)
5422 break;
5423 }
5424
5425 /* Any trouble reading? */
5426 if (readlen < 0 || writelen < 0)
5427 goto fail;
5428
5429 /* Close the input file */

--- 142 unchanged lines hidden (view full) ---

5572 "TLS_NO_RSA",
5573#endif /* TLS_NO_RSA */
5574#if TLS_VRFY_PER_CTX
5575 "TLS_VRFY_PER_CTX",
5576#endif /* TLS_VRFY_PER_CTX */
5577#if USERDB
5578 "USERDB",
5579#endif /* USERDB */
5427 break;
5428 }
5429
5430 /* Any trouble reading? */
5431 if (readlen < 0 || writelen < 0)
5432 goto fail;
5433
5434 /* Close the input file */

--- 142 unchanged lines hidden (view full) ---

5577 "TLS_NO_RSA",
5578#endif /* TLS_NO_RSA */
5579#if TLS_VRFY_PER_CTX
5580 "TLS_VRFY_PER_CTX",
5581#endif /* TLS_VRFY_PER_CTX */
5582#if USERDB
5583 "USERDB",
5584#endif /* USERDB */
5585#if USE_LDAP_INIT
5586 "USE_LDAP_INIT",
5587#endif /* USE_LDAP_INIT */
5580#if XDEBUG
5581 "XDEBUG",
5582#endif /* XDEBUG */
5583#if XLA
5584 "XLA",
5585#endif /* XLA */
5586 NULL
5587};

--- 213 unchanged lines hidden (view full) ---

5801char *FFRCompileOptions[] =
5802{
5803#if _FFR_ADAPTIVE_EOL
5804 "_FFR_ADAPTIVE_EOL",
5805#endif /* _FFR_ADAPTIVE_EOL */
5806#if _FFR_ALLOW_SASLINFO
5807 "_FFR_ALLOW_SASLINFO",
5808#endif /* _FFR_ALLOW_SASLINFO */
5588#if XDEBUG
5589 "XDEBUG",
5590#endif /* XDEBUG */
5591#if XLA
5592 "XLA",
5593#endif /* XLA */
5594 NULL
5595};

--- 213 unchanged lines hidden (view full) ---

5809char *FFRCompileOptions[] =
5810{
5811#if _FFR_ADAPTIVE_EOL
5812 "_FFR_ADAPTIVE_EOL",
5813#endif /* _FFR_ADAPTIVE_EOL */
5814#if _FFR_ALLOW_SASLINFO
5815 "_FFR_ALLOW_SASLINFO",
5816#endif /* _FFR_ALLOW_SASLINFO */
5817#if _FFR_ALLOW_S0_ERROR_4XX
5818 "_FFR_ALLOW_S0_ERROR_4XX",
5819#endif /* _FFR_ALLOW_S0_ERROR_4XX */
5809#if _FFR_BESTMX_BETTER_TRUNCATION
5810 "_FFR_BESTMX_BETTER_TRUNCATION",
5811#endif /* _FFR_BESTMX_BETTER_TRUNCATION */
5812#if _FFR_CACHE_LPC
5813/* Christophe Wolfhugel of France Telecom Oleane */
5814 "_FFR_CACHE_LPC",
5815#endif /* _FFR_CACHE_LPC */
5816#if _FFR_CATCH_BROKEN_MTAS
5817 "_FFR_CATCH_BROKEN_MTAS",
5818#endif /* _FFR_CATCH_BROKEN_MTAS */
5820#if _FFR_BESTMX_BETTER_TRUNCATION
5821 "_FFR_BESTMX_BETTER_TRUNCATION",
5822#endif /* _FFR_BESTMX_BETTER_TRUNCATION */
5823#if _FFR_CACHE_LPC
5824/* Christophe Wolfhugel of France Telecom Oleane */
5825 "_FFR_CACHE_LPC",
5826#endif /* _FFR_CACHE_LPC */
5827#if _FFR_CATCH_BROKEN_MTAS
5828 "_FFR_CATCH_BROKEN_MTAS",
5829#endif /* _FFR_CATCH_BROKEN_MTAS */
5830#if _FFR_CATCH_LONG_STRINGS
5831 "_FFR_CATCH_LONG_STRINGS",
5832#endif /* _FFR_CATCH_LONG_STRINGS */
5819#if _FFR_CHECK_EOM
5820 "_FFR_CHECK_EOM",
5821#endif /* _FFR_CHECK_EOM */
5822#if _FFR_CONTROL_MSTAT
5823 "_FFR_CONTROL_MSTAT",
5824#endif /* _FFR_CONTROL_MSTAT */
5825#if _FFR_DAEMON_NETUNIX
5826 "_FFR_DAEMON_NETUNIX",
5827#endif /* _FFR_DAEMON_NETUNIX */
5828#if _FFR_DEPRECATE_MAILER_FLAG_I
5829 "_FFR_DEPRECATE_MAILER_FLAG_I",
5830#endif /* _FFR_DEPRECATE_MAILER_FLAG_I */
5833#if _FFR_CHECK_EOM
5834 "_FFR_CHECK_EOM",
5835#endif /* _FFR_CHECK_EOM */
5836#if _FFR_CONTROL_MSTAT
5837 "_FFR_CONTROL_MSTAT",
5838#endif /* _FFR_CONTROL_MSTAT */
5839#if _FFR_DAEMON_NETUNIX
5840 "_FFR_DAEMON_NETUNIX",
5841#endif /* _FFR_DAEMON_NETUNIX */
5842#if _FFR_DEPRECATE_MAILER_FLAG_I
5843 "_FFR_DEPRECATE_MAILER_FLAG_I",
5844#endif /* _FFR_DEPRECATE_MAILER_FLAG_I */
5845#if _FFR_DIGUNIX_SAFECHOWN
5846/* Problem noted by Anne Bennett of Concordia University */
5847 "_FFR_DIGUNIX_SAFECHOWN",
5848#endif /* _FFR_DIGUNIX_SAFECHOWN */
5849#if _FFR_DNSMAP_ALIASABLE
5850/* Don Lewis of TDK */
5851 "_FFR_DNSMAP_ALIASABLE",
5852#endif /* _FFR_DNSMAP_ALIASABLE */
5831#if _FFR_DNSMAP_BASE
5832 "_FFR_DNSMAP_BASE",
5833#endif /* _FFR_DNSMAP_BASE */
5834#if _FFR_DNSMAP_MULTI
5835 "_FFR_DNSMAP_MULTI",
5836# if _FFR_DNSMAP_MULTILIMIT
5837 "_FFR_DNSMAP_MULTILIMIT",
5838# endif /* _FFR_DNSMAP_MULTILIMIT */
5839#endif /* _FFR_DNSMAP_MULTI */
5840#if _FFR_DONTLOCKFILESFORREAD_OPTION
5841 "_FFR_DONTLOCKFILESFORREAD_OPTION",
5842#endif /* _FFR_DONTLOCKFILESFORREAD_OPTION */
5853#if _FFR_DNSMAP_BASE
5854 "_FFR_DNSMAP_BASE",
5855#endif /* _FFR_DNSMAP_BASE */
5856#if _FFR_DNSMAP_MULTI
5857 "_FFR_DNSMAP_MULTI",
5858# if _FFR_DNSMAP_MULTILIMIT
5859 "_FFR_DNSMAP_MULTILIMIT",
5860# endif /* _FFR_DNSMAP_MULTILIMIT */
5861#endif /* _FFR_DNSMAP_MULTI */
5862#if _FFR_DONTLOCKFILESFORREAD_OPTION
5863 "_FFR_DONTLOCKFILESFORREAD_OPTION",
5864#endif /* _FFR_DONTLOCKFILESFORREAD_OPTION */
5865# if _FFR_DONT_STOP_LOOKING
5866/* Noted by Neil Rickert of Northern Illinois University */
5867 "_FFR_DONT_STOP_LOOKING",
5868# endif /* _FFR_DONT_STOP_LOOKING */
5843#if _FFR_DOTTED_USERNAMES
5844 "_FFR_DOTTED_USERNAMES",
5845#endif /* _FFR_DOTTED_USERNAMES */
5846#if _FFR_DROP_TRUSTUSER_WARNING
5847 "_FFR_DROP_TRUSTUSER_WARNING",
5848#endif /* _FFR_DROP_TRUSTUSER_WARNING */
5849#if _FFR_FIX_DASHT
5850 "_FFR_FIX_DASHT",
5851#endif /* _FFR_FIX_DASHT */
5852#if _FFR_FORWARD_SYSERR
5853 "_FFR_FORWARD_SYSERR",
5854#endif /* _FFR_FORWARD_SYSERR */
5855#if _FFR_GEN_ORCPT
5856 "_FFR_GEN_ORCPT",
5857#endif /* _FFR_GEN_ORCPT */
5858#if _FFR_GROUPREADABLEAUTHINFOFILE
5859 "_FFR_GROUPREADABLEAUTHINFOFILE",
5860#endif /* _FFR_GROUPREADABLEAUTHINFOFILE */
5869#if _FFR_DOTTED_USERNAMES
5870 "_FFR_DOTTED_USERNAMES",
5871#endif /* _FFR_DOTTED_USERNAMES */
5872#if _FFR_DROP_TRUSTUSER_WARNING
5873 "_FFR_DROP_TRUSTUSER_WARNING",
5874#endif /* _FFR_DROP_TRUSTUSER_WARNING */
5875#if _FFR_FIX_DASHT
5876 "_FFR_FIX_DASHT",
5877#endif /* _FFR_FIX_DASHT */
5878#if _FFR_FORWARD_SYSERR
5879 "_FFR_FORWARD_SYSERR",
5880#endif /* _FFR_FORWARD_SYSERR */
5881#if _FFR_GEN_ORCPT
5882 "_FFR_GEN_ORCPT",
5883#endif /* _FFR_GEN_ORCPT */
5884#if _FFR_GROUPREADABLEAUTHINFOFILE
5885 "_FFR_GROUPREADABLEAUTHINFOFILE",
5886#endif /* _FFR_GROUPREADABLEAUTHINFOFILE */
5887#if _FFR_HANDLE_ISO8859_GECOS
5888/* Peter Eriksson of Linkopings universitet */
5889 "_FFR_HANDLE_ISO8859_GECOS",
5890#endif /* _FFR_HANDLE_ISO8859_GECOS */
5861#if _FFR_HDR_TYPE
5862 "_FFR_HDR_TYPE",
5863#endif /* _FFR_HDR_TYPE */
5864#if _FFR_HPUX_NSSWITCH
5865 "_FFR_HPUX_NSSWITCH",
5866#endif /* _FFR_HPUX_NSSWITCH */
5867#if _FFR_IGNORE_EXT_ON_HELO
5868 "_FFR_IGNORE_EXT_ON_HELO",
5869#endif /* _FFR_IGNORE_EXT_ON_HELO */
5870#if _FFR_LDAP_RECURSION
5891#if _FFR_HDR_TYPE
5892 "_FFR_HDR_TYPE",
5893#endif /* _FFR_HDR_TYPE */
5894#if _FFR_HPUX_NSSWITCH
5895 "_FFR_HPUX_NSSWITCH",
5896#endif /* _FFR_HPUX_NSSWITCH */
5897#if _FFR_IGNORE_EXT_ON_HELO
5898 "_FFR_IGNORE_EXT_ON_HELO",
5899#endif /* _FFR_IGNORE_EXT_ON_HELO */
5900#if _FFR_LDAP_RECURSION
5901/* Andrew Baucom */
5871 "_FFR_LDAP_RECURSION",
5872#endif /* _FFR_LDAP_RECURSION */
5902 "_FFR_LDAP_RECURSION",
5903#endif /* _FFR_LDAP_RECURSION */
5904#if _FFR_LDAP_SETVERSION
5905 "_FFR_LDAP_SETVERSION",
5906#endif /* _FFR_LDAP_SETVERSION */
5907#if _FFR_LDAP_URI
5908 "_FFR_LDAP_URI",
5909#endif /* _FFR_LDAP_URI */
5873#if _FFR_MAX_FORWARD_ENTRIES
5874/* Randall S. Winchester of the University of Maryland */
5875 "_FFR_MAX_FORWARD_ENTRIES",
5876#endif /* _FFR_MAX_FORWARD_ENTRIES */
5877#if MILTER
5878# if _FFR_MILTER_PERDAEMON
5879 "_FFR_MILTER_PERDAEMON",
5880# endif /* _FFR_MILTER_PERDAEMON */

--- 6 unchanged lines hidden (view full) ---

5887 "_FFR_NO_PIPE",
5888#endif /* _FFR_NO_PIPE */
5889#if _FFR_QUARANTINE
5890 "_FFR_QUARANTINE",
5891#endif /* _FFR_QUARANTINE */
5892#if _FFR_QUEUEDELAY
5893 "_FFR_QUEUEDELAY",
5894#endif /* _FFR_QUEUEDELAY */
5910#if _FFR_MAX_FORWARD_ENTRIES
5911/* Randall S. Winchester of the University of Maryland */
5912 "_FFR_MAX_FORWARD_ENTRIES",
5913#endif /* _FFR_MAX_FORWARD_ENTRIES */
5914#if MILTER
5915# if _FFR_MILTER_PERDAEMON
5916 "_FFR_MILTER_PERDAEMON",
5917# endif /* _FFR_MILTER_PERDAEMON */

--- 6 unchanged lines hidden (view full) ---

5924 "_FFR_NO_PIPE",
5925#endif /* _FFR_NO_PIPE */
5926#if _FFR_QUARANTINE
5927 "_FFR_QUARANTINE",
5928#endif /* _FFR_QUARANTINE */
5929#if _FFR_QUEUEDELAY
5930 "_FFR_QUEUEDELAY",
5931#endif /* _FFR_QUEUEDELAY */
5932#if _FFR_QUEUE_GROUP_SORTORDER
5933/* XXX: Still need to actually use qgrp->qg_sortorder */
5934 "_FFR_QUEUE_GROUP_SORTORDER",
5935#endif /* _FFR_QUEUE_GROUP_SORTORDER */
5895#if _FFR_QUEUE_MACRO
5896 "_FFR_QUEUE_MACRO",
5897#endif /* _FFR_QUEUE_MACRO */
5936#if _FFR_QUEUE_MACRO
5937 "_FFR_QUEUE_MACRO",
5938#endif /* _FFR_QUEUE_MACRO */
5939#if _FFR_QUEUE_RUN_PARANOIA
5940 "_FFR_QUEUE_RUN_PARANOIA",
5941#endif /* _FFR_QUEUE_RUN_PARANOIA */
5898#if _FFR_QUEUE_SCHED_DBG
5899 "_FFR_QUEUE_SCHED_DBG",
5900#endif /* _FFR_QUEUE_SCHED_DBG */
5901#if _FFR_REDIRECTEMPTY
5902 "_FFR_REDIRECTEMPTY",
5903#endif /* _FFR_REDIRECTEMPTY */
5904#if _FFR_RESET_MACRO_GLOBALS
5905 "_FFR_RESET_MACRO_GLOBALS",
5906#endif /* _FFR_RESET_MACRO_GLOBALS */
5907#if _FFR_RHS
5908 "_FFR_RHS",
5909#endif /* _FFR_RHS */
5942#if _FFR_QUEUE_SCHED_DBG
5943 "_FFR_QUEUE_SCHED_DBG",
5944#endif /* _FFR_QUEUE_SCHED_DBG */
5945#if _FFR_REDIRECTEMPTY
5946 "_FFR_REDIRECTEMPTY",
5947#endif /* _FFR_REDIRECTEMPTY */
5948#if _FFR_RESET_MACRO_GLOBALS
5949 "_FFR_RESET_MACRO_GLOBALS",
5950#endif /* _FFR_RESET_MACRO_GLOBALS */
5951#if _FFR_RHS
5952 "_FFR_RHS",
5953#endif /* _FFR_RHS */
5954#if _FFR_SELECT_SHM
5955 "_FFR_SELECT_SHM",
5956#endif /* _FFR_SELECT_SHM */
5910#if _FFR_SHM_STATUS
5911 "_FFR_SHM_STATUS",
5912#endif /* _FFR_SHM_STATUS */
5913#if _FFR_SMTP_SSL
5914 "_FFR_SMTP_SSL",
5915#endif /* _FFR_SMTP_SSL */
5916#if _FFR_SOFT_BOUNCE
5917 "_FFR_SOFT_BOUNCE",
5918#endif /* _FFR_SOFT_BOUNCE */
5919#if _FFR_TIMERS
5920 "_FFR_TIMERS",
5921#endif /* _FFR_TIMERS */
5922#if _FFR_TLS_1
5923 "_FFR_TLS_1",
5924#endif /* _FFR_TLS_1 */
5925#if _FFR_TRUSTED_QF
5926 "_FFR_TRUSTED_QF",
5927#endif /* _FFR_TRUSTED_QF */
5957#if _FFR_SHM_STATUS
5958 "_FFR_SHM_STATUS",
5959#endif /* _FFR_SHM_STATUS */
5960#if _FFR_SMTP_SSL
5961 "_FFR_SMTP_SSL",
5962#endif /* _FFR_SMTP_SSL */
5963#if _FFR_SOFT_BOUNCE
5964 "_FFR_SOFT_BOUNCE",
5965#endif /* _FFR_SOFT_BOUNCE */
5966#if _FFR_TIMERS
5967 "_FFR_TIMERS",
5968#endif /* _FFR_TIMERS */
5969#if _FFR_TLS_1
5970 "_FFR_TLS_1",
5971#endif /* _FFR_TLS_1 */
5972#if _FFR_TRUSTED_QF
5973 "_FFR_TRUSTED_QF",
5974#endif /* _FFR_TRUSTED_QF */
5975#if _FFR_USE_SETLOGIN
5976/* Peter Philipp */
5977 "_FFR_USE_SETLOGIN",
5978#endif /* _FFR_USE_SETLOGIN */
5928 NULL
5929};
5930
5979 NULL
5980};
5981