xref: /netbsd/external/bsd/nsd/include/config.h (revision f23adfb5)
1a338db78Schristos /* config.h.  Generated from config.h.in by configure.  */
2a338db78Schristos /* config.h.in.  Generated from configure.ac by autoheader.  */
3a338db78Schristos 
4*f23adfb5Sprlw1 /* apply the noreturn attribute to a function that exits the program */
5*f23adfb5Sprlw1 #define ATTR_NORETURN __attribute__((__noreturn__))
6*f23adfb5Sprlw1 
7a338db78Schristos /* Define this to enable BIND8 like NSTATS & XSTATS. */
8a338db78Schristos #define BIND8_STATS /**/
9a338db78Schristos 
10a338db78Schristos /* NSD default chroot directory */
11a338db78Schristos #define CHROOTDIR "/var/chroot/nsd"
12a338db78Schristos 
13a338db78Schristos /* NSD config dir */
14a338db78Schristos #define CONFIGDIR CHROOTDIR "/etc/nsd"
15a338db78Schristos 
16a338db78Schristos /* Pathname to the NSD configuration file */
17a338db78Schristos #define CONFIGFILE CHROOTDIR "/etc/nsd/nsd.conf"
18a338db78Schristos 
19a338db78Schristos /* Define this if on macOSX10.4-darwin8 and setreuid and setregid do not work
20a338db78Schristos    */
21a338db78Schristos /* #undef DARWIN_BROKEN_SETREUID */
22a338db78Schristos 
23a338db78Schristos /* Pathname to the NSD database */
24a338db78Schristos #define DBFILE CHROOTDIR "/var/db/nsd/nsd.db"
25a338db78Schristos 
26*f23adfb5Sprlw1 /* default dnstap socket path */
27*f23adfb5Sprlw1 /* #undef DNSTAP_SOCKET_PATH */
28*f23adfb5Sprlw1 
29a338db78Schristos /* Define to the default maximum message length with EDNS. */
30a338db78Schristos #define EDNS_MAX_MESSAGE_LEN 4096
31a338db78Schristos 
32a338db78Schristos /* Define to the default facility for syslog. */
33a338db78Schristos #define FACILITY LOG_DAEMON
34a338db78Schristos 
35885624e8Schristos /* Define to 1 if you have the `accept4' function. */
36885624e8Schristos #define HAVE_ACCEPT4 1
37885624e8Schristos 
38a338db78Schristos /* Define to 1 if you have the `alarm' function. */
39a338db78Schristos #define HAVE_ALARM 1
40a338db78Schristos 
41a338db78Schristos /* Define to 1 if you have the `arc4random' function. */
42a338db78Schristos #define HAVE_ARC4RANDOM 1
43a338db78Schristos 
44a338db78Schristos /* Define to 1 if you have the `arc4random_uniform' function. */
45a338db78Schristos #define HAVE_ARC4RANDOM_UNIFORM 1
46a338db78Schristos 
47a338db78Schristos /* Define to 1 if you have the <arpa/inet.h> header file. */
48a338db78Schristos #define HAVE_ARPA_INET_H 1
49a338db78Schristos 
50a338db78Schristos /* Whether the C compiler accepts the "format" attribute */
51a338db78Schristos #define HAVE_ATTR_FORMAT 1
52a338db78Schristos 
53*f23adfb5Sprlw1 /* Whether the C compiler accepts the "noreturn" attribute */
54*f23adfb5Sprlw1 #define HAVE_ATTR_NORETURN 1
55*f23adfb5Sprlw1 
56a338db78Schristos /* Whether the C compiler accepts the "unused" attribute */
57a338db78Schristos #define HAVE_ATTR_UNUSED 1
58a338db78Schristos 
59a338db78Schristos /* Define to 1 if you have the `b64_ntop' function. */
60a338db78Schristos /* #undef HAVE_B64_NTOP */
61a338db78Schristos 
62a338db78Schristos /* Define to 1 if you have the `b64_pton' function. */
63a338db78Schristos /* #undef HAVE_B64_PTON */
64a338db78Schristos 
65a338db78Schristos /* Define to 1 if you have the `basename' function. */
66a338db78Schristos #define HAVE_BASENAME 1
67a338db78Schristos 
68a338db78Schristos /* Define to 1 if your system has a working `chown' function. */
69a338db78Schristos #define HAVE_CHOWN 1
70a338db78Schristos 
71a338db78Schristos /* Define to 1 if you have the `chroot' function. */
72a338db78Schristos #define HAVE_CHROOT 1
73a338db78Schristos 
74a338db78Schristos /* Define to 1 if you have the `clock_gettime' function. */
75a338db78Schristos #define HAVE_CLOCK_GETTIME 1
76a338db78Schristos 
77a338db78Schristos /* if time.h provides ctime_r prototype */
78a338db78Schristos #define HAVE_CTIME_R_PROTO 1
79a338db78Schristos 
80a338db78Schristos /* Define to 1 if you have the `dup2' function. */
81a338db78Schristos #define HAVE_DUP2 1
82a338db78Schristos 
83a338db78Schristos /* Define to 1 if you have the <endian.h> header file. */
84885624e8Schristos #define HAVE_ENDIAN_H 1
85a338db78Schristos 
86a338db78Schristos /* Define to 1 if you have the `endpwent' function. */
87a338db78Schristos #define HAVE_ENDPWENT 1
88a338db78Schristos 
89a338db78Schristos /* Define to 1 if you have the `ERR_load_crypto_strings' function. */
90*f23adfb5Sprlw1 /* #undef HAVE_ERR_LOAD_CRYPTO_STRINGS */
91a338db78Schristos 
92a338db78Schristos /* Define to 1 if you have the `event_base_free' function. */
93a338db78Schristos #define HAVE_EVENT_BASE_FREE 1
94a338db78Schristos 
95a338db78Schristos /* Define to 1 if you have the `event_base_get_method' function. */
96a338db78Schristos #define HAVE_EVENT_BASE_GET_METHOD 1
97a338db78Schristos 
98a338db78Schristos /* Define to 1 if you have the `event_base_new' function. */
99a338db78Schristos #define HAVE_EVENT_BASE_NEW 1
100a338db78Schristos 
101a338db78Schristos /* Define to 1 if you have the `event_base_once' function. */
102a338db78Schristos #define HAVE_EVENT_BASE_ONCE 1
103a338db78Schristos 
104a338db78Schristos /* Define to 1 if you have the <event.h> header file. */
105a338db78Schristos #define HAVE_EVENT_H 1
106a338db78Schristos 
107a338db78Schristos /* Define to 1 if you have the `EVP_cleanup' function. */
108*f23adfb5Sprlw1 /* #undef HAVE_EVP_CLEANUP */
109a338db78Schristos 
110a338db78Schristos /* Define to 1 if you have the `ev_default_loop' function. */
111a338db78Schristos /* #undef HAVE_EV_DEFAULT_LOOP */
112a338db78Schristos 
113a338db78Schristos /* Define to 1 if you have the `ev_loop' function. */
114a338db78Schristos /* #undef HAVE_EV_LOOP */
115a338db78Schristos 
116a338db78Schristos /* Define to 1 if you have the <fcntl.h> header file. */
117a338db78Schristos #define HAVE_FCNTL_H 1
118a338db78Schristos 
119a338db78Schristos /* Define to 1 if you have the `fork' function. */
120a338db78Schristos #define HAVE_FORK 1
121a338db78Schristos 
122a338db78Schristos /* Define to 1 if you have the `freeaddrinfo' function. */
123a338db78Schristos #define HAVE_FREEADDRINFO 1
124a338db78Schristos 
125a338db78Schristos /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */
126a338db78Schristos #define HAVE_FSEEKO 1
127a338db78Schristos 
128a338db78Schristos /* Define to 1 if you have the `gai_strerror' function. */
129a338db78Schristos #define HAVE_GAI_STRERROR 1
130a338db78Schristos 
131a338db78Schristos /* Define to 1 if you have the `getaddrinfo' function. */
132a338db78Schristos #define HAVE_GETADDRINFO 1
133a338db78Schristos 
134a338db78Schristos /* Define to 1 if you have the `gethostname' function. */
135a338db78Schristos #define HAVE_GETHOSTNAME 1
136a338db78Schristos 
137a338db78Schristos /* Define to 1 if you have the `getnameinfo' function. */
138a338db78Schristos #define HAVE_GETNAMEINFO 1
139a338db78Schristos 
140a338db78Schristos /* Define to 1 if you have the `getpwnam' function. */
141a338db78Schristos #define HAVE_GETPWNAM 1
142a338db78Schristos 
143a338db78Schristos /* Define to 1 if you have the `glob' function. */
144a338db78Schristos #define HAVE_GLOB 1
145a338db78Schristos 
146a338db78Schristos /* Define to 1 if you have the <glob.h> header file. */
147a338db78Schristos #define HAVE_GLOB_H 1
148a338db78Schristos 
149a338db78Schristos /* Define to 1 if you have the <grp.h> header file. */
150a338db78Schristos #define HAVE_GRP_H 1
151a338db78Schristos 
152a338db78Schristos /* Define to 1 if you have the `HMAC_CTX_new' function. */
153ff84eb62Schristos #define HAVE_HMAC_CTX_NEW 1
154a338db78Schristos 
155a338db78Schristos /* Define to 1 if you have the `HMAC_CTX_reset' function. */
156ff84eb62Schristos #define HAVE_HMAC_CTX_RESET 1
157a338db78Schristos 
158a338db78Schristos /* Define to 1 if you have the `inet_aton' function. */
159a338db78Schristos #define HAVE_INET_ATON 1
160a338db78Schristos 
161a338db78Schristos /* Define to 1 if you have the `inet_ntop' function. */
162a338db78Schristos #define HAVE_INET_NTOP 1
163a338db78Schristos 
164a338db78Schristos /* Define to 1 if you have the `inet_pton' function. */
165a338db78Schristos #define HAVE_INET_PTON 1
166a338db78Schristos 
167a338db78Schristos /* Define to 1 if you have the `initgroups' function. */
168a338db78Schristos #define HAVE_INITGROUPS 1
169a338db78Schristos 
170a338db78Schristos /* Define to 1 if you have the <inttypes.h> header file. */
171a338db78Schristos #define HAVE_INTTYPES_H 1
172a338db78Schristos 
173a338db78Schristos /* Define to 1 if you have the `crypto' library (-lcrypto). */
174a338db78Schristos #define HAVE_LIBCRYPTO 1
175a338db78Schristos 
176a338db78Schristos /* Define to 1 if you have the <limits.h> header file. */
177a338db78Schristos #define HAVE_LIMITS_H 1
178a338db78Schristos 
179a338db78Schristos /* Define to 1 if you have the `localtime_r' function. */
180a338db78Schristos #define HAVE_LOCALTIME_R 1
181a338db78Schristos 
182a338db78Schristos /* Define to 1 if your system has a GNU libc compatible `malloc' function, and
183a338db78Schristos    to 0 otherwise. */
184a338db78Schristos #define HAVE_MALLOC 1
185a338db78Schristos 
186a338db78Schristos /* Define to 1 if you have the `memcpy' function. */
187a338db78Schristos #define HAVE_MEMCPY 1
188a338db78Schristos 
189a338db78Schristos /* Define to 1 if you have the `memmove' function. */
190a338db78Schristos #define HAVE_MEMMOVE 1
191a338db78Schristos 
192a338db78Schristos /* Define to 1 if you have the <memory.h> header file. */
193a338db78Schristos #define HAVE_MEMORY_H 1
194a338db78Schristos 
195a338db78Schristos /* Define to 1 if you have the `memset' function. */
196a338db78Schristos #define HAVE_MEMSET 1
197a338db78Schristos 
198a338db78Schristos /* Define to 1 if you have the `mmap' function. */
199a338db78Schristos #define HAVE_MMAP 1
200a338db78Schristos 
201a338db78Schristos /* Define to 1 if you have the `munmap' function. */
202a338db78Schristos /* #undef HAVE_MUNMAP */
203a338db78Schristos 
204a338db78Schristos /* Define to 1 if you have the <netdb.h> header file. */
205a338db78Schristos #define HAVE_NETDB_H 1
206a338db78Schristos 
207a338db78Schristos /* Define to 1 if you have the <netinet/in.h> header file. */
208a338db78Schristos #define HAVE_NETINET_IN_H 1
209a338db78Schristos 
210a338db78Schristos /* Define to 1 if you have the <netinet/tcp.h> header file. */
211a338db78Schristos #define HAVE_NETINET_TCP_H 1
212a338db78Schristos 
213a338db78Schristos /* Define to 1 if you have the <openssl/err.h> header file. */
214a338db78Schristos #define HAVE_OPENSSL_ERR_H 1
215a338db78Schristos 
216a338db78Schristos /* Define to 1 if you have the `OPENSSL_init_crypto' function. */
217*f23adfb5Sprlw1 #define HAVE_OPENSSL_INIT_CRYPTO 1
218a338db78Schristos 
219a338db78Schristos /* Define to 1 if you have the `OPENSSL_init_ssl' function. */
220*f23adfb5Sprlw1 #define HAVE_OPENSSL_INIT_SSL 1
221a338db78Schristos 
222a338db78Schristos /* Define to 1 if you have the <openssl/rand.h> header file. */
223a338db78Schristos #define HAVE_OPENSSL_RAND_H 1
224a338db78Schristos 
225a338db78Schristos /* Define to 1 if you have the <openssl/ssl.h> header file. */
226a338db78Schristos #define HAVE_OPENSSL_SSL_H 1
227a338db78Schristos 
228a338db78Schristos /* Define to 1 if you have the `ppoll' function. */
229a338db78Schristos /* #undef HAVE_PPOLL */
230a338db78Schristos 
231a338db78Schristos /* Define to 1 if you have the `pselect' function. */
232a338db78Schristos #define HAVE_PSELECT 1
233a338db78Schristos 
234a338db78Schristos /* if sys/select.h provides pselect prototype */
235a338db78Schristos #define HAVE_PSELECT_PROTO 1
236a338db78Schristos 
237a338db78Schristos /* Define to 1 if you have the `pwrite' function. */
238a338db78Schristos #define HAVE_PWRITE 1
239a338db78Schristos 
240a338db78Schristos /* Define to 1 if you have the `reallocarray' function. */
241a338db78Schristos #define HAVE_REALLOCARRAY 1
242a338db78Schristos 
243a338db78Schristos /* Define if recvmmsg is implemented */
244a338db78Schristos #define HAVE_RECVMMSG 1
245a338db78Schristos 
246a338db78Schristos /* Define if sendmmsg is implemented */
247a338db78Schristos #define HAVE_SENDMMSG 1
248a338db78Schristos 
249a338db78Schristos /* Define to 1 if you have the `setregid' function. */
250a338db78Schristos #define HAVE_SETREGID 1
251a338db78Schristos 
252a338db78Schristos /* Define to 1 if you have the `setresgid' function. */
253a338db78Schristos /* #undef HAVE_SETRESGID */
254a338db78Schristos 
255a338db78Schristos /* Define to 1 if you have the `setresuid' function. */
256a338db78Schristos /* #undef HAVE_SETRESUID */
257a338db78Schristos 
258a338db78Schristos /* Define to 1 if you have the `setreuid' function. */
259a338db78Schristos #define HAVE_SETREUID 1
260a338db78Schristos 
261a338db78Schristos /* Define to 1 if you have the `setusercontext' function. */
262a338db78Schristos #define HAVE_SETUSERCONTEXT 1
263a338db78Schristos 
264a338db78Schristos /* Define to 1 if you have the `sigaction' function. */
265a338db78Schristos #define HAVE_SIGACTION 1
266a338db78Schristos 
267a338db78Schristos /* Define to 1 if you have the <signal.h> header file. */
268a338db78Schristos #define HAVE_SIGNAL_H 1
269a338db78Schristos 
270a338db78Schristos /* Define to 1 if you have the `sigprocmask' function. */
271a338db78Schristos #define HAVE_SIGPROCMASK 1
272a338db78Schristos 
273a338db78Schristos /* Define to 1 if you have the `snprintf' function. */
274a338db78Schristos #define HAVE_SNPRINTF 1
275a338db78Schristos 
276a338db78Schristos /* Define to 1 if you have the `socket' function. */
277a338db78Schristos #define HAVE_SOCKET 1
278a338db78Schristos 
279a338db78Schristos /* Define if you have the SSL libraries installed. */
280a338db78Schristos #define HAVE_SSL /**/
281a338db78Schristos 
282a338db78Schristos /* Define to 1 if you have the <stdarg.h> header file. */
283a338db78Schristos #define HAVE_STDARG_H 1
284a338db78Schristos 
285a338db78Schristos /* Define to 1 if you have the <stddef.h> header file. */
286a338db78Schristos #define HAVE_STDDEF_H 1
287a338db78Schristos 
288a338db78Schristos /* Define to 1 if you have the <stdint.h> header file. */
289a338db78Schristos #define HAVE_STDINT_H 1
290a338db78Schristos 
291a338db78Schristos /* Define to 1 if you have the <stdlib.h> header file. */
292a338db78Schristos #define HAVE_STDLIB_H 1
293a338db78Schristos 
294a338db78Schristos /* Define to 1 if you have the `strcasecmp' function. */
295a338db78Schristos #define HAVE_STRCASECMP 1
296a338db78Schristos 
297a338db78Schristos /* Define to 1 if you have the `strchr' function. */
298a338db78Schristos #define HAVE_STRCHR 1
299a338db78Schristos 
300a338db78Schristos /* Define to 1 if you have the `strdup' function. */
301a338db78Schristos #define HAVE_STRDUP 1
302a338db78Schristos 
303a338db78Schristos /* Define to 1 if you have the `strerror' function. */
304a338db78Schristos #define HAVE_STRERROR 1
305a338db78Schristos 
306a338db78Schristos /* Define to 1 if you have the `strftime' function. */
307a338db78Schristos #define HAVE_STRFTIME 1
308a338db78Schristos 
309a338db78Schristos /* Define to 1 if you have the <strings.h> header file. */
310a338db78Schristos #define HAVE_STRINGS_H 1
311a338db78Schristos 
312a338db78Schristos /* Define to 1 if you have the <string.h> header file. */
313a338db78Schristos #define HAVE_STRING_H 1
314a338db78Schristos 
315a338db78Schristos /* Define to 1 if you have the `strlcat' function. */
316a338db78Schristos #define HAVE_STRLCAT 1
317a338db78Schristos 
318a338db78Schristos /* Define to 1 if you have the `strlcpy' function. */
319a338db78Schristos #define HAVE_STRLCPY 1
320a338db78Schristos 
321a338db78Schristos /* Define to 1 if you have the `strncasecmp' function. */
322a338db78Schristos #define HAVE_STRNCASECMP 1
323a338db78Schristos 
324a338db78Schristos /* Define to 1 if you have the `strptime' function. */
325a338db78Schristos #define HAVE_STRPTIME 1
326a338db78Schristos 
327a338db78Schristos /* Define to 1 if you have the `strtol' function. */
328a338db78Schristos #define HAVE_STRTOL 1
329a338db78Schristos 
330885624e8Schristos /* Define to 1 if `sun_len' is a member of `struct sockaddr_un'. */
331885624e8Schristos #define HAVE_STRUCT_SOCKADDR_UN_SUN_LEN 1
332885624e8Schristos 
333a338db78Schristos /* Define to 1 if `st_mtimensec' is a member of `struct stat'. */
334a338db78Schristos #define HAVE_STRUCT_STAT_ST_MTIMENSEC 1
335a338db78Schristos 
336a338db78Schristos /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */
337a338db78Schristos #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
338a338db78Schristos 
339a338db78Schristos /* If time.h has a struct timespec (for pselect). */
340a338db78Schristos #define HAVE_STRUCT_TIMESPEC 1
341a338db78Schristos 
342a338db78Schristos /* Define to 1 if you have the <syslog.h> header file. */
343a338db78Schristos #define HAVE_SYSLOG_H 1
344a338db78Schristos 
345a338db78Schristos /* Define to 1 if you have the <sys/bitypes.h> header file. */
346a338db78Schristos /* #undef HAVE_SYS_BITYPES_H */
347a338db78Schristos 
348a338db78Schristos /* Define to 1 if you have the <sys/mman.h> header file. */
349a338db78Schristos /* #undef HAVE_SYS_MMAN_H */
350a338db78Schristos 
351a338db78Schristos /* Define to 1 if you have the <sys/param.h> header file. */
352a338db78Schristos #define HAVE_SYS_PARAM_H 1
353a338db78Schristos 
354a338db78Schristos /* Define to 1 if you have the <sys/select.h> header file. */
355a338db78Schristos #define HAVE_SYS_SELECT_H 1
356a338db78Schristos 
357a338db78Schristos /* Define to 1 if you have the <sys/socket.h> header file. */
358a338db78Schristos #define HAVE_SYS_SOCKET_H 1
359a338db78Schristos 
360a338db78Schristos /* Define to 1 if you have the <sys/stat.h> header file. */
361a338db78Schristos #define HAVE_SYS_STAT_H 1
362a338db78Schristos 
363a338db78Schristos /* Define to 1 if you have the <sys/types.h> header file. */
364a338db78Schristos #define HAVE_SYS_TYPES_H 1
365a338db78Schristos 
366885624e8Schristos /* Define to 1 if you have the <sys/un.h> header file. */
367885624e8Schristos #define HAVE_SYS_UN_H 1
368885624e8Schristos 
369a338db78Schristos /* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */
370a338db78Schristos #define HAVE_SYS_WAIT_H 1
371a338db78Schristos 
372a338db78Schristos /* Define to 1 if you have the <tcpd.h> header file. */
373a338db78Schristos #define HAVE_TCPD_H 1
374a338db78Schristos 
375a338db78Schristos /* Define to 1 if you have the <time.h> header file. */
376a338db78Schristos #define HAVE_TIME_H 1
377a338db78Schristos 
378a338db78Schristos /* Define to 1 if you have the `tzset' function. */
379a338db78Schristos #define HAVE_TZSET 1
380a338db78Schristos 
381a338db78Schristos /* Define to 1 if you have the <unistd.h> header file. */
382a338db78Schristos #define HAVE_UNISTD_H 1
383a338db78Schristos 
384a338db78Schristos /* Define this if you have double va_list definitions. */
385a338db78Schristos /* #undef HAVE_VA_LIST_DOUBLE_DEF */
386a338db78Schristos 
387a338db78Schristos /* Define to 1 if you have the `vfork' function. */
388a338db78Schristos #define HAVE_VFORK 1
389a338db78Schristos 
390a338db78Schristos /* Define to 1 if you have the <vfork.h> header file. */
391a338db78Schristos /* #undef HAVE_VFORK_H */
392a338db78Schristos 
393a338db78Schristos /* Define to 1 if `fork' works. */
394a338db78Schristos #define HAVE_WORKING_FORK 1
395a338db78Schristos 
396a338db78Schristos /* Define to 1 if `vfork' works. */
397a338db78Schristos #define HAVE_WORKING_VFORK 1
398a338db78Schristos 
399a338db78Schristos /* Define to 1 if you have the `writev' function. */
400a338db78Schristos #define HAVE_WRITEV 1
401a338db78Schristos 
402a338db78Schristos /* Define to the default nsd identity. */
403a338db78Schristos #define IDENTITY "NetBSD server"
404a338db78Schristos 
405a338db78Schristos #ifdef notdef
406a338db78Schristos /* Define this to enable IPv6 support. */
407a338db78Schristos #define INET6 /**/
408a338db78Schristos #endif
409a338db78Schristos 
410a338db78Schristos /* If flex defines yy_current_buffer as a macro */
411a338db78Schristos /* #undef LEX_DEFINES_YY_CURRENT_BUFFER */
412a338db78Schristos 
413a338db78Schristos /* Define to the maximum message length to pass to syslog. */
414a338db78Schristos #define MAXSYSLOGMSGLEN 512
415a338db78Schristos 
416885624e8Schristos /* Define this to cleanup memory at exit (eg. for valgrind, etc.) */
417885624e8Schristos /* #undef MEMCLEAN */
418885624e8Schristos 
419a338db78Schristos /* Define if memcmp() does not compare unsigned bytes */
420a338db78Schristos /* #undef MEMCMP_IS_BROKEN */
421a338db78Schristos 
422a338db78Schristos /* Define this to enable response minimalization to reduce truncation. */
423a338db78Schristos #define MINIMAL_RESPONSES /**/
424a338db78Schristos 
425a338db78Schristos /* Define if mkdir has one argument. */
426a338db78Schristos /* #undef MKDIR_HAS_ONE_ARG */
427a338db78Schristos 
428a338db78Schristos /* Undefine this to enable internal runtime checks. */
429a338db78Schristos #define NDEBUG /**/
430a338db78Schristos 
431a338db78Schristos /* Define if the network stack does not fully support nonblocking io (causes
432a338db78Schristos    lower performance). */
433a338db78Schristos /* #undef NONBLOCKING_IS_BROKEN */
434a338db78Schristos 
435a338db78Schristos /* Define to the default nsd-control port. */
436a338db78Schristos #define NSD_CONTROL_PORT 8952
437a338db78Schristos 
438a338db78Schristos /* Define to nsd-control proto version. */
439a338db78Schristos #define NSD_CONTROL_VERSION 1
440a338db78Schristos 
441a338db78Schristos /* Pathname to start nsd from nsd-control */
442a338db78Schristos #define NSD_START_PATH "/usr/sbin/nsd"
443a338db78Schristos 
444a338db78Schristos /* Define this to enable NSEC3 support. */
445a338db78Schristos #define NSEC3 /**/
446a338db78Schristos 
447a338db78Schristos /* Define to the address where bug reports for this package should be sent. */
448a338db78Schristos #define PACKAGE_BUGREPORT "nsd-bugs@nlnetlabs.nl"
449a338db78Schristos 
450a338db78Schristos /* Define to the full name of this package. */
451a338db78Schristos #define PACKAGE_NAME "NSD"
452a338db78Schristos 
453a338db78Schristos /* Define to the full name and version of this package. */
454*f23adfb5Sprlw1 #define PACKAGE_STRING "NSD 4.1.26"
455a338db78Schristos 
456a338db78Schristos /* Define to the one symbol short name of this package. */
457a338db78Schristos #define PACKAGE_TARNAME "nsd"
458a338db78Schristos 
459a338db78Schristos /* Define to the home page for this package. */
460a338db78Schristos #define PACKAGE_URL ""
461a338db78Schristos 
462a338db78Schristos /* Define to the version of this package. */
463*f23adfb5Sprlw1 #define PACKAGE_VERSION "4.1.26"
464ff84eb62Schristos 
465ff84eb62Schristos /* Define this to use packed structure alignment. */
466ff84eb62Schristos /* #undef PACKED_STRUCTS */
467a338db78Schristos 
468a338db78Schristos /* Pathname to the NSD pidfile */
469a338db78Schristos #define PIDFILE CHROOTDIR "/var/run/nsd.pid"
470a338db78Schristos 
471a338db78Schristos /* Define this to enable rate limiting. */
472a338db78Schristos #define RATELIMIT 1
473a338db78Schristos 
474a338db78Schristos /* Define this to set ratelimit to off by default. */
475a338db78Schristos /* #undef RATELIMIT_DEFAULT_OFF */
476a338db78Schristos 
477a338db78Schristos /* Define as the return type of signal handlers (`int' or `void'). */
478a338db78Schristos #define RETSIGTYPE void
479a338db78Schristos 
480a338db78Schristos /* Define this to configure as a root server. */
481a338db78Schristos /* #undef ROOT_SERVER */
482a338db78Schristos 
483a338db78Schristos /* The size of `off_t', as computed by sizeof. */
484a338db78Schristos #define SIZEOF_OFF_T 8
485a338db78Schristos 
486a338db78Schristos /* The size of `void*', as computed by sizeof. */
487a338db78Schristos #define SIZEOF_VOIDP 8
488a338db78Schristos 
489a338db78Schristos /* Define to 1 if you have the ANSI C header files. */
490a338db78Schristos #define STDC_HEADERS 1
491a338db78Schristos 
492a338db78Schristos /* strptime is available from time.h with some defines. */
493a338db78Schristos /* #undef STRPTIME_NEEDS_DEFINES */
494a338db78Schristos 
495a338db78Schristos /* use default strptime. */
496a338db78Schristos #define STRPTIME_WORKS 1
497a338db78Schristos 
498a338db78Schristos /* Define to the backlog to be used with listen. */
499a338db78Schristos #define TCP_BACKLOG 256
500a338db78Schristos 
501a338db78Schristos /* Define to the default maximum message length. */
502a338db78Schristos #define TCP_MAX_MESSAGE_LEN 65535
503a338db78Schristos 
504a338db78Schristos /* Define to the default tcp port. */
505a338db78Schristos #define TCP_PORT "53"
506a338db78Schristos 
507a338db78Schristos /* Define to the default tcp timeout. */
508a338db78Schristos #define TCP_TIMEOUT 120
509a338db78Schristos 
510a338db78Schristos /* Define to the default maximum udp message length. */
511a338db78Schristos #define UDP_MAX_MESSAGE_LEN 512
512a338db78Schristos 
513a338db78Schristos /* Define to the default udp port. */
514a338db78Schristos #define UDP_PORT "53"
515a338db78Schristos 
516a338db78Schristos /* the user name to drop privileges to */
517a338db78Schristos #define USER "_nsd"
518a338db78Schristos 
519*f23adfb5Sprlw1 /* Define to 1 to enable dnstap support */
520*f23adfb5Sprlw1 /* #undef USE_DNSTAP */
521*f23adfb5Sprlw1 
522a338db78Schristos /* Define if you want to use internal select based events */
523a338db78Schristos /* #undef USE_MINI_EVENT */
524a338db78Schristos 
525a338db78Schristos /* Define this to enable mmap instead of malloc. Experimental. */
526a338db78Schristos /* #undef USE_MMAP_ALLOC */
527a338db78Schristos 
528a338db78Schristos /* Define this to configure to use the radix tree. */
529a338db78Schristos #define USE_RADIX_TREE /**/
530a338db78Schristos 
531a338db78Schristos /* Enable extensions on AIX 3, Interix.  */
532a338db78Schristos #ifndef _ALL_SOURCE
533a338db78Schristos # define _ALL_SOURCE 1
534a338db78Schristos #endif
535a338db78Schristos /* Enable GNU extensions on systems that have them.  */
536a338db78Schristos #ifndef _GNU_SOURCE
537a338db78Schristos # define _GNU_SOURCE 1
538a338db78Schristos #endif
539a338db78Schristos /* Enable threading extensions on Solaris.  */
540a338db78Schristos #ifndef _POSIX_PTHREAD_SEMANTICS
541a338db78Schristos # define _POSIX_PTHREAD_SEMANTICS 1
542a338db78Schristos #endif
543a338db78Schristos /* Enable extensions on HP NonStop.  */
544a338db78Schristos #ifndef _TANDEM_SOURCE
545a338db78Schristos # define _TANDEM_SOURCE 1
546a338db78Schristos #endif
547a338db78Schristos /* Enable general extensions on Solaris.  */
548a338db78Schristos #ifndef __EXTENSIONS__
549a338db78Schristos # define __EXTENSIONS__ 1
550a338db78Schristos #endif
551a338db78Schristos 
552a338db78Schristos 
553a338db78Schristos /* Define this to enable per-zone statistics gathering. */
554a338db78Schristos /* #undef USE_ZONE_STATS */
555a338db78Schristos 
556a338db78Schristos /* Define to the NSD version to answer version.server query. */
557a338db78Schristos #define VERSION PACKAGE_STRING
558a338db78Schristos 
559a338db78Schristos /* Pathname to the NSD xfrd zone timer state file. */
560a338db78Schristos #define XFRDFILE CHROOTDIR "/var/db/nsd/xfrd.state"
561a338db78Schristos 
562a338db78Schristos /* Pathname to where the NSD transfer dir is created. */
563a338db78Schristos #define XFRDIR CHROOTDIR "/var/tmp"
564a338db78Schristos 
565a338db78Schristos /* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a
566a338db78Schristos    `char[]'. */
567a338db78Schristos #define YYTEXT_POINTER 1
568a338db78Schristos 
569a338db78Schristos /* Pathname to the NSD zone list file. */
570a338db78Schristos #define ZONELISTFILE CHROOTDIR "/var/db/nsd/zone.list"
571a338db78Schristos 
572a338db78Schristos /* NSD default location for zone files. Empty string or NULL to disable. */
573a338db78Schristos #define ZONESDIR CHROOTDIR "/etc/nsd"
574a338db78Schristos 
575a338db78Schristos /* Enable large inode numbers on Mac OS X 10.5.  */
576a338db78Schristos #ifndef _DARWIN_USE_64_BIT_INODE
577a338db78Schristos # define _DARWIN_USE_64_BIT_INODE 1
578a338db78Schristos #endif
579a338db78Schristos 
580a338db78Schristos /* Number of bits in a file offset, on hosts where this is settable. */
581a338db78Schristos /* #undef _FILE_OFFSET_BITS */
582a338db78Schristos 
583a338db78Schristos /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */
584a338db78Schristos /* #undef _LARGEFILE_SOURCE */
585a338db78Schristos 
586a338db78Schristos /* Define for large files, on AIX-style hosts. */
587a338db78Schristos /* #undef _LARGE_FILES */
588a338db78Schristos 
589a338db78Schristos /* Define to 1 if on MINIX. */
590a338db78Schristos /* #undef _MINIX */
591a338db78Schristos 
592a338db78Schristos /* Enable for compile on Minix */
593a338db78Schristos /* #undef _NETBSD_SOURCE */
594a338db78Schristos 
595a338db78Schristos /* Define to 2 if the system does not provide POSIX.1 features except with
596a338db78Schristos    this defined. */
597a338db78Schristos /* #undef _POSIX_1_SOURCE */
598a338db78Schristos 
599a338db78Schristos /* Define to 1 if you need to in order for `stat' and other things to work. */
600a338db78Schristos /* #undef _POSIX_SOURCE */
601a338db78Schristos 
602a338db78Schristos /* Define to empty if `const' does not conform to ANSI C. */
603a338db78Schristos /* #undef const */
604a338db78Schristos 
605a338db78Schristos /* Define to `int' if <sys/types.h> doesn't define. */
606a338db78Schristos /* #undef gid_t */
607a338db78Schristos 
608a338db78Schristos /* in_addr_t */
609a338db78Schristos /* #undef in_addr_t */
610a338db78Schristos 
611a338db78Schristos /* Define to `__inline__' or `__inline' if that's what the C compiler
612a338db78Schristos    calls it, or to nothing if 'inline' is not supported under any name.  */
613a338db78Schristos #ifndef __cplusplus
614a338db78Schristos /* #undef inline */
615a338db78Schristos #endif
616a338db78Schristos 
617a338db78Schristos /* Define "int16_t" to "short" if "int16_t" is missing */
618a338db78Schristos /* #undef int16_t */
619a338db78Schristos 
620a338db78Schristos /* Define "int32_t" to "int" if "int32_t" is missing */
621a338db78Schristos /* #undef int32_t */
622a338db78Schristos 
623a338db78Schristos /* Define "int64_t" to "long long" if "int64_t" is missing */
624a338db78Schristos /* #undef int64_t */
625a338db78Schristos 
626a338db78Schristos /* Define "int8_t" to "char" if "int8_t" is missing */
627a338db78Schristos /* #undef int8_t */
628a338db78Schristos 
629a338db78Schristos /* Define to rpl_malloc if the replacement function should be used. */
630a338db78Schristos /* #undef malloc */
631a338db78Schristos 
632a338db78Schristos /* Define to `long int' if <sys/types.h> does not define. */
633a338db78Schristos /* #undef off_t */
634a338db78Schristos 
635a338db78Schristos /* Define to `int' if <sys/types.h> does not define. */
636a338db78Schristos /* #undef pid_t */
637a338db78Schristos 
638a338db78Schristos /* Define "sig_atomic_t" to "int" if "sig_atomic_t" is missing */
639a338db78Schristos /* #undef sig_atomic_t */
640a338db78Schristos 
641a338db78Schristos /* Define to `unsigned int' if <sys/types.h> does not define. */
642a338db78Schristos /* #undef size_t */
643a338db78Schristos 
644a338db78Schristos /* Define "socklen_t" to "int" if "socklen_t" is missing */
645a338db78Schristos /* #undef socklen_t */
646a338db78Schristos 
647a338db78Schristos /* Fallback member name for socket family in struct sockaddr_storage */
648a338db78Schristos /* #undef ss_family */
649a338db78Schristos 
650a338db78Schristos /* Define "ssize_t" to "int" if "ssize_t" is missing */
651a338db78Schristos /* #undef ssize_t */
652a338db78Schristos 
653a338db78Schristos /* Define "suseconds_t" to "time_t" if "suseconds_t" is missing */
654a338db78Schristos /* #undef suseconds_t */
655a338db78Schristos 
656a338db78Schristos /* Define to `int' if <sys/types.h> doesn't define. */
657a338db78Schristos /* #undef uid_t */
658a338db78Schristos 
659a338db78Schristos /* Define "uint16_t" to "unsigned short" if "uint16_t" is missing */
660a338db78Schristos /* #undef uint16_t */
661a338db78Schristos 
662a338db78Schristos /* Define "uint32_t" to "unsigned int" if "uint32_t" is missing */
663a338db78Schristos /* #undef uint32_t */
664a338db78Schristos 
665a338db78Schristos /* Define "uint64_t" to "unsigned long long" if "uint64_t" is missing */
666a338db78Schristos /* #undef uint64_t */
667a338db78Schristos 
668a338db78Schristos /* Define "uint8_t" to "unsigned char" if "uint8_t" is missing */
669a338db78Schristos /* #undef uint8_t */
670a338db78Schristos 
671a338db78Schristos /* Define "uintptr_t" to "void*" if "uintptr_t" is missing */
672a338db78Schristos /* #undef uintptr_t */
673a338db78Schristos 
674a338db78Schristos /* Define as `fork' if `vfork' does not work. */
675a338db78Schristos /* #undef vfork */
676a338db78Schristos 
677a338db78Schristos 
678a338db78Schristos /* define before includes as it specifies what standard to use. */
679a338db78Schristos #if (defined(HAVE_PSELECT) && !defined (HAVE_PSELECT_PROTO)) \
680a338db78Schristos 	|| !defined (HAVE_CTIME_R_PROTO) \
681a338db78Schristos 	|| defined (STRPTIME_NEEDS_DEFINES)
682a338db78Schristos #  ifndef _XOPEN_SOURCE
683a338db78Schristos #    define _XOPEN_SOURCE 600
684a338db78Schristos #  endif
685a338db78Schristos #  ifndef _POSIX_C_SOURCE
686a338db78Schristos #    define _POSIX_C_SOURCE 200112
687a338db78Schristos #  endif
688a338db78Schristos #  ifndef _BSD_SOURCE
689a338db78Schristos #    define _BSD_SOURCE 1
690a338db78Schristos #  endif
691a338db78Schristos #  ifndef _DEFAULT_SOURCE
692a338db78Schristos #    define _DEFAULT_SOURCE 1
693a338db78Schristos #  endif
694a338db78Schristos #  ifndef __EXTENSIONS__
695a338db78Schristos #    define __EXTENSIONS__ 1
696a338db78Schristos #  endif
697a338db78Schristos #  ifndef _STDC_C99
698a338db78Schristos #    define _STDC_C99 1
699a338db78Schristos #  endif
700a338db78Schristos #  ifndef _ALL_SOURCE
701a338db78Schristos #    define _ALL_SOURCE 1
702a338db78Schristos #  endif
703a338db78Schristos #endif
704a338db78Schristos 
705a338db78Schristos 
706a338db78Schristos 
707a338db78Schristos #ifdef HAVE_VA_LIST_DOUBLE_DEF
708a338db78Schristos /* workaround double va_list definition on some platforms */
709a338db78Schristos #  ifndef _VA_LIST_DEFINED
710a338db78Schristos #    define _VA_LIST_DEFINED
711a338db78Schristos #  endif
712a338db78Schristos #endif
713a338db78Schristos 
714a338db78Schristos 
715a338db78Schristos 
716a338db78Schristos #include <sys/types.h>
717a338db78Schristos #if STDC_HEADERS
718a338db78Schristos #include <stdlib.h>
719a338db78Schristos #include <stddef.h>
720a338db78Schristos #endif
721a338db78Schristos 
722a338db78Schristos #ifdef HAVE_TIME_H
723a338db78Schristos #include <time.h>
724a338db78Schristos #endif
725a338db78Schristos 
726a338db78Schristos #ifdef HAVE_STDINT_H
727a338db78Schristos #include <stdint.h>
728a338db78Schristos #endif
729a338db78Schristos 
730a338db78Schristos #ifdef HAVE_SYS_SOCKET_H
731a338db78Schristos #include <sys/socket.h>
732a338db78Schristos #endif
733a338db78Schristos 
734a338db78Schristos #ifdef HAVE_NETINET_IN_H
735a338db78Schristos #include <netinet/in.h>
736a338db78Schristos #endif
737a338db78Schristos 
738a338db78Schristos #ifdef HAVE_NETINET_TCP_H
739a338db78Schristos #include <netinet/tcp.h>
740a338db78Schristos #endif
741a338db78Schristos 
742a338db78Schristos #ifdef HAVE_ARPA_INET_H
743a338db78Schristos #include <arpa/inet.h>
744a338db78Schristos #endif
745a338db78Schristos 
746a338db78Schristos /* For Tru64 */
747a338db78Schristos #ifdef HAVE_SYS_BITYPES_H
748a338db78Schristos #include <sys/bitypes.h>
749a338db78Schristos #endif
750a338db78Schristos 
751a338db78Schristos 
752a338db78Schristos 
753a338db78Schristos #ifdef HAVE_ATTR_FORMAT
754a338db78Schristos #define ATTR_FORMAT(archetype, string_index, first_to_check) \
755a338db78Schristos     __attribute__ ((format (archetype, string_index, first_to_check)))
756a338db78Schristos #else /* !HAVE_ATTR_FORMAT */
757a338db78Schristos #define ATTR_FORMAT(archetype, string_index, first_to_check) /* empty */
758a338db78Schristos #endif /* !HAVE_ATTR_FORMAT */
759a338db78Schristos #if defined(__cplusplus)
760a338db78Schristos #define ATTR_UNUSED(x)
761a338db78Schristos #elif defined(HAVE_ATTR_UNUSED)
762a338db78Schristos #define ATTR_UNUSED(x)  x __attribute__((unused))
763a338db78Schristos #else /* !HAVE_ATTR_UNUSED */
764a338db78Schristos #define ATTR_UNUSED(x)  x
765a338db78Schristos #endif /* !HAVE_ATTR_UNUSED */
766a338db78Schristos 
767a338db78Schristos 
768a338db78Schristos 
769a338db78Schristos #ifndef IPV6_MIN_MTU
770a338db78Schristos #define IPV6_MIN_MTU 1280
771a338db78Schristos #endif /* IPV6_MIN_MTU */
772a338db78Schristos 
773a338db78Schristos #ifndef AF_INET6
774a338db78Schristos #define AF_INET6	28
775a338db78Schristos #endif /* AF_INET6 */
776a338db78Schristos 
777a338db78Schristos 
778a338db78Schristos 
779a338db78Schristos /* maximum nesting of included files */
780a338db78Schristos #define MAXINCLUDES 10
781a338db78Schristos 
782a338db78Schristos 
783a338db78Schristos 
784a338db78Schristos #ifndef HAVE_B64_NTOP
785a338db78Schristos int b64_ntop(uint8_t const *src, size_t srclength,
786a338db78Schristos 	     char *target, size_t targsize);
787a338db78Schristos #endif /* !HAVE_B64_NTOP */
788a338db78Schristos #ifndef HAVE_B64_PTON
789a338db78Schristos int b64_pton(char const *src, uint8_t *target, size_t targsize);
790a338db78Schristos #endif /* !HAVE_B64_PTON */
791a338db78Schristos #ifndef HAVE_FSEEKO
792a338db78Schristos #define fseeko fseek
793a338db78Schristos #define ftello ftell
794a338db78Schristos #endif /* HAVE_FSEEKO */
795a338db78Schristos #ifndef HAVE_SNPRINTF
796a338db78Schristos #include <stdarg.h>
797a338db78Schristos int snprintf (char *str, size_t count, const char *fmt, ...);
798a338db78Schristos int vsnprintf (char *str, size_t count, const char *fmt, va_list arg);
799a338db78Schristos #endif /* HAVE_SNPRINTF */
800a338db78Schristos #ifndef HAVE_INET_PTON
801a338db78Schristos int inet_pton(int af, const char* src, void* dst);
802a338db78Schristos #endif /* HAVE_INET_PTON */
803a338db78Schristos #ifndef HAVE_INET_NTOP
804a338db78Schristos const char *inet_ntop(int af, const void *src, char *dst, size_t size);
805a338db78Schristos #endif
806a338db78Schristos #ifndef HAVE_INET_ATON
807a338db78Schristos int inet_aton(const char *cp, struct in_addr *addr);
808a338db78Schristos #endif
809a338db78Schristos #ifndef HAVE_MEMMOVE
810a338db78Schristos void *memmove(void *dest, const void *src, size_t n);
811a338db78Schristos #endif
812a338db78Schristos #ifndef HAVE_STRLCAT
813a338db78Schristos size_t strlcat(char *dst, const char *src, size_t siz);
814a338db78Schristos #endif
815a338db78Schristos #ifndef HAVE_STRLCPY
816a338db78Schristos size_t strlcpy(char *dst, const char *src, size_t siz);
817a338db78Schristos #endif
818a338db78Schristos #ifndef HAVE_REALLOCARRAY
819a338db78Schristos void* reallocarray(void *ptr, size_t nmemb, size_t size);
820a338db78Schristos #endif
821a338db78Schristos #ifndef HAVE_GETADDRINFO
822a338db78Schristos #include "compat/fake-rfc2553.h"
823a338db78Schristos #endif
824a338db78Schristos #ifndef HAVE_STRPTIME
825a338db78Schristos #define HAVE_STRPTIME 1
826a338db78Schristos char *strptime(const char *s, const char *format, struct tm *tm);
827a338db78Schristos #endif
828a338db78Schristos #ifndef STRPTIME_WORKS
829a338db78Schristos #define STRPTIME_WORKS 1
830a338db78Schristos char *nsd_strptime(const char *s, const char *format, struct tm *tm);
831a338db78Schristos #define strptime(a,b,c) nsd_strptime((a),(b),(c))
832a338db78Schristos #endif
833a338db78Schristos 
834a338db78Schristos 
835a338db78Schristos 
836a338db78Schristos #ifdef MEMCMP_IS_BROKEN
837a338db78Schristos #include "compat/memcmp.h"
838a338db78Schristos #define memcmp memcmp_nsd
839a338db78Schristos int memcmp(const void *x, const void *y, size_t n);
840a338db78Schristos #endif
841a338db78Schristos 
842a338db78Schristos 
843a338db78Schristos #ifndef MAXHOSTNAMELEN
844a338db78Schristos #define MAXHOSTNAMELEN 256
845a338db78Schristos #endif
846a338db78Schristos 
847a338db78Schristos 
848a338db78Schristos 
849a338db78Schristos 
850a338db78Schristos 
851a338db78Schristos /* provide timespec def if not available */
852a338db78Schristos #ifndef CONFIG_DEFINES
853a338db78Schristos #define CONFIG_DEFINES
854a338db78Schristos #ifndef HAVE_STRUCT_TIMESPEC
855a338db78Schristos #ifndef __timespec_defined
856a338db78Schristos #define __timespec_defined 1
857a338db78Schristos 	struct timespec {
858a338db78Schristos 		long    tv_sec;         /* seconds */
859a338db78Schristos 		long    tv_nsec;        /* nanoseconds */
860a338db78Schristos 	};
861a338db78Schristos #endif /* !__timespec_defined */
862a338db78Schristos #endif /* !HAVE_STRUCT_TIMESPEC */
863a338db78Schristos #endif /* !CONFIG_DEFINES */
864a338db78Schristos 
865ff84eb62Schristos #ifdef PACKED_STRUCTS
866ff84eb62Schristos #define ATTR_PACKED __attribute__((__packed__))
867ff84eb62Schristos #else
868ff84eb62Schristos #define ATTR_PACKED
869ff84eb62Schristos #endif
870