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