1
/* options.h - specify the conditionally-compiled features
2
* vix 28mar92 [moved out of the Makefile because they were getting too big]
4
* res_options.h,v 1.1 1995/05/01 05:06:43 hjl Exp
11
* The Regents of the University of California. All rights reserved.
13
* Redistribution and use in source and binary forms, with or without
14
* modification, are permitted provided that the following conditions
16
* 1. Redistributions of source code must retain the above copyright
17
* notice, this list of conditions and the following disclaimer.
18
* 2. Redistributions in binary form must reproduce the above copyright
19
* notice, this list of conditions and the following disclaimer in the
20
* documentation and/or other materials provided with the distribution.
21
* 3. All advertising materials mentioning features or use of this software
22
* must display the following acknowledgement:
23
* This product includes software developed by the University of
24
* California, Berkeley and its contributors.
25
* 4. Neither the name of the University nor the names of its contributors
26
* may be used to endorse or promote products derived from this software
27
* without specific prior written permission.
29
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
30
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
31
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
32
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
33
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
34
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
35
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
36
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
37
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
38
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
41
* Portions Copyright (c) 1993 by Digital Equipment Corporation.
43
* Permission to use, copy, modify, and distribute this software for any
44
* purpose with or without fee is hereby granted, provided that the above
45
* copyright notice and this permission notice appear in all copies, and that
46
* the name of Digital Equipment Corporation not be used in advertising or
47
* publicity pertaining to distribution of the document or software without
48
* specific, written prior permission.
50
* THE SOFTWARE IS PROVIDED "AS IS" AND DIGITAL EQUIPMENT CORP. DISCLAIMS ALL
51
* WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES
52
* OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL DIGITAL EQUIPMENT
53
* CORPORATION BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
54
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
55
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
56
* ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
63
* ucb = U C Berkeley 4.8.3 release
64
* vix = Paul Vixie of Digital
65
* del = Don Lewis of Harris
66
* mcsun = Piet Beertema of EUNet
67
* asp = Andrew Partan of UUNet
68
* pma = Paul Albitz of Hewlett Packard
69
* bb = Bryan Beecher of UMich
70
* mpa = Mark Andrews of CSIRO - DMS
71
* rossc = Ross Cartlidge of The Univeritsy of Sydney
72
* mtr = Marshall Rose of TPC.INT
73
* bg = Benoit Grange of INRIA
74
* ckd = Christopher Davis of Kapor Enterprises
75
* gns = Greg Shapiro of WPI
78
#define DEBUG /* enable -d flag and SIGUSR[12] support (ucb) */
79
/*#define ALLOW_T_UNSPEC *//* enable the "unspec" RR type for old athena (ucb) */
80
/*#define INVQ *//* enable inverse queries (nslookup) (ucb/vix) */
81
/*#define DSTORAGE *//* debug malloc overruns using storage.o (ucb/vix) */
82
/*#define DMALLOC *//* trace malloc orphans using dmalloc.o (vix) */
83
#define XFRNETS /* enable "xfrnets" command in named.boot (vix) */
84
#define PID_FIX /* be careful about overwriting named.pid file (del) */
85
#define FWD_LOOP /* try to break out of forwarding loops (del) */
86
#define NO_GLUE /* don't accept or send out-of-zone glue (del) */
87
#define BOGUSNS /* detect bogus nameservers (mcsun) */
88
#define QRYLOG /* enable SIGWINCH for query logging (bb) */
89
/*#define YPKLUDGE *//* deal effectively with broken "ypserv -i" (mcsun) */
90
#define TRACEROOT /* trace bogus root servers and ignore them (pma,bb) */
91
/*#define LOCALDOM *//* permit "domain" directive in named.boot (ucb) */
92
#define FORCED_RELOAD /* refresh secondary zones on SIGHUP (pma) */
93
#define SLAVE_FORWARD /* use sensible timeouts on slave forwarders (pma) */
94
#define WANT_PIDFILE /* if you want the named.pid file (ucb/arc) */
95
#define DOTTED_SERIAL /* if you want to be able to specify dotted serial#s */
96
/*#define SENSIBLE_DOTS *//* if you want dotted serial#s to make numeric sense */
97
#define NCACHE /* negative caching (anant@isi.edu) */
98
/*#define VALIDATE *//* validation procedure (anant@isi.edu) (DO NOT USE!)*/
99
/*#define SHORT_FNAMES *//* file names used in named-xfer need to be short */
100
#define RESOLVSORT /* allow sorting of addresses in gethostbyname (mpa) */
101
#define STUBS /* allow transfers of NS only for a zone (mpa) */
102
#define LOGFAC LOG_DAEMON /* what syslog facility should named use? */
103
#define SECURE_ZONES /* if you want to inhibit world access to zones (gns)*/
104
#define ROUND_ROBIN /* rotate databuf list after each access (mtr) */
105
#define ADDAUTH /* return NS and glue w/ authorative answers (mpa) */
106
#define RFC1535 /* use RFC 1535 default for "search" list (vix) */
107
#define GEN_AXFR /* distinct zones within each class */
108
#define DATUMREFCNT /* use reference counts on datums (mpa) */
109
#define LAME_DELEGATION /* lame delegations (original-del,reworked-bb&del)*/
110
#define LAME_LOGGING LOG_WARNING /* log lame delegations, set log level */
111
#define GETSER_LOGGING LOG_INFO /* log errors/timeouts getting serial number */
112
/*#define RETURNSOA *//* good code that the world isn't ready for yet */
113
#define CLEANCACHE /* useful and necessary in the face of NCACHE */
114
#define PURGE_ZONE /* remove all traces of a zone when reloading (mpa) */
115
#define STATS /* keep nameserver statistics; uses more memory */
116
#define RENICE /* named-xfer should run at normal priority */
117
#define XSTATS /* extended statistics, syslogged periodically (bg) */
118
/*#define BIND_NOTIFY *//* experimental - do not enable in customer products */
119
/*#define LOC_RR *//* support for (draft) LOC record parsing (ckd) */
121
/*--------------------------------------------*
122
* no user-servicable parts beyond this point *
123
*--------------------------------------------*/
125
/* if DSTORAGE is defined, we need to disable DMALLOC and remap
126
* malloc and free to storage.o's exported names. storage.o also
127
* includes a calloc and a realloc, but once we drag in its malloc
128
* and free we'll get the others automatically and so will never
129
* pull in those routines from libc.a.
135
# define malloc rt_malloc
136
# define free rt_free
139
/* if DMALLOC is defined, grab the header file which will remap
140
* all the malloc-style names to those exported by dmalloc.o. note
141
* that DMALLOC also changes the function signatures of several
142
* functions in private named source modules, and that this file
143
* (options.h) must be included before any other private *.h files
144
* since those *.h files have some conditional remapping to do.
147
# include "dmalloc.h"
150
/* systems with killall(1M) don't need this
159
# define LAME_DELEGATION
162
#if defined(XSTATS) && !defined(STATS)