152a4bf6des/* config.h.  Generated from config.h.in by configure.  */
252a4bf6des/* config.h.in.  Generated from configure.ac by autoheader.  */
36a71b78cy/* $FreeBSD$ */
452a4bf6des
50b62c2bdes/* apply the noreturn attribute to a function that exits the program */
60b62c2bdes#define ATTR_NORETURN __attribute__((__noreturn__))
70b62c2bdes
80b62c2bdes/* apply the weak attribute to a symbol */
90b62c2bdes#define ATTR_WEAK __attribute__((weak))
100b62c2bdes
1152a4bf6des/* Directory to chroot to */
1252a4bf6des#define CHROOT_DIR "/var/unbound"
1352a4bf6des
14f3dda45des/* Define this to enable client subnet option. */
15bf48865des/* #undef CLIENT_SUBNET */
16f3dda45des
1763bb89edes/* Do sha512 definitions in config.h */
187e46405des/* #undef COMPAT_SHA512 */
1963bb89edes
2060290a3cy/* Command line arguments used with configure */
213087a96cy#define CONFCMDLINE "--with-ssl=/usr --with-libexpat=/usr --disable-dnscrypt --disable-dnstap --enable-ecdsa --disable-event-api --enable-gost --with-libevent --disable-subnet --disable-tfo-client --disable-tfo-server --with-pthreads--prefix=/usr --localstatedir=/var/unbound --mandir=/usr/share/man --build=freebsd"
2260290a3cy
2352a4bf6des/* Pathname to the Unbound configuration file */
24384b4d5des#define CONFIGFILE "/var/unbound/unbound.conf"
2552a4bf6des
2652a4bf6des/* Define this if on macOSX10.4-darwin8 and setreuid and setregid do not work
2752a4bf6des   */
2852a4bf6des/* #undef DARWIN_BROKEN_SETREUID */
2952a4bf6des
3052a4bf6des/* Whether daemon is deprecated */
3152a4bf6des/* #undef DEPRECATED_DAEMON */
3252a4bf6des
3363bb89edes/* default dnstap socket path */
347e46405des/* #undef DNSTAP_SOCKET_PATH */
3563bb89edes
3652a4bf6des/* Define if you want to use debug lock checking (slow). */
3752a4bf6des/* #undef ENABLE_LOCK_CHECKS */
3852a4bf6des
3952a4bf6des/* Define this if you enabled-allsymbols from libunbound to link binaries to
4052a4bf6des   it for smaller install size, but the libunbound export table is polluted by
4152a4bf6des   internal symbols */
4252a4bf6des/* #undef EXPORT_ALL_SYMBOLS */
4352a4bf6des
44d80a9d8des/* Define to 1 if you have the `accept4' function. */
45d80a9d8des#define HAVE_ACCEPT4 1
46d80a9d8des
4763bb89edes/* Define to 1 if you have the `arc4random' function. */
487e46405des#define HAVE_ARC4RANDOM 1
4963bb89edes
5063bb89edes/* Define to 1 if you have the `arc4random_uniform' function. */
517e46405des#define HAVE_ARC4RANDOM_UNIFORM 1
5263bb89edes
5352a4bf6des/* Define to 1 if you have the <arpa/inet.h> header file. */
5452a4bf6des#define HAVE_ARPA_INET_H 1
5552a4bf6des
5652a4bf6des/* Whether the C compiler accepts the "format" attribute */
5752a4bf6des#define HAVE_ATTR_FORMAT 1
5852a4bf6des
590b62c2bdes/* Whether the C compiler accepts the "noreturn" attribute */
600b62c2bdes#define HAVE_ATTR_NORETURN 1
610b62c2bdes
6252a4bf6des/* Whether the C compiler accepts the "unused" attribute */
6352a4bf6des#define HAVE_ATTR_UNUSED 1
6452a4bf6des
655e4e917des/* Whether the C compiler accepts the "weak" attribute */
66b8710acdes#define HAVE_ATTR_WEAK 1
675e4e917des
6808fe3b6des/* Define to 1 if you have the `chown' function. */
6952a4bf6des#define HAVE_CHOWN 1
7052a4bf6des
7152a4bf6des/* Define to 1 if you have the `chroot' function. */
7252a4bf6des#define HAVE_CHROOT 1
7352a4bf6des
74ca95f55des/* Define to 1 if you have the `CRYPTO_cleanup_all_ex_data' function. */
750b62c2bdes/* #undef HAVE_CRYPTO_CLEANUP_ALL_EX_DATA */
76ca95f55des
77ca7b0d3des/* Define to 1 if you have the `CRYPTO_THREADID_set_callback' function. */
78a26dd17des/* #undef HAVE_CRYPTO_THREADID_SET_CALLBACK */
79ca7b0d3des
8052a4bf6des/* Define to 1 if you have the `ctime_r' function. */
8152a4bf6des#define HAVE_CTIME_R 1
8252a4bf6des
8352a4bf6des/* Define to 1 if you have the `daemon' function. */
8452a4bf6des#define HAVE_DAEMON 1
8552a4bf6des
8663bb89edes/* Define to 1 if you have the declaration of `arc4random', and to 0 if you
8763bb89edes   don't. */
887e46405des/* #undef HAVE_DECL_ARC4RANDOM */
8963bb89edes
9063bb89edes/* Define to 1 if you have the declaration of `arc4random_uniform', and to 0
9163bb89edes   if you don't. */
927e46405des/* #undef HAVE_DECL_ARC4RANDOM_UNIFORM */
9363bb89edes
9460c7319des/* Define to 1 if you have the declaration of `evsignal_assign', and to 0 if
9560c7319des   you don't. */
96a26dd17des/* #undef HAVE_DECL_EVSIGNAL_ASSIGN */
9760c7319des
989ce1273des/* Define to 1 if you have the declaration of `inet_ntop', and to 0 if you
999ce1273des   don't. */
1008b73549des#define HAVE_DECL_INET_NTOP 1
1019ce1273des
1029ce1273des/* Define to 1 if you have the declaration of `inet_pton', and to 0 if you
1039ce1273des   don't. */
1048b73549des#define HAVE_DECL_INET_PTON 1
1059ce1273des
106a491280des/* Define to 1 if you have the declaration of `NID_ED25519', and to 0 if you
107a491280des   don't. */
1080b62c2bdes#define HAVE_DECL_NID_ED25519 1
109a491280des
1103bddc2edes/* Define to 1 if you have the declaration of `NID_ED448', and to 0 if you
1113bddc2edes   don't. */
1120b62c2bdes#define HAVE_DECL_NID_ED448 1
1133bddc2edes
11452a4bf6des/* Define to 1 if you have the declaration of `NID_secp384r1', and to 0 if you
11552a4bf6des   don't. */
11652a4bf6des#define HAVE_DECL_NID_SECP384R1 1
11752a4bf6des
11852a4bf6des/* Define to 1 if you have the declaration of `NID_X9_62_prime256v1', and to 0
11952a4bf6des   if you don't. */
12052a4bf6des#define HAVE_DECL_NID_X9_62_PRIME256V1 1
12152a4bf6des
1220b3e2c0des/* Define to 1 if you have the declaration of `reallocarray', and to 0 if you
1230b3e2c0des   don't. */
1243087a96cy#define HAVE_DECL_REALLOCARRAY 1
1250b3e2c0des
1263bddc2edes/* Define to 1 if you have the declaration of `redisConnect', and to 0 if you
1273bddc2edes   don't. */
1286c94117des/* #undef HAVE_DECL_REDISCONNECT */
1293bddc2edes
13052a4bf6des/* Define to 1 if you have the declaration of `sk_SSL_COMP_pop_free', and to 0
13152a4bf6des   if you don't. */
13252a4bf6des#define HAVE_DECL_SK_SSL_COMP_POP_FREE 1
13352a4bf6des
13452a4bf6des/* Define to 1 if you have the declaration of
13552a4bf6des   `SSL_COMP_get_compression_methods', and to 0 if you don't. */
13652a4bf6des#define HAVE_DECL_SSL_COMP_GET_COMPRESSION_METHODS 1
13752a4bf6des
1384350483des/* Define to 1 if you have the declaration of `SSL_CTX_set_ecdh_auto', and to
1394350483des   0 if you don't. */
140f2bca8ddes#define HAVE_DECL_SSL_CTX_SET_ECDH_AUTO 1
1414350483des
14263bb89edes/* Define to 1 if you have the declaration of `strlcat', and to 0 if you
14363bb89edes   don't. */
1447e46405des/* #undef HAVE_DECL_STRLCAT */
14563bb89edes
14663bb89edes/* Define to 1 if you have the declaration of `strlcpy', and to 0 if you
14763bb89edes   don't. */
1487e46405des/* #undef HAVE_DECL_STRLCPY */
14963bb89edes
150d7ed4d0des/* Define to 1 if you have the declaration of `XML_StopParser', and to 0 if
151d7ed4d0des   you don't. */
152f2bca8ddes#define HAVE_DECL_XML_STOPPARSER 1
153d7ed4d0des
15452a4bf6des/* Define to 1 if you have the <dlfcn.h> header file. */
15552a4bf6des#define HAVE_DLFCN_H 1
15652a4bf6des
1578d4ae2ddes/* Define to 1 if you have the `DSA_SIG_set0' function. */
1580b62c2bdes#define HAVE_DSA_SIG_SET0 1
1598d4ae2ddes
16063bb89edes/* Define to 1 if you have the <endian.h> header file. */
1617e46405des/* #undef HAVE_ENDIAN_H */
16263bb89edes
163958f197des/* Define to 1 if you have the `endprotoent' function. */
164f3c2b78des#define HAVE_ENDPROTOENT 1
165958f197des
166ca95f55des/* Define to 1 if you have the `endpwent' function. */
1678443feedes#define HAVE_ENDPWENT 1
168ca95f55des
169958f197des/* Define to 1 if you have the `endservent' function. */
170f3c2b78des#define HAVE_ENDSERVENT 1
17130c2432des
172ca95f55des/* Define to 1 if you have the `ERR_free_strings' function. */
1730b62c2bdes/* #undef HAVE_ERR_FREE_STRINGS */
174ca95f55des
175ca95f55des/* Define to 1 if you have the `ERR_load_crypto_strings' function. */
1760b62c2bdes/* #undef HAVE_ERR_LOAD_CRYPTO_STRINGS */
177ca95f55des
17860c7319des/* Define to 1 if you have the `event_assign' function. */
179a26dd17des/* #undef HAVE_EVENT_ASSIGN */
18060c7319des
18152a4bf6des/* Define to 1 if you have the `event_base_free' function. */
18252a4bf6des/* #undef HAVE_EVENT_BASE_FREE */
18352a4bf6des
18452a4bf6des/* Define to 1 if you have the `event_base_get_method' function. */
18552a4bf6des/* #undef HAVE_EVENT_BASE_GET_METHOD */
18652a4bf6des
18752a4bf6des/* Define to 1 if you have the `event_base_new' function. */
18852a4bf6des/* #undef HAVE_EVENT_BASE_NEW */
18952a4bf6des
19052a4bf6des/* Define to 1 if you have the `event_base_once' function. */
19152a4bf6des/* #undef HAVE_EVENT_BASE_ONCE */
19252a4bf6des
19352a4bf6des/* Define to 1 if you have the <event.h> header file. */
19452a4bf6des/* #undef HAVE_EVENT_H */
19552a4bf6des
1965c3c2e6des/* Define to 1 if you have the `EVP_aes_256_cbc' function. */
197a26dd17des#define HAVE_EVP_AES_256_CBC 1
1985c3c2e6des
199ca95f55des/* Define to 1 if you have the `EVP_cleanup' function. */
2000b62c2bdes/* #undef HAVE_EVP_CLEANUP */
201ca95f55des
202a491280des/* Define to 1 if you have the `EVP_DigestVerify' function. */
2030b62c2bdes#define HAVE_EVP_DIGESTVERIFY 1
204a491280des
2058d4ae2ddes/* Define to 1 if you have the `EVP_dss1' function. */
2060b62c2bdes/* #undef HAVE_EVP_DSS1 */
2078d4ae2ddes
2085c3c2e6des/* Define to 1 if you have the `EVP_EncryptInit_ex' function. */
209a26dd17des#define HAVE_EVP_ENCRYPTINIT_EX 1
2105c3c2e6des
2115e4e917des/* Define to 1 if you have the `EVP_MD_CTX_new' function. */
2120b62c2bdes#define HAVE_EVP_MD_CTX_NEW 1
2135e4e917des
21452a4bf6des/* Define to 1 if you have the `EVP_sha1' function. */
21552a4bf6des#define HAVE_EVP_SHA1 1
21652a4bf6des
21752a4bf6des/* Define to 1 if you have the `EVP_sha256' function. */
21852a4bf6des#define HAVE_EVP_SHA256 1
21952a4bf6des
22052a4bf6des/* Define to 1 if you have the `EVP_sha512' function. */
22152a4bf6des#define HAVE_EVP_SHA512 1
22252a4bf6des
22352a4bf6des/* Define to 1 if you have the `ev_default_loop' function. */
22452a4bf6des/* #undef HAVE_EV_DEFAULT_LOOP */
22552a4bf6des
22652a4bf6des/* Define to 1 if you have the `ev_loop' function. */
22752a4bf6des/* #undef HAVE_EV_LOOP */
22852a4bf6des
22952a4bf6des/* Define to 1 if you have the <expat.h> header file. */
23052a4bf6des#define HAVE_EXPAT_H 1
23152a4bf6des
2320b62c2bdes/* Define to 1 if you have the `explicit_bzero' function. */
2330b62c2bdes#define HAVE_EXPLICIT_BZERO 1
2340b62c2bdes
23552a4bf6des/* Define to 1 if you have the `fcntl' function. */
23652a4bf6des#define HAVE_FCNTL 1
23752a4bf6des
23852a4bf6des/* Define to 1 if you have the `FIPS_mode' function. */
23952a4bf6des#define HAVE_FIPS_MODE 1
24052a4bf6des
24152a4bf6des/* Define to 1 if you have the `fork' function. */
24252a4bf6des#define HAVE_FORK 1
24352a4bf6des
24452a4bf6des/* Define to 1 if fseeko (and presumably ftello) exists and is declared. */
24552a4bf6des#define HAVE_FSEEKO 1
24652a4bf6des
247d7ed4d0des/* Define to 1 if you have the `fsync' function. */
248f2bca8ddes#define HAVE_FSYNC 1
249d7ed4d0des
25052a4bf6des/* Whether getaddrinfo is available */
25152a4bf6des#define HAVE_GETADDRINFO 1
25252a4bf6des
25308fe3b6des/* Define to 1 if you have the `getauxval' function. */
25408fe3b6des/* #undef HAVE_GETAUXVAL */
25508fe3b6des
25663bb89edes/* Define to 1 if you have the `getentropy' function. */
2577e46405des/* #undef HAVE_GETENTROPY */
25863bb89edes
25952a4bf6des/* Define to 1 if you have the <getopt.h> header file. */
26052a4bf6des#define HAVE_GETOPT_H 1
26152a4bf6des
26252a4bf6des/* Define to 1 if you have the `getpwnam' function. */
26352a4bf6des#define HAVE_GETPWNAM 1
26452a4bf6des
26552a4bf6des/* Define to 1 if you have the `getrlimit' function. */
26652a4bf6des#define HAVE_GETRLIMIT 1
26752a4bf6des
26852a4bf6des/* Define to 1 if you have the `glob' function. */
26952a4bf6des#define HAVE_GLOB 1
27052a4bf6des
27152a4bf6des/* Define to 1 if you have the <glob.h> header file. */
27252a4bf6des#define HAVE_GLOB_H 1
27352a4bf6des
27452a4bf6des/* Define to 1 if you have the `gmtime_r' function. */
27552a4bf6des#define HAVE_GMTIME_R 1
27652a4bf6des
27752a4bf6des/* Define to 1 if you have the <grp.h> header file. */
27852a4bf6des#define HAVE_GRP_H 1
27952a4bf6des
2803bddc2edes/* Define to 1 if you have the <hiredis/hiredis.h> header file. */
2816c94117des/* #undef HAVE_HIREDIS_HIREDIS_H */
2823bddc2edes
2835c3c2e6des/* Define to 1 if you have the `HMAC_Init_ex' function. */
284a26dd17des#define HAVE_HMAC_INIT_EX 1
2855c3c2e6des
2865e4e917des/* If you have HMAC_Update */
287b8710acdes#define HAVE_HMAC_UPDATE 1
28852a4bf6des
28952a4bf6des/* Define to 1 if you have the `inet_aton' function. */
29052a4bf6des#define HAVE_INET_ATON 1
29152a4bf6des
29252a4bf6des/* Define to 1 if you have the `inet_ntop' function. */
29352a4bf6des#define HAVE_INET_NTOP 1
29452a4bf6des
29552a4bf6des/* Define to 1 if you have the `inet_pton' function. */
29652a4bf6des#define HAVE_INET_PTON 1
29752a4bf6des
29852a4bf6des/* Define to 1 if you have the `initgroups' function. */
29952a4bf6des#define HAVE_INITGROUPS 1
30052a4bf6des
30152a4bf6des/* Define to 1 if you have the <inttypes.h> header file. */
30252a4bf6des#define HAVE_INTTYPES_H 1
30352a4bf6des
30452a4bf6des/* if the function 'ioctlsocket' is available */
30552a4bf6des/* #undef HAVE_IOCTLSOCKET */
30652a4bf6des
30752a4bf6des/* Define to 1 if you have the <iphlpapi.h> header file. */
30852a4bf6des/* #undef HAVE_IPHLPAPI_H */
30952a4bf6des
310d7ed4d0des/* Define to 1 if you have the `isblank' function. */
311f2bca8ddes#define HAVE_ISBLANK 1
312d7ed4d0des
31352a4bf6des/* Define to 1 if you have the `kill' function. */
31452a4bf6des#define HAVE_KILL 1
31552a4bf6des
3163bddc2edes/* Define to 1 if you have the <libkern/OSByteOrder.h> header file. */
3176c94117des/* #undef HAVE_LIBKERN_OSBYTEORDER_H */
3183bddc2edes
31963bb89edes/* Define if we have LibreSSL */
3207e46405des/* #undef HAVE_LIBRESSL */
32163bb89edes
32252a4bf6des/* Define to 1 if you have the `localtime_r' function. */
32352a4bf6des#define HAVE_LOCALTIME_R 1
32452a4bf6des
32552a4bf6des/* Define to 1 if you have the <login_cap.h> header file. */
32652a4bf6des#define HAVE_LOGIN_CAP_H 1
32752a4bf6des
32852a4bf6des/* If have GNU libc compatible malloc */
32952a4bf6des#define HAVE_MALLOC 1
33052a4bf6des
33152a4bf6des/* Define to 1 if you have the `memmove' function. */
33252a4bf6des#define HAVE_MEMMOVE 1
33352a4bf6des
33452a4bf6des/* Define to 1 if you have the <memory.h> header file. */
33552a4bf6des#define HAVE_MEMORY_H 1
33652a4bf6des
33752a4bf6des/* Define to 1 if you have the <netdb.h> header file. */
33852a4bf6des#define HAVE_NETDB_H 1
33952a4bf6des
34052a4bf6des/* Define to 1 if you have the <netinet/in.h> header file. */
34152a4bf6des#define HAVE_NETINET_IN_H 1
34252a4bf6des
343333413edes/* Define to 1 if you have the <netinet/tcp.h> header file. */
344333413edes#define HAVE_NETINET_TCP_H 1
345333413edes
346d7ed4d0des/* Use libnettle for crypto */
347f2bca8ddes/* #undef HAVE_NETTLE */
348d7ed4d0des
349ca95f55des/* Define to 1 if you have the <nettle/dsa-compat.h> header file. */
3508443feedes/* #undef HAVE_NETTLE_DSA_COMPAT_H */
351ca95f55des
35248dec7ades/* Define to 1 if you have the <nettle/eddsa.h> header file. */
35348dec7ades/* #undef HAVE_NETTLE_EDDSA_H */
35448dec7ades
35552a4bf6des/* Use libnss for crypto */
35652a4bf6des/* #undef HAVE_NSS */
35752a4bf6des
358ca95f55des/* Define to 1 if you have the `OpenSSL_add_all_digests' function. */
3590b62c2bdes/* #undef HAVE_OPENSSL_ADD_ALL_DIGESTS */
360ca95f55des
361ca95f55des/* Define to 1 if you have the <openssl/bn.h> header file. */
3628443feedes#define HAVE_OPENSSL_BN_H 1
363ca95f55des
36452a4bf6des/* Define to 1 if you have the `OPENSSL_config' function. */
36552a4bf6des#define HAVE_OPENSSL_CONFIG 1
36652a4bf6des
36752a4bf6des/* Define to 1 if you have the <openssl/conf.h> header file. */
36852a4bf6des#define HAVE_OPENSSL_CONF_H 1
36952a4bf6des
370ca95f55des/* Define to 1 if you have the <openssl/dh.h> header file. */
3718443feedes#define HAVE_OPENSSL_DH_H 1
372ca95f55des
373ca95f55des/* Define to 1 if you have the <openssl/dsa.h> header file. */
3748443feedes#define HAVE_OPENSSL_DSA_H 1
375ca95f55des
37652a4bf6des/* Define to 1 if you have the <openssl/engine.h> header file. */
37752a4bf6des#define HAVE_OPENSSL_ENGINE_H 1
37852a4bf6des
37952a4bf6des/* Define to 1 if you have the <openssl/err.h> header file. */
38052a4bf6des#define HAVE_OPENSSL_ERR_H 1
38152a4bf6des
382ca95f55des/* Define to 1 if you have the `OPENSSL_init_crypto' function. */
3830b62c2bdes#define HAVE_OPENSSL_INIT_CRYPTO 1
384ca95f55des
385ca95f55des/* Define to 1 if you have the `OPENSSL_init_ssl' function. */
3860b62c2bdes#define HAVE_OPENSSL_INIT_SSL 1
387ca95f55des
38852a4bf6des/* Define to 1 if you have the <openssl/rand.h> header file. */
38952a4bf6des#define HAVE_OPENSSL_RAND_H 1
39052a4bf6des
391ca95f55des/* Define to 1 if you have the <openssl/rsa.h> header file. */
3928443feedes#define HAVE_OPENSSL_RSA_H 1
393ca95f55des
39452a4bf6des/* Define to 1 if you have the <openssl/ssl.h> header file. */
39552a4bf6des#define HAVE_OPENSSL_SSL_H 1
39652a4bf6des
39752a4bf6des/* Define if you have POSIX threads libraries and header files. */
39852a4bf6des#define HAVE_PTHREAD 1
39952a4bf6des
400c6f87fddes/* Have PTHREAD_PRIO_INHERIT. */
401f3c2b78des#define HAVE_PTHREAD_PRIO_INHERIT 1
402c6f87fddes
40352a4bf6des/* Define to 1 if the system has the type `pthread_rwlock_t'. */
40452a4bf6des#define HAVE_PTHREAD_RWLOCK_T 1
40552a4bf6des
40652a4bf6des/* Define to 1 if the system has the type `pthread_spinlock_t'. */
40752a4bf6des#define HAVE_PTHREAD_SPINLOCK_T 1
40852a4bf6des
40952a4bf6des/* Define to 1 if you have the <pwd.h> header file. */
41052a4bf6des#define HAVE_PWD_H 1
41152a4bf6des
41252a4bf6des/* Define if you have Python libraries and header files. */
41352a4bf6des/* #undef HAVE_PYTHON */
41452a4bf6des
41552a4bf6des/* Define to 1 if you have the `random' function. */
41652a4bf6des#define HAVE_RANDOM 1
41752a4bf6des
418ca95f55des/* Define to 1 if you have the `RAND_cleanup' function. */
4190b62c2bdes/* #undef HAVE_RAND_CLEANUP */
420ca95f55des
42160c7319des/* If we have reallocarray(3) */
422c5050a3des#define HAVE_REALLOCARRAY 1
4230b3e2c0des
42452a4bf6des/* Define to 1 if you have the `recvmsg' function. */
42552a4bf6des#define HAVE_RECVMSG 1
42652a4bf6des
42752a4bf6des/* Define to 1 if you have the `sendmsg' function. */
42852a4bf6des#define HAVE_SENDMSG 1
42952a4bf6des
43052a4bf6des/* Define to 1 if you have the `setregid' function. */
43152a4bf6des/* #undef HAVE_SETREGID */
43252a4bf6des
43352a4bf6des/* Define to 1 if you have the `setresgid' function. */
43452a4bf6des#define HAVE_SETRESGID 1
43552a4bf6des
43652a4bf6des/* Define to 1 if you have the `setresuid' function. */
43752a4bf6des#define HAVE_SETRESUID 1
43852a4bf6des
43952a4bf6des/* Define to 1 if you have the `setreuid' function. */
44052a4bf6des/* #undef HAVE_SETREUID */
44152a4bf6des
44252a4bf6des/* Define to 1 if you have the `setrlimit' function. */
44352a4bf6des#define HAVE_SETRLIMIT 1
44452a4bf6des
44552a4bf6des/* Define to 1 if you have the `setsid' function. */
44652a4bf6des#define HAVE_SETSID 1
44752a4bf6des
44852a4bf6des/* Define to 1 if you have the `setusercontext' function. */
44952a4bf6des#define HAVE_SETUSERCONTEXT 1
45052a4bf6des
45163bb89edes/* Define to 1 if you have the `SHA512_Update' function. */
4527e46405des/* #undef HAVE_SHA512_UPDATE */
45363bb89edes
454f3dda45des/* Define to 1 if you have the `shmget' function. */
455bf48865des#define HAVE_SHMGET 1
456f3dda45des
45752a4bf6des/* Define to 1 if you have the `sigprocmask' function. */
45852a4bf6des#define HAVE_SIGPROCMASK 1
45952a4bf6des
46052a4bf6des/* Define to 1 if you have the `sleep' function. */
46152a4bf6des#define HAVE_SLEEP 1
46252a4bf6des
46352a4bf6des/* Define to 1 if you have the `snprintf' function. */
46452a4bf6des#define HAVE_SNPRINTF 1
46552a4bf6des
46652a4bf6des/* Define to 1 if you have the `socketpair' function. */
46752a4bf6des#define HAVE_SOCKETPAIR 1
46852a4bf6des
46952a4bf6des/* Using Solaris threads */
47052a4bf6des/* #undef HAVE_SOLARIS_THREADS */
47152a4bf6des
47252a4bf6des/* Define to 1 if you have the `srandom' function. */
47352a4bf6des#define HAVE_SRANDOM 1
47452a4bf6des
47552a4bf6des/* Define if you have the SSL libraries installed. */
47652a4bf6des#define HAVE_SSL /**/
47752a4bf6des
4785c3c2e6des/* Define to 1 if you have the `SSL_CTX_set_ciphersuites' function. */
479a26dd17des#define HAVE_SSL_CTX_SET_CIPHERSUITES 1
4805c3c2e6des
4818d4ae2ddes/* Define to 1 if you have the `SSL_CTX_set_security_level' function. */
4820b62c2bdes#define HAVE_SSL_CTX_SET_SECURITY_LEVEL 1
4838d4ae2ddes
4845c3c2e6des/* Define to 1 if you have the `SSL_CTX_set_tlsext_ticket_key_cb' function. */
485a26dd17des/* #undef HAVE_SSL_CTX_SET_TLSEXT_TICKET_KEY_CB */
4865c3c2e6des
4874c38c39des/* Define to 1 if you have the `SSL_get0_peername' function. */
4880b62c2bdes#define HAVE_SSL_GET0_PEERNAME 1
4894c38c39des
4904c38c39des/* Define to 1 if you have the `SSL_set1_host' function. */
4910b62c2bdes#define HAVE_SSL_SET1_HOST 1
4924c38c39des
49352a4bf6des/* Define to 1 if you have the <stdarg.h> header file. */
49452a4bf6des#define HAVE_STDARG_H 1
49552a4bf6des
49652a4bf6des/* Define to 1 if you have the <stdbool.h> header file. */
49752a4bf6des#define HAVE_STDBOOL_H 1
49852a4bf6des
49952a4bf6des/* Define to 1 if you have the <stdint.h> header file. */
50052a4bf6des#define HAVE_STDINT_H 1
50152a4bf6des
50252a4bf6des/* Define to 1 if you have the <stdlib.h> header file. */
50352a4bf6des#define HAVE_STDLIB_H 1
50452a4bf6des
50552a4bf6des/* Define to 1 if you have the `strftime' function. */
50652a4bf6des#define HAVE_STRFTIME 1
50752a4bf6des
50852a4bf6des/* Define to 1 if you have the <strings.h> header file. */
50952a4bf6des#define HAVE_STRINGS_H 1
51052a4bf6des
51152a4bf6des/* Define to 1 if you have the <string.h> header file. */
51252a4bf6des#define HAVE_STRING_H 1
51352a4bf6des
514958f197des/* Define to 1 if you have the `strlcat' function. */
515f3c2b78des#define HAVE_STRLCAT 1
51630c2432des
51752a4bf6des/* Define to 1 if you have the `strlcpy' function. */
51852a4bf6des#define HAVE_STRLCPY 1
51952a4bf6des
52052a4bf6des/* Define to 1 if you have the `strptime' function. */
52152a4bf6des#define HAVE_STRPTIME 1
52252a4bf6des
5235e4e917des/* Define to 1 if you have the `strsep' function. */
524b8710acdes#define HAVE_STRSEP 1
5255e4e917des
52652a4bf6des/* Define to 1 if `ipi_spec_dst' is a member of `struct in_pktinfo'. */
52752a4bf6des/* #undef HAVE_STRUCT_IN_PKTINFO_IPI_SPEC_DST */
52852a4bf6des
52984a33ebdes/* Define to 1 if `sun_len' is a member of `struct sockaddr_un'. */
53084a33ebdes#define HAVE_STRUCT_SOCKADDR_UN_SUN_LEN 1
53184a33ebdes
53252a4bf6des/* Define if you have Swig libraries and header files. */
53352a4bf6des/* #undef HAVE_SWIG */
53452a4bf6des
53552a4bf6des/* Define to 1 if you have the <syslog.h> header file. */
53652a4bf6des#define HAVE_SYSLOG_H 1
53752a4bf6des
5389ce1273des/* Define to 1 if systemd should be used */
5398b73549des/* #undef HAVE_SYSTEMD */
5409ce1273des
5413bddc2edes/* Define to 1 if you have the <sys/endian.h> header file. */
5426c94117des#define HAVE_SYS_ENDIAN_H 1
5433bddc2edes
544f3dda45des/* Define to 1 if you have the <sys/ipc.h> header file. */
545bf48865des#define HAVE_SYS_IPC_H 1
546f3dda45des
54752a4bf6des/* Define to 1 if you have the <sys/param.h> header file. */
54852a4bf6des#define HAVE_SYS_PARAM_H 1
54952a4bf6des
55052a4bf6des/* Define to 1 if you have the <sys/resource.h> header file. */
55152a4bf6des#define HAVE_SYS_RESOURCE_H 1
55252a4bf6des
55363bb89edes/* Define to 1 if you have the <sys/sha2.h> header file. */
5547e46405des/* #undef HAVE_SYS_SHA2_H */
55563bb89edes
556f3dda45des/* Define to 1 if you have the <sys/shm.h> header file. */
557bf48865des#define HAVE_SYS_SHM_H 1
558f3dda45des
55952a4bf6des/* Define to 1 if you have the <sys/socket.h> header file. */
56052a4bf6des#define HAVE_SYS_SOCKET_H 1
56152a4bf6des
56252a4bf6des/* Define to 1 if you have the <sys/stat.h> header file. */
56352a4bf6des#define HAVE_SYS_STAT_H 1
56452a4bf6des
56563bb89edes/* Define to 1 if you have the <sys/sysctl.h> header file. */
5667e46405des/* #undef HAVE_SYS_SYSCTL_H */
56763bb89edes
56852a4bf6des/* Define to 1 if you have the <sys/types.h> header file. */
56952a4bf6des#define HAVE_SYS_TYPES_H 1
57052a4bf6des
57152a4bf6des/* Define to 1 if you have the <sys/uio.h> header file. */
57252a4bf6des#define HAVE_SYS_UIO_H 1
57352a4bf6des
574266f3b9des/* Define to 1 if you have the <sys/un.h> header file. */
575266f3b9des#define HAVE_SYS_UN_H 1
576266f3b9des
57752a4bf6des/* Define to 1 if you have the <sys/wait.h> header file. */
57852a4bf6des#define HAVE_SYS_WAIT_H 1
57952a4bf6des
58052a4bf6des/* Define to 1 if you have the <time.h> header file. */
58152a4bf6des#define HAVE_TIME_H 1
58252a4bf6des
58352a4bf6des/* Define to 1 if you have the `tzset' function. */
58452a4bf6des#define HAVE_TZSET 1
58552a4bf6des
58652a4bf6des/* Define to 1 if you have the <unistd.h> header file. */
58752a4bf6des#define HAVE_UNISTD_H 1
58852a4bf6des
58952a4bf6des/* Define to 1 if you have the `usleep' function. */
59052a4bf6des#define HAVE_USLEEP 1
59152a4bf6des
59252a4bf6des/* Define to 1 if you have the `vfork' function. */
59352a4bf6des#define HAVE_VFORK 1
59452a4bf6des
59552a4bf6des/* Define to 1 if you have the <vfork.h> header file. */
59652a4bf6des/* #undef HAVE_VFORK_H */
59752a4bf6des
59852a4bf6des/* Define to 1 if you have the <windows.h> header file. */
59952a4bf6des/* #undef HAVE_WINDOWS_H */
60052a4bf6des
60152a4bf6des/* Using Windows threads */
60252a4bf6des/* #undef HAVE_WINDOWS_THREADS */
60352a4bf6des
60452a4bf6des/* Define to 1 if you have the <winsock2.h> header file. */
60552a4bf6des/* #undef HAVE_WINSOCK2_H */
60652a4bf6des
60752a4bf6des/* Define to 1 if `fork' works. */
60852a4bf6des#define HAVE_WORKING_FORK 1
60952a4bf6des
61052a4bf6des/* Define to 1 if `vfork' works. */
61152a4bf6des#define HAVE_WORKING_VFORK 1
61252a4bf6des
61352a4bf6des/* Define to 1 if you have the `writev' function. */
61452a4bf6des#define HAVE_WRITEV 1
61552a4bf6des
61652a4bf6des/* Define to 1 if you have the <ws2tcpip.h> header file. */
61752a4bf6des/* #undef HAVE_WS2TCPIP_H */
61852a4bf6des
6195c3c2e6des/* Define to 1 if you have the `X509_VERIFY_PARAM_set1_host' function. */
620a26dd17des#define HAVE_X509_VERIFY_PARAM_SET1_HOST 1
6215c3c2e6des
62252a4bf6des/* Define to 1 if you have the `_beginthreadex' function. */
62352a4bf6des/* #undef HAVE__BEGINTHREADEX */
62452a4bf6des
62560290a3cy/* If HMAC_Init_ex() returns void */
6263087a96cy/* #undef HMAC_INIT_EX_RETURNS_VOID */
62760290a3cy
62852a4bf6des/* if lex has yylex_destroy */
62952a4bf6des#define LEX_HAS_YYLEX_DESTROY 1
63052a4bf6des
631333413edes/* Define to the sub-directory where libtool stores uninstalled libraries. */
63252a4bf6des#define LT_OBJDIR ".libs/"
63352a4bf6des
63452a4bf6des/* Define to the maximum message length to pass to syslog. */
63552a4bf6des#define MAXSYSLOGMSGLEN 10240
63652a4bf6des
63752a4bf6des/* Define if memcmp() does not compare unsigned bytes */
63852a4bf6des/* #undef MEMCMP_IS_BROKEN */
63952a4bf6des
64052a4bf6des/* Define if mkdir has one argument. */
64152a4bf6des/* #undef MKDIR_HAS_ONE_ARG */
64252a4bf6des
64352a4bf6des/* Define if the network stack does not fully support nonblocking io (causes
64452a4bf6des   lower performance). */
64552a4bf6des/* #undef NONBLOCKING_IS_BROKEN */
64652a4bf6des
64752a4bf6des/* Put -D_ALL_SOURCE define in config.h */
64852a4bf6des/* #undef OMITTED__D_ALL_SOURCE */
64952a4bf6des
65052a4bf6des/* Put -D_BSD_SOURCE define in config.h */
65152a4bf6des/* #undef OMITTED__D_BSD_SOURCE */
65252a4bf6des
653333413edes/* Put -D_DEFAULT_SOURCE define in config.h */
654333413edes/* #undef OMITTED__D_DEFAULT_SOURCE */
655333413edes
65652a4bf6des/* Put -D_GNU_SOURCE define in config.h */
65752a4bf6des/* #undef OMITTED__D_GNU_SOURCE */
65852a4bf6des
65952a4bf6des/* Put -D_LARGEFILE_SOURCE=1 define in config.h */
66052a4bf6des/* #undef OMITTED__D_LARGEFILE_SOURCE_1 */
66152a4bf6des
66252a4bf6des/* Put -D_POSIX_C_SOURCE=200112 define in config.h */
66352a4bf6des/* #undef OMITTED__D_POSIX_C_SOURCE_200112 */
66452a4bf6des
66552a4bf6des/* Put -D_XOPEN_SOURCE=600 define in config.h */
66652a4bf6des/* #undef OMITTED__D_XOPEN_SOURCE_600 */
66752a4bf6des
66852a4bf6des/* Put -D_XOPEN_SOURCE_EXTENDED=1 define in config.h */
66952a4bf6des/* #undef OMITTED__D_XOPEN_SOURCE_EXTENDED_1 */
67052a4bf6des
67152a4bf6des/* Put -D__EXTENSIONS__ define in config.h */
67252a4bf6des/* #undef OMITTED__D__EXTENSIONS__ */
67352a4bf6des
67452a4bf6des/* Define to the address where bug reports for this package should be sent. */
6753087a96cy#define PACKAGE_BUGREPORT "unbound-bugs@nlnetlabs.nl or https://github.com/NLnetLabs/unbound/issues"
67652a4bf6des
67752a4bf6des/* Define to the full name of this package. */
67852a4bf6des#define PACKAGE_NAME "unbound"
67952a4bf6des
68052a4bf6des/* Define to the full name and version of this package. */
6819c0306ecy#define PACKAGE_STRING "unbound 1.10.1"
68252a4bf6des
68352a4bf6des/* Define to the one symbol short name of this package. */
68452a4bf6des#define PACKAGE_TARNAME "unbound"
68552a4bf6des
68652a4bf6des/* Define to the home page for this package. */
68752a4bf6des#define PACKAGE_URL ""
68852a4bf6des
68952a4bf6des/* Define to the version of this package. */
6906a4738ccy#define PACKAGE_VERSION "1.11.0"
69152a4bf6des
69252a4bf6des/* default pidfile location */
69352a4bf6des#define PIDFILE "/var/unbound/unbound.pid"
69452a4bf6des
69552a4bf6des/* Define to necessary symbol if this constant uses a non-standard name on
69652a4bf6des   your system. */
69752a4bf6des/* #undef PTHREAD_CREATE_JOINABLE */
69852a4bf6des
69952a4bf6des/* Define as the return type of signal handlers (`int' or `void'). */
70052a4bf6des#define RETSIGTYPE void
70152a4bf6des
70227f0539des/* if REUSEPORT is enabled by default */
70327f0539des#define REUSEPORT_DEFAULT 0
70427f0539des
70552a4bf6des/* default rootkey location */
70652a4bf6des#define ROOT_ANCHOR_FILE "/var/unbound/root.key"
70752a4bf6des
70852a4bf6des/* default rootcert location */
70952a4bf6des#define ROOT_CERT_FILE "/var/unbound/icannbundle.pem"
71052a4bf6des
71152a4bf6des/* version number for resource files */
7126a4738ccy#define RSRC_PACKAGE_VERSION 1,11,0,0
71352a4bf6des
71452a4bf6des/* Directory to chdir to */
71552a4bf6des#define RUN_DIR "/var/unbound"
71652a4bf6des
71752a4bf6des/* Shared data */
71852a4bf6des#define SHARE_DIR "/var/unbound"
71952a4bf6des
7203087a96cy/* The size of `size_t'. */
7213087a96cy#ifdef  __LP64__
7223087a96cy#define SIZEOF_SIZE_T 8
7233087a96cy#else
7243087a96cy#define SIZEOF_SIZE_T 4
7253087a96cy#endif
72660290a3cy
727958f197des/* The size of `time_t', as computed by sizeof. */
7283087a96cy#ifdef  __i386__
7293087a96cy#define SIZEOF_TIME_T 4
7303087a96cy#else
731f3c2b78des#define SIZEOF_TIME_T 8
7323087a96cy#endif
73330c2432des
734d7ed4d0des/* define if (v)snprintf does not return length needed, (but length used) */
735f2bca8ddes/* #undef SNPRINTF_RET_BROKEN */
736d7ed4d0des
7374c38c39des/* Define to 1 if libsodium supports sodium_set_misuse_handler */
73862789eddes/* #undef SODIUM_MISUSE_HANDLER */
7394c38c39des
74052a4bf6des/* Define to 1 if you have the ANSI C header files. */
74152a4bf6des#define STDC_HEADERS 1
74252a4bf6des
74352a4bf6des/* use default strptime. */
74452a4bf6des#define STRPTIME_WORKS 1
74552a4bf6des
74652a4bf6des/* Use win32 resources and API */
74752a4bf6des/* #undef UB_ON_WINDOWS */
74852a4bf6des
74960290a3cy/* the SYSLOG_FACILITY to use, default LOG_DAEMON */
7503087a96cy#define UB_SYSLOG_FACILITY LOG_DAEMON
75160290a3cy
75252a4bf6des/* default username */
75352a4bf6des#define UB_USERNAME "unbound"
75452a4bf6des
75552a4bf6des/* use to enable lightweight alloc assertions, for debug use */
75652a4bf6des/* #undef UNBOUND_ALLOC_LITE */
75752a4bf6des
75852a4bf6des/* use malloc not regions, for debug use */
75952a4bf6des/* #undef UNBOUND_ALLOC_NONREGIONAL */
76052a4bf6des
76152a4bf6des/* use statistics for allocs and frees, for debug use */
76252a4bf6des/* #undef UNBOUND_ALLOC_STATS */
76352a4bf6des
76452a4bf6des/* define this to enable debug checks. */
76552a4bf6des/* #undef UNBOUND_DEBUG */
76652a4bf6des
7675e4e917des/* Define to 1 to use cachedb support */
768b8710acdes/* #undef USE_CACHEDB */
7695e4e917des
770f3dda45des/* Define to 1 to enable dnscrypt support */
771bf48865des/* #undef USE_DNSCRYPT */
772f3dda45des
773a491280des/* Define to 1 to enable dnscrypt with xchacha20 support */
774c7bc6bcdes/* #undef USE_DNSCRYPT_XCHACHA20 */
775a491280des
77663bb89edes/* Define to 1 to enable dnstap support */
7777e46405des/* #undef USE_DNSTAP */
77863bb89edes
7795e4e917des/* Define this to enable DSA support. */
780b8710acdes#define USE_DSA 1
7815e4e917des
78252a4bf6des/* Define this to enable ECDSA support. */
78352a4bf6des#define USE_ECDSA 1
78452a4bf6des
78552a4bf6des/* Define this to enable an EVP workaround for older openssl */
78652a4bf6des/* #undef USE_ECDSA_EVP_WORKAROUND */
78752a4bf6des
788a491280des/* Define this to enable ED25519 support. */
7890b62c2bdes#define USE_ED25519 1
790a491280des
7913bddc2edes/* Define this to enable ED448 support. */
7920b62c2bdes#define USE_ED448 1
7933bddc2edes
79452a4bf6des/* Define this to enable GOST support. */
7950b62c2bdes/* #undef USE_GOST */
79652a4bf6des
797a491280des/* Define to 1 to use ipsecmod support. */
798c7bc6bcdes/* #undef USE_IPSECMOD */
799a491280des
80060290a3cy/* Define to 1 to use ipset support */
8013087a96cy/* #undef USE_IPSET */
80260290a3cy
80352a4bf6des/* Define if you want to use internal select based events */
80452a4bf6des#define USE_MINI_EVENT 1
80552a4bf6des
806ca95f55des/* Define this to enable client TCP Fast Open. */
8078443feedes/* #undef USE_MSG_FASTOPEN */
808ca95f55des
809ca95f55des/* Define this to enable client TCP Fast Open. */
8108443feedes/* #undef USE_OSX_MSG_FASTOPEN */
811ca95f55des
8123bddc2edes/* Define this to use hiredis client. */
8136c94117des/* #undef USE_REDIS */
8143bddc2edes
815f3dda45des/* Define this to enable SHA1 support. */
816bf48865des#define USE_SHA1 1
817f3dda45des
81852a4bf6des/* Define this to enable SHA256 and SHA512 support. */
81952a4bf6des#define USE_SHA2 1
82052a4bf6des
82152a4bf6des/* Enable extensions on AIX 3, Interix.  */
82252a4bf6des#ifndef _ALL_SOURCE
82352a4bf6des# define _ALL_SOURCE 1
82452a4bf6des#endif
82552a4bf6des/* Enable GNU extensions on systems that have them.  */
82652a4bf6des#ifndef _GNU_SOURCE
82752a4bf6des# define _GNU_SOURCE 1
82852a4bf6des#endif
82952a4bf6des/* Enable threading extensions on Solaris.  */
83052a4bf6des#ifndef _POSIX_PTHREAD_SEMANTICS
83152a4bf6des# define _POSIX_PTHREAD_SEMANTICS 1
83252a4bf6des#endif
83352a4bf6des/* Enable extensions on HP NonStop.  */
83452a4bf6des#ifndef _TANDEM_SOURCE
83552a4bf6des# define _TANDEM_SOURCE 1
83652a4bf6des#endif
83752a4bf6des/* Enable general extensions on Solaris.  */
83852a4bf6des#ifndef __EXTENSIONS__
83952a4bf6des# define __EXTENSIONS__ 1
84052a4bf6des#endif
84152a4bf6des
84252a4bf6des
843ca95f55des/* Define this to enable server TCP Fast Open. */
8448443feedes/* #undef USE_TCP_FASTOPEN */
845ca95f55des
84652a4bf6des/* Whether the windows socket API is used */
84752a4bf6des/* #undef USE_WINSOCK */
84852a4bf6des
84952a4bf6des/* the version of the windows API enabled */
85052a4bf6des#define WINVER 0x0502
85152a4bf6des
85252a4bf6des/* Define if you want Python module. */
85352a4bf6des/* #undef WITH_PYTHONMODULE */
85452a4bf6des
85552a4bf6des/* Define if you want PyUnbound. */
85652a4bf6des/* #undef WITH_PYUNBOUND */
85752a4bf6des
85852a4bf6des/* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a
85952a4bf6des   `char[]'. */
86052a4bf6des#define YYTEXT_POINTER 1
86152a4bf6des
86252a4bf6des/* Enable large inode numbers on Mac OS X 10.5.  */
86352a4bf6des#ifndef _DARWIN_USE_64_BIT_INODE
86452a4bf6des# define _DARWIN_USE_64_BIT_INODE 1
86552a4bf6des#endif
86652a4bf6des
86752a4bf6des/* Number of bits in a file offset, on hosts where this is settable. */
86852a4bf6des/* #undef _FILE_OFFSET_BITS */
86952a4bf6des
87052a4bf6des/* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */
87152a4bf6des/* #undef _LARGEFILE_SOURCE */
87252a4bf6des
87352a4bf6des/* Define for large files, on AIX-style hosts. */
87452a4bf6des/* #undef _LARGE_FILES */
87552a4bf6des
87652a4bf6des/* Define to 1 if on MINIX. */
87752a4bf6des/* #undef _MINIX */
87852a4bf6des
879958f197des/* Enable for compile on Minix */
880f3c2b78des/* #undef _NETBSD_SOURCE */
88130c2432des
88252a4bf6des/* Define to 2 if the system does not provide POSIX.1 features except with
88352a4bf6des   this defined. */
88452a4bf6des/* #undef _POSIX_1_SOURCE */
88552a4bf6des
88652a4bf6des/* Define to 1 if you need to in order for `stat' and other things to work. */
88752a4bf6des/* #undef _POSIX_SOURCE */
88852a4bf6des
88952a4bf6des/* Define to empty if `const' does not conform to ANSI C. */
89052a4bf6des/* #undef const */
89152a4bf6des
89252a4bf6des/* Define to `int' if <sys/types.h> doesn't define. */
89352a4bf6des/* #undef gid_t */
89452a4bf6des
89552a4bf6des/* in_addr_t */
89652a4bf6des/* #undef in_addr_t */
89752a4bf6des
89852a4bf6des/* in_port_t */
89952a4bf6des/* #undef in_port_t */
90052a4bf6des
90152a4bf6des/* Define to `__inline__' or `__inline' if that's what the C compiler
90252a4bf6des   calls it, or to nothing if 'inline' is not supported under any name.  */
90352a4bf6des#ifndef __cplusplus
90452a4bf6des/* #undef inline */
90552a4bf6des#endif
90652a4bf6des
90752a4bf6des/* Define to `short' if <sys/types.h> does not define. */
90852a4bf6des/* #undef int16_t */
90952a4bf6des
91052a4bf6des/* Define to `int' if <sys/types.h> does not define. */
91152a4bf6des/* #undef int32_t */
91252a4bf6des
91352a4bf6des/* Define to `long long' if <sys/types.h> does not define. */
91452a4bf6des/* #undef int64_t */
91552a4bf6des
91652a4bf6des/* Define to `signed char' if <sys/types.h> does not define. */
91752a4bf6des/* #undef int8_t */
91852a4bf6des
91952a4bf6des/* Define if replacement function should be used. */
92052a4bf6des/* #undef malloc */
92152a4bf6des
92252a4bf6des/* Define to `long int' if <sys/types.h> does not define. */
92352a4bf6des/* #undef off_t */
92452a4bf6des
92552a4bf6des/* Define to `int' if <sys/types.h> does not define. */
92652a4bf6des/* #undef pid_t */
92752a4bf6des
92852a4bf6des/* Define to 'int' if not defined */
92952a4bf6des/* #undef rlim_t */
93052a4bf6des
93152a4bf6des/* Define to `unsigned int' if <sys/types.h> does not define. */
93252a4bf6des/* #undef size_t */
93352a4bf6des
93452a4bf6des/* Define to 'int' if not defined */
93552a4bf6des/* #undef socklen_t */
93652a4bf6des
93752a4bf6des/* Define to `int' if <sys/types.h> does not define. */
93852a4bf6des/* #undef ssize_t */
93952a4bf6des
94052a4bf6des/* Define to 'unsigned char if not defined */
94152a4bf6des/* #undef u_char */
94252a4bf6des
94352a4bf6des/* Define to `int' if <sys/types.h> doesn't define. */
94452a4bf6des/* #undef uid_t */
94552a4bf6des
94652a4bf6des/* Define to `unsigned short' if <sys/types.h> does not define. */
94752a4bf6des/* #undef uint16_t */
94852a4bf6des
94952a4bf6des/* Define to `unsigned int' if <sys/types.h> does not define. */
95052a4bf6des/* #undef uint32_t */
95152a4bf6des
95252a4bf6des/* Define to `unsigned long long' if <sys/types.h> does not define. */
95352a4bf6des/* #undef uint64_t */
95452a4bf6des
95552a4bf6des/* Define to `unsigned char' if <sys/types.h> does not define. */
95652a4bf6des/* #undef uint8_t */
95752a4bf6des
95852a4bf6des/* Define as `fork' if `vfork' does not work. */
95952a4bf6des/* #undef vfork */
96052a4bf6des
96152a4bf6des#if defined(OMITTED__D_GNU_SOURCE) && !defined(_GNU_SOURCE)
96252a4bf6des#define _GNU_SOURCE 1
96352a4bf6des#endif
96452a4bf6des
96552a4bf6des#if defined(OMITTED__D_BSD_SOURCE) && !defined(_BSD_SOURCE)
96652a4bf6des#define _BSD_SOURCE 1
96752a4bf6des#endif
96852a4bf6des
969333413edes#if defined(OMITTED__D_DEFAULT_SOURCE) && !defined(_DEFAULT_SOURCE)
970333413edes#define _DEFAULT_SOURCE 1
971333413edes#endif
972333413edes
97352a4bf6des#if defined(OMITTED__D__EXTENSIONS__) && !defined(__EXTENSIONS__)
97452a4bf6des#define __EXTENSIONS__ 1
97552a4bf6des#endif
97652a4bf6des
97752a4bf6des#if defined(OMITTED__D_POSIX_C_SOURCE_200112) && !defined(_POSIX_C_SOURCE)
97852a4bf6des#define _POSIX_C_SOURCE 200112
97952a4bf6des#endif
98052a4bf6des
98152a4bf6des#if defined(OMITTED__D_XOPEN_SOURCE_600) && !defined(_XOPEN_SOURCE)
98252a4bf6des#define _XOPEN_SOURCE 600
98352a4bf6des#endif
98452a4bf6des
98552a4bf6des#if defined(OMITTED__D_XOPEN_SOURCE_EXTENDED_1) && !defined(_XOPEN_SOURCE_EXTENDED)
98652a4bf6des#define _XOPEN_SOURCE_EXTENDED 1
98752a4bf6des#endif
98852a4bf6des
98952a4bf6des#if defined(OMITTED__D_ALL_SOURCE) && !defined(_ALL_SOURCE)
99052a4bf6des#define _ALL_SOURCE 1
99152a4bf6des#endif
99252a4bf6des
99352a4bf6des#if defined(OMITTED__D_LARGEFILE_SOURCE_1) && !defined(_LARGEFILE_SOURCE)
99452a4bf6des#define _LARGEFILE_SOURCE 1
99552a4bf6des#endif
99652a4bf6des
99752a4bf6des
99852a4bf6des
99952a4bf6des
100060c7319des#ifndef _OPENBSD_SOURCE
100160c7319des#define _OPENBSD_SOURCE 1
100260c7319des#endif
100360c7319des
100452a4bf6des#ifndef UNBOUND_DEBUG
100560c7319des# ifndef NDEBUG
100652a4bf6des#  define NDEBUG
100760c7319des# endif
100852a4bf6des#endif
100952a4bf6des
1010958f197des/** Use small-ldns codebase */
1011958f197des#define USE_SLDNS 1
1012958f197des#ifdef HAVE_SSL
1013958f197des#  define LDNS_BUILD_CONFIG_HAVE_SSL 1
1014958f197des#endif
1015958f197des
101652a4bf6des#include <stdio.h>
101752a4bf6des#include <string.h>
101852a4bf6des#include <unistd.h>
101952a4bf6des#include <assert.h>
102052a4bf6des
102152a4bf6des#if STDC_HEADERS
102252a4bf6des#include <stdlib.h>
102352a4bf6des#include <stddef.h>
102452a4bf6des#endif
102552a4bf6des
1026958f197des#ifdef HAVE_STDARG_H
1027958f197des#include <stdarg.h>
1028958f197des#endif
1029958f197des
103052a4bf6des#ifdef HAVE_STDINT_H
103152a4bf6des#include <stdint.h>
103252a4bf6des#endif
103352a4bf6des
103452a4bf6des#include <errno.h>
103552a4bf6des
103652a4bf6des#if HAVE_SYS_PARAM_H
103752a4bf6des#include <sys/param.h>
103852a4bf6des#endif
103952a4bf6des
104052a4bf6des#ifdef HAVE_SYS_SOCKET_H
104152a4bf6des#include <sys/socket.h>
104252a4bf6des#endif
104352a4bf6des
104452a4bf6des#ifdef HAVE_SYS_UIO_H
104552a4bf6des#include <sys/uio.h>
104652a4bf6des#endif
104752a4bf6des
104852a4bf6des#ifdef HAVE_NETINET_IN_H
104952a4bf6des#include <netinet/in.h>
105052a4bf6des#endif
105152a4bf6des
1052333413edes#ifdef HAVE_NETINET_TCP_H
1053333413edes#include <netinet/tcp.h>
1054333413edes#endif
1055333413edes
105652a4bf6des#ifdef HAVE_ARPA_INET_H
105752a4bf6des#include <arpa/inet.h>
105852a4bf6des#endif
105952a4bf6des
106052a4bf6des#ifdef HAVE_WINSOCK2_H
106152a4bf6des#include <winsock2.h>
106252a4bf6des#endif
106352a4bf6des
106452a4bf6des#ifdef HAVE_WS2TCPIP_H
106552a4bf6des#include <ws2tcpip.h>
106652a4bf6des#endif
106752a4bf6des
1068958f197des#ifndef USE_WINSOCK
1069958f197des#define ARG_LL "%ll"
1070958f197des#else
1071958f197des#define ARG_LL "%I64"
1072958f197des#endif
1073958f197des
107408fe3b6des#ifndef AF_LOCAL
107508fe3b6des#define AF_LOCAL AF_UNIX
107608fe3b6des#endif
107708fe3b6des
107852a4bf6des
107952a4bf6des
108052a4bf6des#ifdef HAVE_ATTR_FORMAT
108152a4bf6des#  define ATTR_FORMAT(archetype, string_index, first_to_check) \
108252a4bf6des    __attribute__ ((format (archetype, string_index, first_to_check)))
108352a4bf6des#else /* !HAVE_ATTR_FORMAT */
108452a4bf6des#  define ATTR_FORMAT(archetype, string_index, first_to_check) /* empty */
108552a4bf6des#endif /* !HAVE_ATTR_FORMAT */
108652a4bf6des
108752a4bf6des
108852a4bf6des#if defined(DOXYGEN)
108952a4bf6des#  define ATTR_UNUSED(x)  x
109052a4bf6des#elif defined(__cplusplus)
109152a4bf6des#  define ATTR_UNUSED(x)
109252a4bf6des#elif defined(HAVE_ATTR_UNUSED)
109352a4bf6des#  define ATTR_UNUSED(x)  x __attribute__((unused))
109452a4bf6des#else /* !HAVE_ATTR_UNUSED */
109552a4bf6des#  define ATTR_UNUSED(x)  x
109652a4bf6des#endif /* !HAVE_ATTR_UNUSED */
109752a4bf6des
109852a4bf6des
109952a4bf6des#ifndef HAVE_FSEEKO
110052a4bf6des#define fseeko fseek
110152a4bf6des#define ftello ftell
110252a4bf6des#endif /* HAVE_FSEEKO */
110352a4bf6des
110452a4bf6des
110552a4bf6des#ifndef MAXHOSTNAMELEN
110652a4bf6des#define MAXHOSTNAMELEN 256
110752a4bf6des#endif
110852a4bf6des
1109d7ed4d0des#if !defined(HAVE_SNPRINTF) || defined(SNPRINTF_RET_BROKEN)
111052a4bf6des#define snprintf snprintf_unbound
111152a4bf6des#define vsnprintf vsnprintf_unbound
111252a4bf6des#include <stdarg.h>
111352a4bf6desint snprintf (char *str, size_t count, const char *fmt, ...);
111452a4bf6desint vsnprintf (char *str, size_t count, const char *fmt, va_list arg);
1115d7ed4d0des#endif /* HAVE_SNPRINTF or SNPRINTF_RET_BROKEN */
111652a4bf6des
111752a4bf6des#ifndef HAVE_INET_PTON
111852a4bf6des#define inet_pton inet_pton_unbound
111952a4bf6desint inet_pton(int af, const char* src, void* dst);
112052a4bf6des#endif /* HAVE_INET_PTON */
112152a4bf6des
112252a4bf6des
112352a4bf6des#ifndef HAVE_INET_NTOP
112452a4bf6des#define inet_ntop inet_ntop_unbound
112552a4bf6desconst char *inet_ntop(int af, const void *src, char *dst, size_t size);
112652a4bf6des#endif
112752a4bf6des
112852a4bf6des
112952a4bf6des#ifndef HAVE_INET_ATON
113052a4bf6des#define inet_aton inet_aton_unbound
113152a4bf6desint inet_aton(const char *cp, struct in_addr *addr);
113252a4bf6des#endif
113352a4bf6des
113452a4bf6des
113552a4bf6des#ifndef HAVE_MEMMOVE
113652a4bf6des#define memmove memmove_unbound
113752a4bf6desvoid *memmove(void *dest, const void *src, size_t n);
113852a4bf6des#endif
113952a4bf6des
114052a4bf6des
1141958f197des#ifndef HAVE_STRLCAT
1142958f197des#define strlcat strlcat_unbound
1143958f197dessize_t strlcat(char *dst, const char *src, size_t siz);
1144958f197des#endif
1145958f197des
1146958f197des
114752a4bf6des#ifndef HAVE_STRLCPY
114852a4bf6des#define strlcpy strlcpy_unbound
114952a4bf6dessize_t strlcpy(char *dst, const char *src, size_t siz);
115052a4bf6des#endif
115152a4bf6des
115252a4bf6des
115352a4bf6des#ifndef HAVE_GMTIME_R
115452a4bf6des#define gmtime_r gmtime_r_unbound
115552a4bf6desstruct tm *gmtime_r(const time_t *timep, struct tm *result);
115652a4bf6des#endif
115752a4bf6des
115852a4bf6des
11590b3e2c0des#ifndef HAVE_REALLOCARRAY
11600b3e2c0des#define reallocarray reallocarrayunbound
11610b3e2c0desvoid* reallocarray(void *ptr, size_t nmemb, size_t size);
11620b3e2c0des#endif
11630b3e2c0des
11640b3e2c0des
1165c6f87fddes#if !defined(HAVE_SLEEP) || defined(HAVE_WINDOWS_H)
116652a4bf6des#define sleep(x) Sleep((x)*1000) /* on win32 */
116752a4bf6des#endif /* HAVE_SLEEP */
116852a4bf6des
116952a4bf6des
117052a4bf6des#ifndef HAVE_USLEEP
117152a4bf6des#define usleep(x) Sleep((x)/1000 + 1) /* on win32 */
117252a4bf6des#endif /* HAVE_USLEEP */
117352a4bf6des
117452a4bf6des
117552a4bf6des#ifndef HAVE_RANDOM
117652a4bf6des#define random rand /* on win32, for tests only (bad random) */
117752a4bf6des#endif /* HAVE_RANDOM */
117852a4bf6des
117952a4bf6des
118052a4bf6des#ifndef HAVE_SRANDOM
118152a4bf6des#define srandom(x) srand(x) /* on win32, for tests only (bad random) */
118252a4bf6des#endif /* HAVE_SRANDOM */
118352a4bf6des
118452a4bf6des
118552a4bf6des/* detect if we need to cast to unsigned int for FD_SET to avoid warnings */
118652a4bf6des#ifdef HAVE_WINSOCK2_H
118752a4bf6des#define FD_SET_T (u_int)
118852a4bf6des#else
118952a4bf6des#define FD_SET_T
119052a4bf6des#endif
119152a4bf6des
119252a4bf6des
119352a4bf6des#ifndef IPV6_MIN_MTU
119452a4bf6des#define IPV6_MIN_MTU 1280
119552a4bf6des#endif /* IPV6_MIN_MTU */
119652a4bf6des
119752a4bf6des
119852a4bf6des#ifdef MEMCMP_IS_BROKEN
119952a4bf6des#include "compat/memcmp.h"
120052a4bf6des#define memcmp memcmp_unbound
120152a4bf6desint memcmp(const void *x, const void *y, size_t n);
120252a4bf6des#endif
120352a4bf6des
120452a4bf6des
120552a4bf6des
120652a4bf6des#ifndef HAVE_CTIME_R
120752a4bf6des#define ctime_r unbound_ctime_r
120852a4bf6deschar *ctime_r(const time_t *timep, char *buf);
120952a4bf6des#endif
121052a4bf6des
12115e4e917des#ifndef HAVE_STRSEP
12125e4e917des#define strsep unbound_strsep
12135e4e917deschar *strsep(char **stringp, const char *delim);
12145e4e917des#endif
12155e4e917des
1216d7ed4d0des#ifndef HAVE_ISBLANK
1217d7ed4d0des#define isblank unbound_isblank
1218d7ed4d0desint isblank(int c);
1219d7ed4d0des#endif
1220d7ed4d0des
12210b62c2bdes#ifndef HAVE_EXPLICIT_BZERO
12220b62c2bdes#define explicit_bzero unbound_explicit_bzero
12230b62c2bdesvoid explicit_bzero(void* buf, size_t len);
12240b62c2bdes#endif
12250b62c2bdes
12269ce1273des#if defined(HAVE_INET_NTOP) && !HAVE_DECL_INET_NTOP
12279ce1273desconst char *inet_ntop(int af, const void *src, char *dst, size_t size);
12289ce1273des#endif
12299ce1273des
12309ce1273des#if defined(HAVE_INET_PTON) && !HAVE_DECL_INET_PTON
12319ce1273desint inet_pton(int af, const char* src, void* dst);
12329ce1273des#endif
12339ce1273des
123452a4bf6des#if !defined(HAVE_STRPTIME) || !defined(STRPTIME_WORKS)
123552a4bf6des#define strptime unbound_strptime
123652a4bf6desstruct tm;
123752a4bf6deschar *strptime(const char *s, const char *format, struct tm *tm);
123852a4bf6des#endif
123952a4bf6des
124060290a3cy#if !HAVE_DECL_REALLOCARRAY
124160290a3cyvoid *reallocarray(void *ptr, size_t nmemb, size_t size);
124260290a3cy#endif
124360290a3cy
124463bb89edes#ifdef HAVE_LIBRESSL
124563bb89edes#  if !HAVE_DECL_STRLCPY
124663bb89edessize_t strlcpy(char *dst, const char *src, size_t siz);
124763bb89edes#  endif
124863bb89edes#  if !HAVE_DECL_STRLCAT
124963bb89edessize_t strlcat(char *dst, const char *src, size_t siz);
125063bb89edes#  endif
125163bb89edes#  if !HAVE_DECL_ARC4RANDOM && defined(HAVE_ARC4RANDOM)
125263bb89edesuint32_t arc4random(void);
125363bb89edes#  endif
125463bb89edes#  if !HAVE_DECL_ARC4RANDOM_UNIFORM && defined(HAVE_ARC4RANDOM_UNIFORM)
125563bb89edesuint32_t arc4random_uniform(uint32_t upper_bound);
125663bb89edes#  endif
125763bb89edes#endif /* HAVE_LIBRESSL */
125863bb89edes#ifndef HAVE_ARC4RANDOM
125963bb89edesint getentropy(void* buf, size_t len);
126063bb89edesuint32_t arc4random(void);
126163bb89edesvoid arc4random_buf(void* buf, size_t n);
126263bb89edesvoid _ARC4_LOCK(void);
126363bb89edesvoid _ARC4_UNLOCK(void);
12644c38c39desvoid _ARC4_LOCK_DESTROY(void);
126563bb89edes#endif
126663bb89edes#ifndef HAVE_ARC4RANDOM_UNIFORM
126763bb89edesuint32_t arc4random_uniform(uint32_t upper_bound);
126863bb89edes#endif
126963bb89edes#ifdef COMPAT_SHA512
127063bb89edes#ifndef SHA512_DIGEST_LENGTH
127163bb89edes#define SHA512_BLOCK_LENGTH		128
127263bb89edes#define SHA512_DIGEST_LENGTH		64
127363bb89edes#define SHA512_DIGEST_STRING_LENGTH	(SHA512_DIGEST_LENGTH * 2 + 1)
127463bb89edestypedef struct _SHA512_CTX {
127563bb89edes	uint64_t	state[8];
127663bb89edes	uint64_t	bitcount[2];
127763bb89edes	uint8_t	buffer[SHA512_BLOCK_LENGTH];
127863bb89edes} SHA512_CTX;
127963bb89edes#endif /* SHA512_DIGEST_LENGTH */
128063bb89edesvoid SHA512_Init(SHA512_CTX*);
128163bb89edesvoid SHA512_Update(SHA512_CTX*, void*, size_t);
128263bb89edesvoid SHA512_Final(uint8_t[SHA512_DIGEST_LENGTH], SHA512_CTX*);
128363bb89edesunsigned char *SHA512(void* data, unsigned int data_len, unsigned char *digest);
128463bb89edes#endif /* COMPAT_SHA512 */
128563bb89edes
128663bb89edes
128763bb89edes
128852a4bf6des#if defined(HAVE_EVENT_H) && !defined(HAVE_EVENT_BASE_ONCE) && !(defined(HAVE_EV_LOOP) || defined(HAVE_EV_DEFAULT_LOOP)) && (defined(HAVE_PTHREAD) || defined(HAVE_SOLARIS_THREADS))
128952a4bf6des   /* using version of libevent that is not threadsafe. */
129052a4bf6des#  define LIBEVENT_SIGNAL_PROBLEM 1
129152a4bf6des#endif
129252a4bf6des
129352a4bf6des#ifndef CHECKED_INET6
129452a4bf6des#  define CHECKED_INET6
129552a4bf6des#  ifdef AF_INET6
129652a4bf6des#    define INET6
129752a4bf6des#  else
129852a4bf6des#    define AF_INET6        28
129952a4bf6des#  endif
130052a4bf6des#endif /* CHECKED_INET6 */
130152a4bf6des
130252a4bf6des#ifndef HAVE_GETADDRINFO
130352a4bf6desstruct sockaddr_storage;
130452a4bf6des#include "compat/fake-rfc2553.h"
130552a4bf6des#endif
130652a4bf6des
130752a4bf6des#ifdef UNBOUND_ALLOC_STATS
130852a4bf6des#  define malloc(s) unbound_stat_malloc_log(s, __FILE__, __LINE__, __func__)
130952a4bf6des#  define calloc(n,s) unbound_stat_calloc_log(n, s, __FILE__, __LINE__, __func__)
131052a4bf6des#  define free(p) unbound_stat_free_log(p, __FILE__, __LINE__, __func__)
131152a4bf6des#  define realloc(p,s) unbound_stat_realloc_log(p, s, __FILE__, __LINE__, __func__)
131252a4bf6desvoid *unbound_stat_malloc(size_t size);
131352a4bf6desvoid *unbound_stat_calloc(size_t nmemb, size_t size);
131452a4bf6desvoid unbound_stat_free(void *ptr);
131552a4bf6desvoid *unbound_stat_realloc(void *ptr, size_t size);
131652a4bf6desvoid *unbound_stat_malloc_log(size_t size, const char* file, int line,
131752a4bf6des	const char* func);
131852a4bf6desvoid *unbound_stat_calloc_log(size_t nmemb, size_t size, const char* file,
131952a4bf6des	int line, const char* func);
132052a4bf6desvoid unbound_stat_free_log(void *ptr, const char* file, int line,
132152a4bf6des	const char* func);
132252a4bf6desvoid *unbound_stat_realloc_log(void *ptr, size_t size, const char* file,
132352a4bf6des	int line, const char* func);
132452a4bf6des#elif defined(UNBOUND_ALLOC_LITE)
132552a4bf6des#  include "util/alloc.h"
132652a4bf6des#endif /* UNBOUND_ALLOC_LITE and UNBOUND_ALLOC_STATS */
132752a4bf6des
132852a4bf6des/** default port for DNS traffic. */
132952a4bf6des#define UNBOUND_DNS_PORT 53
13303bddc2edes/** default port for DNS over TLS traffic. */
13313bddc2edes#define UNBOUND_DNS_OVER_TLS_PORT 853
133252a4bf6des/** default port for unbound control traffic, registered port with IANA,
133352a4bf6des    ub-dns-control  8953/tcp    unbound dns nameserver control */
133452a4bf6des#define UNBOUND_CONTROL_PORT 8953
133552a4bf6des/** the version of unbound-control that this software implements */
133652a4bf6des#define UNBOUND_CONTROL_VERSION 1
133752a4bf6des
133852a4bf6des
1339