xref: /netbsd/external/bsd/nsd/include/config.h (revision cb958623)
1a338db78Schristos /* config.h.  Generated from config.h.in by configure.  */
2a338db78Schristos /* config.h.in.  Generated from configure.ac by autoheader.  */
3a338db78Schristos 
4f23adfb5Sprlw1 /* apply the noreturn attribute to a function that exits the program */
5f23adfb5Sprlw1 #define ATTR_NORETURN __attribute__((__noreturn__))
6f23adfb5Sprlw1 
7*cb958623Schristos /* apply the weak attribute to a symbol */
8*cb958623Schristos #define ATTR_WEAK __attribute__((__weak__))
9*cb958623Schristos 
10a338db78Schristos /* Define this to enable BIND8 like NSTATS & XSTATS. */
11a338db78Schristos #define BIND8_STATS /**/
12a338db78Schristos 
13a338db78Schristos /* NSD default chroot directory */
14a338db78Schristos #define CHROOTDIR "/var/chroot/nsd"
15a338db78Schristos 
166baaaf41Schristos /* Command line arguments used with configure */
176baaaf41Schristos #define CONFCMDLINE ""
186baaaf41Schristos 
19a338db78Schristos /* NSD config dir */
20a338db78Schristos #define CONFIGDIR CHROOTDIR "/etc/nsd"
21a338db78Schristos 
22a338db78Schristos /* Pathname to the NSD configuration file */
23a338db78Schristos #define CONFIGFILE CHROOTDIR "/etc/nsd/nsd.conf"
24a338db78Schristos 
256baaaf41Schristos /* number of arguments for CPU_OR is three */
266baaaf41Schristos /* #undef CPU_OR_THREE_ARGS */
276baaaf41Schristos 
28a338db78Schristos /* Define this if on macOSX10.4-darwin8 and setreuid and setregid do not work
29a338db78Schristos    */
30a338db78Schristos /* #undef DARWIN_BROKEN_SETREUID */
31a338db78Schristos 
32a338db78Schristos /* Pathname to the NSD database */
33a338db78Schristos #define DBFILE CHROOTDIR "/var/db/nsd/nsd.db"
34a338db78Schristos 
35*cb958623Schristos /* Whether ERR_load_SSL_strings is deprecated */
36*cb958623Schristos /* #undef DEPRECATED_ERR_LOAD_SSL_STRINGS */
37*cb958623Schristos 
38*cb958623Schristos /* Whether SHA1_Init is deprecated */
39*cb958623Schristos /* #undef DEPRECATED_SHA1_INIT */
40*cb958623Schristos 
41f23adfb5Sprlw1 /* default dnstap socket path */
42f23adfb5Sprlw1 /* #undef DNSTAP_SOCKET_PATH */
43f23adfb5Sprlw1 
44a338db78Schristos /* Define to the default maximum message length with EDNS. */
456baaaf41Schristos #define EDNS_MAX_MESSAGE_LEN 1232
46a338db78Schristos 
47a338db78Schristos /* Define to the default facility for syslog. */
48a338db78Schristos #define FACILITY LOG_DAEMON
49a338db78Schristos 
50885624e8Schristos /* Define to 1 if you have the `accept4' function. */
51885624e8Schristos #define HAVE_ACCEPT4 1
52885624e8Schristos 
53a338db78Schristos /* Define to 1 if you have the `alarm' function. */
54a338db78Schristos #define HAVE_ALARM 1
55a338db78Schristos 
56a338db78Schristos /* Define to 1 if you have the `arc4random' function. */
57a338db78Schristos #define HAVE_ARC4RANDOM 1
58a338db78Schristos 
59a338db78Schristos /* Define to 1 if you have the `arc4random_uniform' function. */
60a338db78Schristos #define HAVE_ARC4RANDOM_UNIFORM 1
61a338db78Schristos 
62a338db78Schristos /* Define to 1 if you have the <arpa/inet.h> header file. */
63a338db78Schristos #define HAVE_ARPA_INET_H 1
64a338db78Schristos 
65a338db78Schristos /* Whether the C compiler accepts the "format" attribute */
66a338db78Schristos #define HAVE_ATTR_FORMAT 1
67a338db78Schristos 
68f23adfb5Sprlw1 /* Whether the C compiler accepts the "noreturn" attribute */
69f23adfb5Sprlw1 #define HAVE_ATTR_NORETURN 1
70f23adfb5Sprlw1 
71a338db78Schristos /* Whether the C compiler accepts the "unused" attribute */
72a338db78Schristos #define HAVE_ATTR_UNUSED 1
73a338db78Schristos 
74*cb958623Schristos /* Whether the C compiler accepts the "weak" attribute */
75*cb958623Schristos #define HAVE_ATTR_WEAK 1
76*cb958623Schristos 
77a338db78Schristos /* Define to 1 if you have the `b64_ntop' function. */
78a338db78Schristos /* #undef HAVE_B64_NTOP */
79a338db78Schristos 
80a338db78Schristos /* Define to 1 if you have the `b64_pton' function. */
81a338db78Schristos /* #undef HAVE_B64_PTON */
82a338db78Schristos 
83a338db78Schristos /* Define to 1 if you have the `basename' function. */
84a338db78Schristos #define HAVE_BASENAME 1
85a338db78Schristos 
86a338db78Schristos /* Define to 1 if your system has a working `chown' function. */
87a338db78Schristos #define HAVE_CHOWN 1
88a338db78Schristos 
89a338db78Schristos /* Define to 1 if you have the `chroot' function. */
90a338db78Schristos #define HAVE_CHROOT 1
91a338db78Schristos 
92a338db78Schristos /* Define to 1 if you have the `clock_gettime' function. */
93a338db78Schristos #define HAVE_CLOCK_GETTIME 1
94a338db78Schristos 
956baaaf41Schristos /* Define to 1 if the system has the type `cpuid_t'. */
966baaaf41Schristos #define HAVE_CPUID_T 1
976baaaf41Schristos 
986baaaf41Schristos /* Define to 1 if the system has the type `cpuset_t'. */
996baaaf41Schristos /* #undef HAVE_CPUSET_T */
1006baaaf41Schristos 
1016baaaf41Schristos /* Define to 1 if the system has the type `cpu_set_t'. */
1026baaaf41Schristos /* #undef HAVE_CPU_SET_T */
1036baaaf41Schristos 
104e8c1c0b8Schristos /* Define to 1 if you have the `CRYPTO_memcmp' function. */
105e8c1c0b8Schristos #define HAVE_CRYPTO_MEMCMP 1
106e8c1c0b8Schristos 
107a338db78Schristos /* if time.h provides ctime_r prototype */
108a338db78Schristos #define HAVE_CTIME_R_PROTO 1
109a338db78Schristos 
1106baaaf41Schristos /* Define to 1 if you have the declaration of `reallocarray', and to 0 if you
1116baaaf41Schristos    don't. */
1126baaaf41Schristos #define HAVE_DECL_REALLOCARRAY 0
1136baaaf41Schristos 
114e8c1c0b8Schristos /* Define to 1 if you have the declaration of `SSL_CTX_set_ecdh_auto', and to
115e8c1c0b8Schristos    0 if you don't. */
116e8c1c0b8Schristos #define HAVE_DECL_SSL_CTX_SET_ECDH_AUTO 1
117e8c1c0b8Schristos 
118e8c1c0b8Schristos /* Define to 1 if you have the declaration of `SSL_CTX_set_tmp_ecdh', and to 0
119e8c1c0b8Schristos    if you don't. */
120e8c1c0b8Schristos #define HAVE_DECL_SSL_CTX_SET_TMP_ECDH 1
121e8c1c0b8Schristos 
122a338db78Schristos /* Define to 1 if you have the `dup2' function. */
123a338db78Schristos #define HAVE_DUP2 1
124a338db78Schristos 
125e8c1c0b8Schristos /* Define to 1 if you have the `EC_KEY_new_by_curve_name' function. */
126e8c1c0b8Schristos #define HAVE_EC_KEY_NEW_BY_CURVE_NAME 1
127e8c1c0b8Schristos 
128a338db78Schristos /* Define to 1 if you have the <endian.h> header file. */
129885624e8Schristos #define HAVE_ENDIAN_H 1
130a338db78Schristos 
131a338db78Schristos /* Define to 1 if you have the `endpwent' function. */
132a338db78Schristos #define HAVE_ENDPWENT 1
133a338db78Schristos 
134a338db78Schristos /* Define to 1 if you have the `ERR_load_crypto_strings' function. */
135f23adfb5Sprlw1 /* #undef HAVE_ERR_LOAD_CRYPTO_STRINGS */
136a338db78Schristos 
137*cb958623Schristos /* Define to 1 if you have the `ERR_load_SSL_strings' function. */
138*cb958623Schristos #define HAVE_ERR_LOAD_SSL_STRINGS 1
139*cb958623Schristos 
140a338db78Schristos /* Define to 1 if you have the `event_base_free' function. */
141a338db78Schristos #define HAVE_EVENT_BASE_FREE 1
142a338db78Schristos 
143a338db78Schristos /* Define to 1 if you have the `event_base_get_method' function. */
144a338db78Schristos #define HAVE_EVENT_BASE_GET_METHOD 1
145a338db78Schristos 
146a338db78Schristos /* Define to 1 if you have the `event_base_new' function. */
147a338db78Schristos #define HAVE_EVENT_BASE_NEW 1
148a338db78Schristos 
149a338db78Schristos /* Define to 1 if you have the `event_base_once' function. */
150a338db78Schristos #define HAVE_EVENT_BASE_ONCE 1
151a338db78Schristos 
152a338db78Schristos /* Define to 1 if you have the <event.h> header file. */
153a338db78Schristos #define HAVE_EVENT_H 1
154a338db78Schristos 
155a338db78Schristos /* Define to 1 if you have the `EVP_cleanup' function. */
156f23adfb5Sprlw1 /* #undef HAVE_EVP_CLEANUP */
157a338db78Schristos 
158*cb958623Schristos /* Define to 1 if you have the `EVP_MAC_CTX_get_mac_size' function. */
159*cb958623Schristos /* #undef HAVE_EVP_MAC_CTX_GET_MAC_SIZE */
160*cb958623Schristos 
1616baaaf41Schristos /* Define to 1 if you have the `EVP_MAC_CTX_new' function. */
1626baaaf41Schristos /* #undef HAVE_EVP_MAC_CTX_NEW */
1636baaaf41Schristos 
1646baaaf41Schristos /* Define to 1 if you have the `EVP_MAC_CTX_set_params' function. */
1656baaaf41Schristos /* #undef HAVE_EVP_MAC_CTX_SET_PARAMS */
1666baaaf41Schristos 
167a338db78Schristos /* Define to 1 if you have the `ev_default_loop' function. */
168a338db78Schristos /* #undef HAVE_EV_DEFAULT_LOOP */
169a338db78Schristos 
170a338db78Schristos /* Define to 1 if you have the `ev_loop' function. */
171a338db78Schristos /* #undef HAVE_EV_LOOP */
172a338db78Schristos 
173*cb958623Schristos /* Define to 1 if you have the `explicit_bzero' function. */
174*cb958623Schristos /* #undef HAVE_EXPLICIT_BZERO */
175*cb958623Schristos 
176a338db78Schristos /* Define to 1 if you have the <fcntl.h> header file. */
177a338db78Schristos #define HAVE_FCNTL_H 1
178a338db78Schristos 
179a338db78Schristos /* Define to 1 if you have the `fork' function. */
180a338db78Schristos #define HAVE_FORK 1
181a338db78Schristos 
182a338db78Schristos /* Define to 1 if you have the `freeaddrinfo' function. */
183a338db78Schristos #define HAVE_FREEADDRINFO 1
184a338db78Schristos 
185a338db78Schristos /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */
186a338db78Schristos #define HAVE_FSEEKO 1
187a338db78Schristos 
188a338db78Schristos /* Define to 1 if you have the `gai_strerror' function. */
189a338db78Schristos #define HAVE_GAI_STRERROR 1
190a338db78Schristos 
191a338db78Schristos /* Define to 1 if you have the `getaddrinfo' function. */
192a338db78Schristos #define HAVE_GETADDRINFO 1
193a338db78Schristos 
194a338db78Schristos /* Define to 1 if you have the `gethostname' function. */
195a338db78Schristos #define HAVE_GETHOSTNAME 1
196a338db78Schristos 
1976baaaf41Schristos /* Define to 1 if you have the `getifaddrs' function. */
1986baaaf41Schristos #define HAVE_GETIFADDRS 1
1996baaaf41Schristos 
200a338db78Schristos /* Define to 1 if you have the `getnameinfo' function. */
201a338db78Schristos #define HAVE_GETNAMEINFO 1
202a338db78Schristos 
203a338db78Schristos /* Define to 1 if you have the `getpwnam' function. */
204a338db78Schristos #define HAVE_GETPWNAM 1
205a338db78Schristos 
2066baaaf41Schristos /* Define to 1 if you have the `getrandom' function. */
2076baaaf41Schristos #define HAVE_GETRANDOM 1
2086baaaf41Schristos 
209a338db78Schristos /* Define to 1 if you have the `glob' function. */
210a338db78Schristos #define HAVE_GLOB 1
211a338db78Schristos 
212a338db78Schristos /* Define to 1 if you have the <glob.h> header file. */
213a338db78Schristos #define HAVE_GLOB_H 1
214a338db78Schristos 
215a338db78Schristos /* Define to 1 if you have the <grp.h> header file. */
216a338db78Schristos #define HAVE_GRP_H 1
217a338db78Schristos 
218a338db78Schristos /* Define to 1 if you have the `HMAC_CTX_new' function. */
219ff84eb62Schristos #define HAVE_HMAC_CTX_NEW 1
220a338db78Schristos 
221a338db78Schristos /* Define to 1 if you have the `HMAC_CTX_reset' function. */
222ff84eb62Schristos #define HAVE_HMAC_CTX_RESET 1
223a338db78Schristos 
224*cb958623Schristos /* Define to 1 if you have the <ifaddrs.h> header file. */
225*cb958623Schristos #define HAVE_IFADDRS_H 1
226*cb958623Schristos 
227a338db78Schristos /* Define to 1 if you have the `inet_aton' function. */
228a338db78Schristos #define HAVE_INET_ATON 1
229a338db78Schristos 
230a338db78Schristos /* Define to 1 if you have the `inet_ntop' function. */
231a338db78Schristos #define HAVE_INET_NTOP 1
232a338db78Schristos 
233a338db78Schristos /* Define to 1 if you have the `inet_pton' function. */
234a338db78Schristos #define HAVE_INET_PTON 1
235a338db78Schristos 
236a338db78Schristos /* Define to 1 if you have the `initgroups' function. */
237a338db78Schristos #define HAVE_INITGROUPS 1
238a338db78Schristos 
239a338db78Schristos /* Define to 1 if you have the <inttypes.h> header file. */
240a338db78Schristos #define HAVE_INTTYPES_H 1
241a338db78Schristos 
242a338db78Schristos /* Define to 1 if you have the `crypto' library (-lcrypto). */
243a338db78Schristos #define HAVE_LIBCRYPTO 1
244a338db78Schristos 
245a338db78Schristos /* Define to 1 if you have the <limits.h> header file. */
246a338db78Schristos #define HAVE_LIMITS_H 1
247a338db78Schristos 
248a338db78Schristos /* Define to 1 if you have the `localtime_r' function. */
249a338db78Schristos #define HAVE_LOCALTIME_R 1
250a338db78Schristos 
2519b6ab3c4Schristos /* Define to 1 if you have the <login_cap.h> header file. */
2529b6ab3c4Schristos #define HAVE_LOGIN_CAP_H 1
2539b6ab3c4Schristos 
254a338db78Schristos /* Define to 1 if your system has a GNU libc compatible `malloc' function, and
255a338db78Schristos    to 0 otherwise. */
256a338db78Schristos #define HAVE_MALLOC 1
257a338db78Schristos 
258a338db78Schristos /* Define to 1 if you have the `memcpy' function. */
259a338db78Schristos #define HAVE_MEMCPY 1
260a338db78Schristos 
261a338db78Schristos /* Define to 1 if you have the `memmove' function. */
262a338db78Schristos #define HAVE_MEMMOVE 1
263a338db78Schristos 
264a338db78Schristos /* Define to 1 if you have the <memory.h> header file. */
265a338db78Schristos #define HAVE_MEMORY_H 1
266a338db78Schristos 
267a338db78Schristos /* Define to 1 if you have the `memset' function. */
268a338db78Schristos #define HAVE_MEMSET 1
269a338db78Schristos 
270a338db78Schristos /* Define to 1 if you have the `mmap' function. */
271a338db78Schristos #define HAVE_MMAP 1
272a338db78Schristos 
273e8c1c0b8Schristos /* If sys/socket.h has a struct mmsghdr. */
274e8c1c0b8Schristos #define HAVE_MMSGHDR 1
275e8c1c0b8Schristos 
276a338db78Schristos /* Define to 1 if you have the `munmap' function. */
277a338db78Schristos /* #undef HAVE_MUNMAP */
278a338db78Schristos 
279a338db78Schristos /* Define to 1 if you have the <netdb.h> header file. */
280a338db78Schristos #define HAVE_NETDB_H 1
281a338db78Schristos 
282a338db78Schristos /* Define to 1 if you have the <netinet/in.h> header file. */
283a338db78Schristos #define HAVE_NETINET_IN_H 1
284a338db78Schristos 
285a338db78Schristos /* Define to 1 if you have the <netinet/tcp.h> header file. */
286a338db78Schristos #define HAVE_NETINET_TCP_H 1
287a338db78Schristos 
2886baaaf41Schristos /* Define to 1 if you have the <openssl/core_names.h> header file. */
2896baaaf41Schristos /* #undef HAVE_OPENSSL_CORE_NAMES_H */
2906baaaf41Schristos 
291a338db78Schristos /* Define to 1 if you have the <openssl/err.h> header file. */
292a338db78Schristos #define HAVE_OPENSSL_ERR_H 1
293a338db78Schristos 
294a338db78Schristos /* Define to 1 if you have the `OPENSSL_init_crypto' function. */
295f23adfb5Sprlw1 #define HAVE_OPENSSL_INIT_CRYPTO 1
296a338db78Schristos 
297a338db78Schristos /* Define to 1 if you have the `OPENSSL_init_ssl' function. */
298f23adfb5Sprlw1 #define HAVE_OPENSSL_INIT_SSL 1
299a338db78Schristos 
300e8c1c0b8Schristos /* Define to 1 if you have the <openssl/ocsp.h> header file. */
301e8c1c0b8Schristos #define HAVE_OPENSSL_OCSP_H 1
302e8c1c0b8Schristos 
303a338db78Schristos /* Define to 1 if you have the <openssl/rand.h> header file. */
304a338db78Schristos #define HAVE_OPENSSL_RAND_H 1
305a338db78Schristos 
306a338db78Schristos /* Define to 1 if you have the <openssl/ssl.h> header file. */
307a338db78Schristos #define HAVE_OPENSSL_SSL_H 1
308a338db78Schristos 
309a338db78Schristos /* Define to 1 if you have the `ppoll' function. */
310ed5ac8f0Skamil #define HAVE_PPOLL 1
311a338db78Schristos 
312a338db78Schristos /* Define to 1 if you have the `pselect' function. */
313a338db78Schristos #define HAVE_PSELECT 1
314a338db78Schristos 
315a338db78Schristos /* if sys/select.h provides pselect prototype */
316a338db78Schristos #define HAVE_PSELECT_PROTO 1
317a338db78Schristos 
318a338db78Schristos /* Define to 1 if you have the `pwrite' function. */
319a338db78Schristos #define HAVE_PWRITE 1
320a338db78Schristos 
321e8c1c0b8Schristos /* If we have reallocarray(3) */
322a338db78Schristos #define HAVE_REALLOCARRAY 1
323a338db78Schristos 
324a338db78Schristos /* Define if recvmmsg is implemented */
325a338db78Schristos #define HAVE_RECVMMSG 1
326a338db78Schristos 
3276baaaf41Schristos /* Define to 1 if you have the <sched.h> header file. */
3286baaaf41Schristos #define HAVE_SCHED_H 1
3296baaaf41Schristos 
3306baaaf41Schristos /* Define this if sched_setaffinity is available */
331*cb958623Schristos #define HAVE_SCHED_SETAFFINITY 1
3326baaaf41Schristos 
333a338db78Schristos /* Define if sendmmsg is implemented */
334a338db78Schristos #define HAVE_SENDMMSG 1
335a338db78Schristos 
3366baaaf41Schristos /* Define to 1 if you have the `setproctitle' function. */
3376baaaf41Schristos #define HAVE_SETPROCTITLE 1
3386baaaf41Schristos 
339a338db78Schristos /* Define to 1 if you have the `setregid' function. */
340a338db78Schristos #define HAVE_SETREGID 1
341a338db78Schristos 
342a338db78Schristos /* Define to 1 if you have the `setresgid' function. */
343a338db78Schristos /* #undef HAVE_SETRESGID */
344a338db78Schristos 
345a338db78Schristos /* Define to 1 if you have the `setresuid' function. */
346a338db78Schristos /* #undef HAVE_SETRESUID */
347a338db78Schristos 
348a338db78Schristos /* Define to 1 if you have the `setreuid' function. */
349a338db78Schristos #define HAVE_SETREUID 1
350a338db78Schristos 
351a338db78Schristos /* Define to 1 if you have the `setusercontext' function. */
352a338db78Schristos #define HAVE_SETUSERCONTEXT 1
353a338db78Schristos 
354*cb958623Schristos /* Define to 1 if you have the `SHA1_Init' function. */
355*cb958623Schristos #define HAVE_SHA1_INIT 1
356*cb958623Schristos 
357a338db78Schristos /* Define to 1 if you have the `sigaction' function. */
358a338db78Schristos #define HAVE_SIGACTION 1
359a338db78Schristos 
360a338db78Schristos /* Define to 1 if you have the <signal.h> header file. */
361a338db78Schristos #define HAVE_SIGNAL_H 1
362a338db78Schristos 
363a338db78Schristos /* Define to 1 if you have the `sigprocmask' function. */
364a338db78Schristos #define HAVE_SIGPROCMASK 1
365a338db78Schristos 
366a338db78Schristos /* Define to 1 if you have the `snprintf' function. */
367a338db78Schristos #define HAVE_SNPRINTF 1
368a338db78Schristos 
369a338db78Schristos /* Define to 1 if you have the `socket' function. */
370a338db78Schristos #define HAVE_SOCKET 1
371a338db78Schristos 
372a338db78Schristos /* Define if you have the SSL libraries installed. */
373a338db78Schristos #define HAVE_SSL /**/
374a338db78Schristos 
375e8c1c0b8Schristos /* Define to 1 if you have the `SSL_CTX_set_security_level' function. */
376*cb958623Schristos #define HAVE_SSL_CTX_SET_SECURITY_LEVEL 1
377*cb958623Schristos 
378*cb958623Schristos /* Define to 1 if you have the `SSL_get1_peer_certificate' function. */
379*cb958623Schristos /* #undef HAVE_SSL_GET1_PEER_CERTIFICATE */
380e8c1c0b8Schristos 
381a338db78Schristos /* Define to 1 if you have the <stdarg.h> header file. */
382a338db78Schristos #define HAVE_STDARG_H 1
383a338db78Schristos 
384a338db78Schristos /* Define to 1 if you have the <stddef.h> header file. */
385a338db78Schristos #define HAVE_STDDEF_H 1
386a338db78Schristos 
387a338db78Schristos /* Define to 1 if you have the <stdint.h> header file. */
388a338db78Schristos #define HAVE_STDINT_H 1
389a338db78Schristos 
390a338db78Schristos /* Define to 1 if you have the <stdlib.h> header file. */
391a338db78Schristos #define HAVE_STDLIB_H 1
392a338db78Schristos 
393a338db78Schristos /* Define to 1 if you have the `strcasecmp' function. */
394a338db78Schristos #define HAVE_STRCASECMP 1
395a338db78Schristos 
396a338db78Schristos /* Define to 1 if you have the `strchr' function. */
397a338db78Schristos #define HAVE_STRCHR 1
398a338db78Schristos 
399a338db78Schristos /* Define to 1 if you have the `strdup' function. */
400a338db78Schristos #define HAVE_STRDUP 1
401a338db78Schristos 
402a338db78Schristos /* Define to 1 if you have the `strerror' function. */
403a338db78Schristos #define HAVE_STRERROR 1
404a338db78Schristos 
405a338db78Schristos /* Define to 1 if you have the `strftime' function. */
406a338db78Schristos #define HAVE_STRFTIME 1
407a338db78Schristos 
408a338db78Schristos /* Define to 1 if you have the <strings.h> header file. */
409a338db78Schristos #define HAVE_STRINGS_H 1
410a338db78Schristos 
411a338db78Schristos /* Define to 1 if you have the <string.h> header file. */
412a338db78Schristos #define HAVE_STRING_H 1
413a338db78Schristos 
414a338db78Schristos /* Define to 1 if you have the `strlcat' function. */
415a338db78Schristos #define HAVE_STRLCAT 1
416a338db78Schristos 
417a338db78Schristos /* Define to 1 if you have the `strlcpy' function. */
418a338db78Schristos #define HAVE_STRLCPY 1
419a338db78Schristos 
420a338db78Schristos /* Define to 1 if you have the `strncasecmp' function. */
421a338db78Schristos #define HAVE_STRNCASECMP 1
422a338db78Schristos 
423a338db78Schristos /* Define to 1 if you have the `strptime' function. */
424a338db78Schristos #define HAVE_STRPTIME 1
425a338db78Schristos 
426a338db78Schristos /* Define to 1 if you have the `strtol' function. */
427a338db78Schristos #define HAVE_STRTOL 1
428a338db78Schristos 
429885624e8Schristos /* Define to 1 if `sun_len' is a member of `struct sockaddr_un'. */
430885624e8Schristos #define HAVE_STRUCT_SOCKADDR_UN_SUN_LEN 1
431885624e8Schristos 
432a338db78Schristos /* Define to 1 if `st_mtimensec' is a member of `struct stat'. */
433a338db78Schristos #define HAVE_STRUCT_STAT_ST_MTIMENSEC 1
434a338db78Schristos 
435a338db78Schristos /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */
436a338db78Schristos #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
437a338db78Schristos 
438a338db78Schristos /* If time.h has a struct timespec (for pselect). */
439a338db78Schristos #define HAVE_STRUCT_TIMESPEC 1
440a338db78Schristos 
4416baaaf41Schristos /* Define to 1 if you have the `sysconf' function. */
4426baaaf41Schristos /* #undef HAVE_SYSCONF */
4436baaaf41Schristos 
444a338db78Schristos /* Define to 1 if you have the <syslog.h> header file. */
445a338db78Schristos #define HAVE_SYSLOG_H 1
446a338db78Schristos 
4476baaaf41Schristos /* Define to 1 if systemd should be used */
4486baaaf41Schristos /* #undef HAVE_SYSTEMD */
4496baaaf41Schristos 
450a338db78Schristos /* Define to 1 if you have the <sys/bitypes.h> header file. */
451a338db78Schristos /* #undef HAVE_SYS_BITYPES_H */
452a338db78Schristos 
4536baaaf41Schristos /* Define to 1 if you have the <sys/cpuset.h> header file. */
4546baaaf41Schristos /* #undef HAVE_SYS_CPUSET_H */
4556baaaf41Schristos 
456a338db78Schristos /* Define to 1 if you have the <sys/mman.h> header file. */
457*cb958623Schristos #define HAVE_SYS_MMAN_H 1
458a338db78Schristos 
459a338db78Schristos /* Define to 1 if you have the <sys/param.h> header file. */
460a338db78Schristos #define HAVE_SYS_PARAM_H 1
461a338db78Schristos 
4626baaaf41Schristos /* Define to 1 if you have the <sys/random.h> header file. */
4636baaaf41Schristos #define HAVE_SYS_RANDOM_H 1
4646baaaf41Schristos 
465a338db78Schristos /* Define to 1 if you have the <sys/select.h> header file. */
466a338db78Schristos #define HAVE_SYS_SELECT_H 1
467a338db78Schristos 
468a338db78Schristos /* Define to 1 if you have the <sys/socket.h> header file. */
469a338db78Schristos #define HAVE_SYS_SOCKET_H 1
470a338db78Schristos 
471a338db78Schristos /* Define to 1 if you have the <sys/stat.h> header file. */
472a338db78Schristos #define HAVE_SYS_STAT_H 1
473a338db78Schristos 
474a338db78Schristos /* Define to 1 if you have the <sys/types.h> header file. */
475a338db78Schristos #define HAVE_SYS_TYPES_H 1
476a338db78Schristos 
477885624e8Schristos /* Define to 1 if you have the <sys/un.h> header file. */
478885624e8Schristos #define HAVE_SYS_UN_H 1
479885624e8Schristos 
480a338db78Schristos /* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */
481a338db78Schristos #define HAVE_SYS_WAIT_H 1
482a338db78Schristos 
483a338db78Schristos /* Define to 1 if you have the <tcpd.h> header file. */
484a338db78Schristos #define HAVE_TCPD_H 1
485a338db78Schristos 
486a338db78Schristos /* Define to 1 if you have the <time.h> header file. */
487a338db78Schristos #define HAVE_TIME_H 1
488a338db78Schristos 
489*cb958623Schristos /* Define if TLS 1.3 is supported by OpenSSL */
490*cb958623Schristos #define HAVE_TLS_1_3 1
491*cb958623Schristos 
492a338db78Schristos /* Define to 1 if you have the `tzset' function. */
493a338db78Schristos #define HAVE_TZSET 1
494a338db78Schristos 
495a338db78Schristos /* Define to 1 if you have the <unistd.h> header file. */
496a338db78Schristos #define HAVE_UNISTD_H 1
497a338db78Schristos 
498a338db78Schristos /* Define this if you have double va_list definitions. */
499a338db78Schristos /* #undef HAVE_VA_LIST_DOUBLE_DEF */
500a338db78Schristos 
501a338db78Schristos /* Define to 1 if you have the `vfork' function. */
502a338db78Schristos #define HAVE_VFORK 1
503a338db78Schristos 
504a338db78Schristos /* Define to 1 if you have the <vfork.h> header file. */
505a338db78Schristos /* #undef HAVE_VFORK_H */
506a338db78Schristos 
507a338db78Schristos /* Define to 1 if `fork' works. */
508a338db78Schristos #define HAVE_WORKING_FORK 1
509a338db78Schristos 
510a338db78Schristos /* Define to 1 if `vfork' works. */
511a338db78Schristos #define HAVE_WORKING_VFORK 1
512a338db78Schristos 
513a338db78Schristos /* Define to 1 if you have the `writev' function. */
514a338db78Schristos #define HAVE_WRITEV 1
515a338db78Schristos 
516a338db78Schristos /* Define to the default nsd identity. */
517a338db78Schristos #define IDENTITY "NetBSD server"
518a338db78Schristos 
519a338db78Schristos /* Define this to enable IPv6 support. */
520*cb958623Schristos /* #undef INET6 **/
521a338db78Schristos 
522a338db78Schristos /* If flex defines yy_current_buffer as a macro */
523a338db78Schristos /* #undef LEX_DEFINES_YY_CURRENT_BUFFER */
524a338db78Schristos 
525a338db78Schristos /* Define to the maximum message length to pass to syslog. */
526a338db78Schristos #define MAXSYSLOGMSGLEN 512
527a338db78Schristos 
528885624e8Schristos /* Define this to cleanup memory at exit (eg. for valgrind, etc.) */
529885624e8Schristos /* #undef MEMCLEAN */
530885624e8Schristos 
531a338db78Schristos /* Define if memcmp() does not compare unsigned bytes */
532a338db78Schristos /* #undef MEMCMP_IS_BROKEN */
533a338db78Schristos 
534a338db78Schristos /* Define this to enable response minimalization to reduce truncation. */
535a338db78Schristos #define MINIMAL_RESPONSES /**/
536a338db78Schristos 
537a338db78Schristos /* Define if mkdir has one argument. */
538a338db78Schristos /* #undef MKDIR_HAS_ONE_ARG */
539a338db78Schristos 
540a338db78Schristos /* Undefine this to enable internal runtime checks. */
541a338db78Schristos #define NDEBUG /**/
542a338db78Schristos 
543a338db78Schristos /* Define if the network stack does not fully support nonblocking io (causes
544a338db78Schristos    lower performance). */
545a338db78Schristos /* #undef NONBLOCKING_IS_BROKEN */
546a338db78Schristos 
547a338db78Schristos /* Define to the default nsd-control port. */
548a338db78Schristos #define NSD_CONTROL_PORT 8952
549a338db78Schristos 
550a338db78Schristos /* Define to nsd-control proto version. */
551a338db78Schristos #define NSD_CONTROL_VERSION 1
552a338db78Schristos 
553a338db78Schristos /* Pathname to start nsd from nsd-control */
554a338db78Schristos #define NSD_START_PATH "/usr/sbin/nsd"
555a338db78Schristos 
556a338db78Schristos /* Define this to enable NSEC3 support. */
557a338db78Schristos #define NSEC3 /**/
558a338db78Schristos 
559a338db78Schristos /* Define to the address where bug reports for this package should be sent. */
560a338db78Schristos #define PACKAGE_BUGREPORT "nsd-bugs@nlnetlabs.nl"
561a338db78Schristos 
562a338db78Schristos /* Define to the full name of this package. */
563a338db78Schristos #define PACKAGE_NAME "NSD"
564a338db78Schristos 
565a338db78Schristos /* Define to the full name and version of this package. */
566*cb958623Schristos #define PACKAGE_STRING "NSD 4.6.0"
567a338db78Schristos 
568a338db78Schristos /* Define to the one symbol short name of this package. */
569a338db78Schristos #define PACKAGE_TARNAME "nsd"
570a338db78Schristos 
571a338db78Schristos /* Define to the home page for this package. */
572a338db78Schristos #define PACKAGE_URL ""
573a338db78Schristos 
574a338db78Schristos /* Define to the version of this package. */
575*cb958623Schristos #define PACKAGE_VERSION "4.6.0"
576ff84eb62Schristos 
577ff84eb62Schristos /* Define this to use packed structure alignment. */
578ff84eb62Schristos /* #undef PACKED_STRUCTS */
579a338db78Schristos 
580a338db78Schristos /* Pathname to the NSD pidfile */
581a338db78Schristos #define PIDFILE CHROOTDIR "/var/run/nsd.pid"
582a338db78Schristos 
583a338db78Schristos /* Define this to enable rate limiting. */
584a338db78Schristos #define RATELIMIT 1
585a338db78Schristos 
586a338db78Schristos /* Define this to set ratelimit to off by default. */
587*cb958623Schristos #define RATELIMIT_DEFAULT_OFF 1
588a338db78Schristos 
5896baaaf41Schristos /* If reallocarray needs defines to appear in the headers */
5906baaaf41Schristos #define REALLOCARRAY_NEEDS_DEFINES 1
5916baaaf41Schristos 
5926baaaf41Schristos /* Return type of signal handlers, but autoconf 2.70 says 'your code may
5936baaaf41Schristos    safely assume C89 semantics that RETSIGTYPE is void.' */
594a338db78Schristos #define RETSIGTYPE void
595a338db78Schristos 
596a338db78Schristos /* Define this to configure as a root server. */
597a338db78Schristos /* #undef ROOT_SERVER */
598a338db78Schristos 
599a338db78Schristos /* The size of `off_t', as computed by sizeof. */
600a338db78Schristos #define SIZEOF_OFF_T 8
601a338db78Schristos 
602a338db78Schristos /* The size of `void*', as computed by sizeof. */
603a338db78Schristos #define SIZEOF_VOIDP 8
604a338db78Schristos 
605a338db78Schristos /* Define to 1 if you have the ANSI C header files. */
606a338db78Schristos #define STDC_HEADERS 1
607a338db78Schristos 
608a338db78Schristos /* strptime is available from time.h with some defines. */
609a338db78Schristos /* #undef STRPTIME_NEEDS_DEFINES */
610a338db78Schristos 
611a338db78Schristos /* use default strptime. */
612a338db78Schristos #define STRPTIME_WORKS 1
613a338db78Schristos 
614a338db78Schristos /* Define to the backlog to be used with listen. */
615a338db78Schristos #define TCP_BACKLOG 256
616a338db78Schristos 
617a338db78Schristos /* Define to the default maximum message length. */
618a338db78Schristos #define TCP_MAX_MESSAGE_LEN 65535
619a338db78Schristos 
620a338db78Schristos /* Define to the default tcp port. */
621a338db78Schristos #define TCP_PORT "53"
622a338db78Schristos 
623a338db78Schristos /* Define to the default tcp timeout. */
624a338db78Schristos #define TCP_TIMEOUT 120
625a338db78Schristos 
626e8c1c0b8Schristos /* Define to the default DNS over TLS port. */
627e8c1c0b8Schristos #define TLS_PORT "853"
628e8c1c0b8Schristos 
629a338db78Schristos /* Define to the default maximum udp message length. */
630a338db78Schristos #define UDP_MAX_MESSAGE_LEN 512
631a338db78Schristos 
632a338db78Schristos /* Define to the default udp port. */
633a338db78Schristos #define UDP_PORT "53"
634a338db78Schristos 
635a338db78Schristos /* the user name to drop privileges to */
636a338db78Schristos #define USER "_nsd"
637a338db78Schristos 
638f23adfb5Sprlw1 /* Define to 1 to enable dnstap support */
639f23adfb5Sprlw1 /* #undef USE_DNSTAP */
640f23adfb5Sprlw1 
641a338db78Schristos /* Define if you want to use internal select based events */
642a338db78Schristos /* #undef USE_MINI_EVENT */
643a338db78Schristos 
644a338db78Schristos /* Define this to enable mmap instead of malloc. Experimental. */
645a338db78Schristos /* #undef USE_MMAP_ALLOC */
646a338db78Schristos 
647a338db78Schristos /* Define this to configure to use the radix tree. */
648a338db78Schristos #define USE_RADIX_TREE /**/
649a338db78Schristos 
650a338db78Schristos /* Enable extensions on AIX 3, Interix.  */
651a338db78Schristos #ifndef _ALL_SOURCE
652a338db78Schristos # define _ALL_SOURCE 1
653a338db78Schristos #endif
654a338db78Schristos /* Enable GNU extensions on systems that have them.  */
655a338db78Schristos #ifndef _GNU_SOURCE
656a338db78Schristos # define _GNU_SOURCE 1
657a338db78Schristos #endif
658a338db78Schristos /* Enable threading extensions on Solaris.  */
659a338db78Schristos #ifndef _POSIX_PTHREAD_SEMANTICS
660a338db78Schristos # define _POSIX_PTHREAD_SEMANTICS 1
661a338db78Schristos #endif
662a338db78Schristos /* Enable extensions on HP NonStop.  */
663a338db78Schristos #ifndef _TANDEM_SOURCE
664a338db78Schristos # define _TANDEM_SOURCE 1
665a338db78Schristos #endif
666a338db78Schristos /* Enable general extensions on Solaris.  */
667a338db78Schristos #ifndef __EXTENSIONS__
668a338db78Schristos # define __EXTENSIONS__ 1
669a338db78Schristos #endif
670a338db78Schristos 
671a338db78Schristos 
672e8c1c0b8Schristos /* Define this to enable TCP fast open. */
673e8c1c0b8Schristos /* #undef USE_TCP_FASTOPEN */
674e8c1c0b8Schristos 
675a338db78Schristos /* Define this to enable per-zone statistics gathering. */
676*cb958623Schristos #define USE_ZONE_STATS 1
677*cb958623Schristos 
678*cb958623Schristos /* Define to the default zone verification udp port. */
679*cb958623Schristos #define VERIFY_PORT "5347"
680a338db78Schristos 
681a338db78Schristos /* Define to the NSD version to answer version.server query. */
682a338db78Schristos #define VERSION PACKAGE_STRING
683a338db78Schristos 
684a338db78Schristos /* Pathname to the NSD xfrd zone timer state file. */
685a338db78Schristos #define XFRDFILE CHROOTDIR "/var/db/nsd/xfrd.state"
686a338db78Schristos 
687a338db78Schristos /* Pathname to where the NSD transfer dir is created. */
688a338db78Schristos #define XFRDIR CHROOTDIR "/var/tmp"
689a338db78Schristos 
690a338db78Schristos /* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a
691a338db78Schristos    `char[]'. */
692a338db78Schristos #define YYTEXT_POINTER 1
693a338db78Schristos 
694a338db78Schristos /* Pathname to the NSD zone list file. */
695a338db78Schristos #define ZONELISTFILE CHROOTDIR "/var/db/nsd/zone.list"
696a338db78Schristos 
697a338db78Schristos /* NSD default location for zone files. Empty string or NULL to disable. */
698a338db78Schristos #define ZONESDIR CHROOTDIR "/etc/nsd"
699a338db78Schristos 
700a338db78Schristos /* Enable large inode numbers on Mac OS X 10.5.  */
701a338db78Schristos #ifndef _DARWIN_USE_64_BIT_INODE
702a338db78Schristos # define _DARWIN_USE_64_BIT_INODE 1
703a338db78Schristos #endif
704a338db78Schristos 
705a338db78Schristos /* Number of bits in a file offset, on hosts where this is settable. */
706a338db78Schristos /* #undef _FILE_OFFSET_BITS */
707a338db78Schristos 
708a338db78Schristos /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */
709a338db78Schristos /* #undef _LARGEFILE_SOURCE */
710a338db78Schristos 
711a338db78Schristos /* Define for large files, on AIX-style hosts. */
712a338db78Schristos /* #undef _LARGE_FILES */
713a338db78Schristos 
714a338db78Schristos /* Define to 1 if on MINIX. */
715a338db78Schristos /* #undef _MINIX */
716a338db78Schristos 
717a338db78Schristos /* Enable for compile on Minix */
718a338db78Schristos /* #undef _NETBSD_SOURCE */
719a338db78Schristos 
720a338db78Schristos /* Define to 2 if the system does not provide POSIX.1 features except with
721a338db78Schristos    this defined. */
722a338db78Schristos /* #undef _POSIX_1_SOURCE */
723a338db78Schristos 
724a338db78Schristos /* Define to 1 if you need to in order for `stat' and other things to work. */
725a338db78Schristos /* #undef _POSIX_SOURCE */
726a338db78Schristos 
727a338db78Schristos /* Define to empty if `const' does not conform to ANSI C. */
728a338db78Schristos /* #undef const */
729a338db78Schristos 
730a338db78Schristos /* Define to `int' if <sys/types.h> doesn't define. */
731a338db78Schristos /* #undef gid_t */
732a338db78Schristos 
733a338db78Schristos /* in_addr_t */
734a338db78Schristos /* #undef in_addr_t */
735a338db78Schristos 
736a338db78Schristos /* Define to `__inline__' or `__inline' if that's what the C compiler
737a338db78Schristos    calls it, or to nothing if 'inline' is not supported under any name.  */
738a338db78Schristos #ifndef __cplusplus
739a338db78Schristos /* #undef inline */
740a338db78Schristos #endif
741a338db78Schristos 
742a338db78Schristos /* Define "int16_t" to "short" if "int16_t" is missing */
743a338db78Schristos /* #undef int16_t */
744a338db78Schristos 
745a338db78Schristos /* Define "int32_t" to "int" if "int32_t" is missing */
746a338db78Schristos /* #undef int32_t */
747a338db78Schristos 
748a338db78Schristos /* Define "int64_t" to "long long" if "int64_t" is missing */
749a338db78Schristos /* #undef int64_t */
750a338db78Schristos 
751a338db78Schristos /* Define "int8_t" to "char" if "int8_t" is missing */
752a338db78Schristos /* #undef int8_t */
753a338db78Schristos 
754a338db78Schristos /* Define to rpl_malloc if the replacement function should be used. */
755a338db78Schristos /* #undef malloc */
756a338db78Schristos 
757a338db78Schristos /* Define to `long int' if <sys/types.h> does not define. */
758a338db78Schristos /* #undef off_t */
759a338db78Schristos 
760a338db78Schristos /* Define to `int' if <sys/types.h> does not define. */
761a338db78Schristos /* #undef pid_t */
762a338db78Schristos 
763a338db78Schristos /* Define "sig_atomic_t" to "int" if "sig_atomic_t" is missing */
764a338db78Schristos /* #undef sig_atomic_t */
765a338db78Schristos 
766a338db78Schristos /* Define to `unsigned int' if <sys/types.h> does not define. */
767a338db78Schristos /* #undef size_t */
768a338db78Schristos 
769a338db78Schristos /* Define "socklen_t" to "int" if "socklen_t" is missing */
770a338db78Schristos /* #undef socklen_t */
771a338db78Schristos 
772a338db78Schristos /* Fallback member name for socket family in struct sockaddr_storage */
773a338db78Schristos /* #undef ss_family */
774a338db78Schristos 
775a338db78Schristos /* Define "ssize_t" to "int" if "ssize_t" is missing */
776a338db78Schristos /* #undef ssize_t */
777a338db78Schristos 
778a338db78Schristos /* Define "suseconds_t" to "time_t" if "suseconds_t" is missing */
779a338db78Schristos /* #undef suseconds_t */
780a338db78Schristos 
781a338db78Schristos /* Define to `int' if <sys/types.h> doesn't define. */
782a338db78Schristos /* #undef uid_t */
783a338db78Schristos 
784a338db78Schristos /* Define "uint16_t" to "unsigned short" if "uint16_t" is missing */
785a338db78Schristos /* #undef uint16_t */
786a338db78Schristos 
787a338db78Schristos /* Define "uint32_t" to "unsigned int" if "uint32_t" is missing */
788a338db78Schristos /* #undef uint32_t */
789a338db78Schristos 
790a338db78Schristos /* Define "uint64_t" to "unsigned long long" if "uint64_t" is missing */
791a338db78Schristos /* #undef uint64_t */
792a338db78Schristos 
793a338db78Schristos /* Define "uint8_t" to "unsigned char" if "uint8_t" is missing */
794a338db78Schristos /* #undef uint8_t */
795a338db78Schristos 
796a338db78Schristos /* Define "uintptr_t" to "void*" if "uintptr_t" is missing */
797a338db78Schristos /* #undef uintptr_t */
798a338db78Schristos 
799a338db78Schristos /* Define as `fork' if `vfork' does not work. */
800a338db78Schristos /* #undef vfork */
801a338db78Schristos 
802a338db78Schristos 
803a338db78Schristos /* define before includes as it specifies what standard to use. */
804a338db78Schristos #if (defined(HAVE_PSELECT) && !defined (HAVE_PSELECT_PROTO)) \
805a338db78Schristos 	|| !defined (HAVE_CTIME_R_PROTO) \
8066baaaf41Schristos 	|| defined (STRPTIME_NEEDS_DEFINES) || defined(REALLOCARRAY_NEEDS_DEFINES)
807a338db78Schristos #  ifndef _XOPEN_SOURCE
808a338db78Schristos #    define _XOPEN_SOURCE 600
809a338db78Schristos #  endif
810a338db78Schristos #  ifndef _POSIX_C_SOURCE
811a338db78Schristos #    define _POSIX_C_SOURCE 200112
812a338db78Schristos #  endif
813a338db78Schristos #  ifndef _BSD_SOURCE
814a338db78Schristos #    define _BSD_SOURCE 1
815a338db78Schristos #  endif
816e8c1c0b8Schristos #  ifndef _OPENBSD_SOURCE
817e8c1c0b8Schristos #    define _OPENBSD_SOURCE 1
818e8c1c0b8Schristos #  endif
819a338db78Schristos #  ifndef _DEFAULT_SOURCE
820a338db78Schristos #    define _DEFAULT_SOURCE 1
821a338db78Schristos #  endif
822a338db78Schristos #  ifndef __EXTENSIONS__
823a338db78Schristos #    define __EXTENSIONS__ 1
824a338db78Schristos #  endif
825a338db78Schristos #  ifndef _STDC_C99
826a338db78Schristos #    define _STDC_C99 1
827a338db78Schristos #  endif
828a338db78Schristos #  ifndef _ALL_SOURCE
829a338db78Schristos #    define _ALL_SOURCE 1
830a338db78Schristos #  endif
831a338db78Schristos #endif
832a338db78Schristos 
833a338db78Schristos 
834a338db78Schristos 
835a338db78Schristos #ifdef HAVE_VA_LIST_DOUBLE_DEF
836a338db78Schristos /* workaround double va_list definition on some platforms */
837a338db78Schristos #  ifndef _VA_LIST_DEFINED
838a338db78Schristos #    define _VA_LIST_DEFINED
839a338db78Schristos #  endif
840a338db78Schristos #endif
841a338db78Schristos 
842a338db78Schristos 
843a338db78Schristos 
844a338db78Schristos #include <sys/types.h>
845a338db78Schristos #include <stdlib.h>
846a338db78Schristos #include <stddef.h>
847a338db78Schristos 
848a338db78Schristos #ifdef HAVE_TIME_H
849a338db78Schristos #include <time.h>
850a338db78Schristos #endif
851a338db78Schristos 
852a338db78Schristos #ifdef HAVE_STDINT_H
853a338db78Schristos #include <stdint.h>
854a338db78Schristos #endif
855a338db78Schristos 
856a338db78Schristos #ifdef HAVE_SYS_SOCKET_H
857a338db78Schristos #include <sys/socket.h>
858a338db78Schristos #endif
859a338db78Schristos 
860a338db78Schristos #ifdef HAVE_NETINET_IN_H
861a338db78Schristos #include <netinet/in.h>
862a338db78Schristos #endif
863a338db78Schristos 
864a338db78Schristos #ifdef HAVE_NETINET_TCP_H
865a338db78Schristos #include <netinet/tcp.h>
866a338db78Schristos #endif
867a338db78Schristos 
868a338db78Schristos #ifdef HAVE_ARPA_INET_H
869a338db78Schristos #include <arpa/inet.h>
870a338db78Schristos #endif
871a338db78Schristos 
872a338db78Schristos /* For Tru64 */
873a338db78Schristos #ifdef HAVE_SYS_BITYPES_H
874a338db78Schristos #include <sys/bitypes.h>
875a338db78Schristos #endif
876a338db78Schristos 
877a338db78Schristos 
878a338db78Schristos 
879a338db78Schristos #ifdef HAVE_ATTR_FORMAT
880a338db78Schristos #define ATTR_FORMAT(archetype, string_index, first_to_check) \
881a338db78Schristos     __attribute__ ((format (archetype, string_index, first_to_check)))
882a338db78Schristos #else /* !HAVE_ATTR_FORMAT */
883a338db78Schristos #define ATTR_FORMAT(archetype, string_index, first_to_check) /* empty */
884a338db78Schristos #endif /* !HAVE_ATTR_FORMAT */
885a338db78Schristos #if defined(__cplusplus)
886a338db78Schristos #define ATTR_UNUSED(x)
887a338db78Schristos #elif defined(HAVE_ATTR_UNUSED)
888*cb958623Schristos #define ATTR_UNUSED(x)  x __attribute__((__unused__))
889a338db78Schristos #else /* !HAVE_ATTR_UNUSED */
890a338db78Schristos #define ATTR_UNUSED(x)  x
891a338db78Schristos #endif /* !HAVE_ATTR_UNUSED */
892a338db78Schristos 
893a338db78Schristos 
894a338db78Schristos 
895a338db78Schristos #ifndef IPV6_MIN_MTU
896a338db78Schristos #define IPV6_MIN_MTU 1280
897a338db78Schristos #endif /* IPV6_MIN_MTU */
898a338db78Schristos 
899a338db78Schristos #ifndef AF_INET6
900a338db78Schristos #define AF_INET6	28
901a338db78Schristos #endif /* AF_INET6 */
902a338db78Schristos 
903a338db78Schristos 
904a338db78Schristos 
905a338db78Schristos /* maximum nesting of included files */
906a338db78Schristos #define MAXINCLUDES 10
907a338db78Schristos 
908a338db78Schristos 
909a338db78Schristos 
910a338db78Schristos #ifndef HAVE_B64_NTOP
911a338db78Schristos int b64_ntop(uint8_t const *src, size_t srclength,
912a338db78Schristos 	     char *target, size_t targsize);
913a338db78Schristos #endif /* !HAVE_B64_NTOP */
914a338db78Schristos #ifndef HAVE_B64_PTON
915a338db78Schristos int b64_pton(char const *src, uint8_t *target, size_t targsize);
916a338db78Schristos #endif /* !HAVE_B64_PTON */
917a338db78Schristos #ifndef HAVE_FSEEKO
918a338db78Schristos #define fseeko fseek
919a338db78Schristos #define ftello ftell
920a338db78Schristos #endif /* HAVE_FSEEKO */
921a338db78Schristos #ifndef HAVE_SNPRINTF
922a338db78Schristos #include <stdarg.h>
923a338db78Schristos int snprintf (char *str, size_t count, const char *fmt, ...);
924a338db78Schristos int vsnprintf (char *str, size_t count, const char *fmt, va_list arg);
925a338db78Schristos #endif /* HAVE_SNPRINTF */
926a338db78Schristos #ifndef HAVE_INET_PTON
927a338db78Schristos int inet_pton(int af, const char* src, void* dst);
928a338db78Schristos #endif /* HAVE_INET_PTON */
929a338db78Schristos #ifndef HAVE_INET_NTOP
930a338db78Schristos const char *inet_ntop(int af, const void *src, char *dst, size_t size);
931a338db78Schristos #endif
932a338db78Schristos #ifndef HAVE_INET_ATON
933a338db78Schristos int inet_aton(const char *cp, struct in_addr *addr);
934a338db78Schristos #endif
935a338db78Schristos #ifndef HAVE_MEMMOVE
936a338db78Schristos void *memmove(void *dest, const void *src, size_t n);
937a338db78Schristos #endif
938*cb958623Schristos #ifndef HAVE_EXPLICIT_BZERO
939*cb958623Schristos #define explicit_bzero(a, b) explicit_memset((a), 0, (b))
940*cb958623Schristos #endif
941a338db78Schristos #ifndef HAVE_STRLCAT
942a338db78Schristos size_t strlcat(char *dst, const char *src, size_t siz);
943a338db78Schristos #endif
944a338db78Schristos #ifndef HAVE_STRLCPY
945a338db78Schristos size_t strlcpy(char *dst, const char *src, size_t siz);
946a338db78Schristos #endif
947a338db78Schristos #ifndef HAVE_REALLOCARRAY
948a338db78Schristos void* reallocarray(void *ptr, size_t nmemb, size_t size);
949a338db78Schristos #endif
950a338db78Schristos #ifndef HAVE_GETADDRINFO
951a338db78Schristos #include "compat/fake-rfc2553.h"
952a338db78Schristos #endif
953a338db78Schristos #ifndef HAVE_STRPTIME
954a338db78Schristos #define HAVE_STRPTIME 1
955a338db78Schristos char *strptime(const char *s, const char *format, struct tm *tm);
956a338db78Schristos #endif
957a338db78Schristos #ifndef STRPTIME_WORKS
958a338db78Schristos #define STRPTIME_WORKS 1
959a338db78Schristos char *nsd_strptime(const char *s, const char *format, struct tm *tm);
960a338db78Schristos #define strptime(a,b,c) nsd_strptime((a),(b),(c))
961a338db78Schristos #endif
9626baaaf41Schristos #if (HAVE_CPU_SET_T || HAVE_CPUSET_T)
9636baaaf41Schristos #include "compat/cpuset.h"
9646baaaf41Schristos #endif
9656baaaf41Schristos #ifndef HAVE_SETPROCTITLE
9666baaaf41Schristos #ifdef __linux__
9676baaaf41Schristos #define HAVE_SETPROCTITLE 1
9686baaaf41Schristos #include <stdarg.h>
9696baaaf41Schristos void setproctitle(const char *fmt, ...);
9706baaaf41Schristos #endif
9716baaaf41Schristos #endif
972a338db78Schristos 
973a338db78Schristos 
974a338db78Schristos 
975a338db78Schristos #ifdef MEMCMP_IS_BROKEN
976a338db78Schristos #include "compat/memcmp.h"
977a338db78Schristos #define memcmp memcmp_nsd
978a338db78Schristos int memcmp(const void *x, const void *y, size_t n);
979a338db78Schristos #endif
980a338db78Schristos 
981a338db78Schristos 
982a338db78Schristos #ifndef MAXHOSTNAMELEN
983a338db78Schristos #define MAXHOSTNAMELEN 256
984a338db78Schristos #endif
985a338db78Schristos 
986a338db78Schristos 
987a338db78Schristos 
988a338db78Schristos 
989a338db78Schristos 
990a338db78Schristos /* provide timespec def if not available */
991a338db78Schristos #ifndef CONFIG_DEFINES
992a338db78Schristos #define CONFIG_DEFINES
993a338db78Schristos #ifndef HAVE_STRUCT_TIMESPEC
994a338db78Schristos #ifndef __timespec_defined
995a338db78Schristos #define __timespec_defined 1
996a338db78Schristos 	struct timespec {
997a338db78Schristos 		long    tv_sec;         /* seconds */
998a338db78Schristos 		long    tv_nsec;        /* nanoseconds */
999a338db78Schristos 	};
1000a338db78Schristos #endif /* !__timespec_defined */
1001a338db78Schristos #endif /* !HAVE_STRUCT_TIMESPEC */
1002a338db78Schristos #endif /* !CONFIG_DEFINES */
1003a338db78Schristos 
1004ff84eb62Schristos #ifdef PACKED_STRUCTS
1005ff84eb62Schristos #define ATTR_PACKED __attribute__((__packed__))
1006ff84eb62Schristos #else
1007ff84eb62Schristos #define ATTR_PACKED
1008ff84eb62Schristos #endif
1009e8c1c0b8Schristos 
1010