1/* config.h.in. Generated from configure.ac by autoheader. */ 2 3/* apply the fallthrough attribute. */ 4#undef ATTR_FALLTHROUGH 5 6/* apply the noreturn attribute to a function that exits the program */ 7#undef ATTR_NORETURN 8 9/* apply the weak attribute to a symbol */ 10#undef ATTR_WEAK 11 12/* Directory to chroot to */ 13#undef CHROOT_DIR 14 15/* Define this to enable client subnet option. */ 16#undef CLIENT_SUBNET 17 18/* Do sha512 definitions in config.h */ 19#undef COMPAT_SHA512 20 21/* Command line arguments used with configure */ 22#undef CONFCMDLINE 23 24/* Pathname to the Unbound configuration file */ 25#undef CONFIGFILE 26 27/* Define this if on macOSX10.4-darwin8 and setreuid and setregid do not work 28 */ 29#undef DARWIN_BROKEN_SETREUID 30 31/* Whether daemon is deprecated */ 32#undef DEPRECATED_DAEMON 33 34/* Deprecate RSA 1024 bit length, makes that an unsupported key */ 35#undef DEPRECATE_RSA_1024 36 37/* Define this to enable kernel based UDP source port randomization. */ 38#undef DISABLE_EXPLICIT_PORT_RANDOMISATION 39 40/* default dnstap socket path */ 41#undef DNSTAP_SOCKET_PATH 42 43/* Define if you want to use debug lock checking (slow). */ 44#undef ENABLE_LOCK_CHECKS 45 46/* Define this if you enabled-allsymbols from libunbound to link binaries to 47 it for smaller install size, but the libunbound export table is polluted by 48 internal symbols */ 49#undef EXPORT_ALL_SYMBOLS 50 51/* Define to 1 if you have the `accept4' function. */ 52#undef HAVE_ACCEPT4 53 54/* Define to 1 if you have the `arc4random' function. */ 55#undef HAVE_ARC4RANDOM 56 57/* Define to 1 if you have the `arc4random_uniform' function. */ 58#undef HAVE_ARC4RANDOM_UNIFORM 59 60/* Define to 1 if you have the <arpa/inet.h> header file. */ 61#undef HAVE_ARPA_INET_H 62 63/* Whether the C compiler accepts the "fallthrough" attribute */ 64#undef HAVE_ATTR_FALLTHROUGH 65 66/* Whether the C compiler accepts the "format" attribute */ 67#undef HAVE_ATTR_FORMAT 68 69/* Whether the C compiler accepts the "noreturn" attribute */ 70#undef HAVE_ATTR_NORETURN 71 72/* Whether the C compiler accepts the "unused" attribute */ 73#undef HAVE_ATTR_UNUSED 74 75/* Whether the C compiler accepts the "weak" attribute */ 76#undef HAVE_ATTR_WEAK 77 78/* If we have be64toh */ 79#undef HAVE_BE64TOH 80 81/* Define to 1 if you have the `BIO_set_callback_ex' function. */ 82#undef HAVE_BIO_SET_CALLBACK_EX 83 84/* Define to 1 if you have the <bsd/stdlib.h> header file. */ 85#undef HAVE_BSD_STDLIB_H 86 87/* Define to 1 if you have the <bsd/string.h> header file. */ 88#undef HAVE_BSD_STRING_H 89 90/* Define to 1 if you have the `chown' function. */ 91#undef HAVE_CHOWN 92 93/* Define to 1 if you have the `chroot' function. */ 94#undef HAVE_CHROOT 95 96/* Define to 1 if you have the `CRYPTO_cleanup_all_ex_data' function. */ 97#undef HAVE_CRYPTO_CLEANUP_ALL_EX_DATA 98 99/* Define to 1 if you have the `CRYPTO_THREADID_set_callback' function. */ 100#undef HAVE_CRYPTO_THREADID_SET_CALLBACK 101 102/* Define to 1 if you have the `ctime_r' function. */ 103#undef HAVE_CTIME_R 104 105/* Define to 1 if you have the `daemon' function. */ 106#undef HAVE_DAEMON 107 108/* Define to 1 if you have the declaration of `arc4random', and to 0 if you 109 don't. */ 110#undef HAVE_DECL_ARC4RANDOM 111 112/* Define to 1 if you have the declaration of `arc4random_uniform', and to 0 113 if you don't. */ 114#undef HAVE_DECL_ARC4RANDOM_UNIFORM 115 116/* Define to 1 if you have the declaration of `evsignal_assign', and to 0 if 117 you don't. */ 118#undef HAVE_DECL_EVSIGNAL_ASSIGN 119 120/* Define to 1 if you have the declaration of `inet_ntop', and to 0 if you 121 don't. */ 122#undef HAVE_DECL_INET_NTOP 123 124/* Define to 1 if you have the declaration of `inet_pton', and to 0 if you 125 don't. */ 126#undef HAVE_DECL_INET_PTON 127 128/* Define to 1 if you have the declaration of `nghttp2_session_server_new', 129 and to 0 if you don't. */ 130#undef HAVE_DECL_NGHTTP2_SESSION_SERVER_NEW 131 132/* Define to 1 if you have the declaration of `ngtcp2_conn_server_new', and to 133 0 if you don't. */ 134#undef HAVE_DECL_NGTCP2_CONN_SERVER_NEW 135 136/* Define to 1 if you have the declaration of `ngtcp2_crypto_encrypt_cb', and 137 to 0 if you don't. */ 138#undef HAVE_DECL_NGTCP2_CRYPTO_ENCRYPT_CB 139 140/* Define to 1 if you have the declaration of `NID_ED25519', and to 0 if you 141 don't. */ 142#undef HAVE_DECL_NID_ED25519 143 144/* Define to 1 if you have the declaration of `NID_ED448', and to 0 if you 145 don't. */ 146#undef HAVE_DECL_NID_ED448 147 148/* Define to 1 if you have the declaration of `NID_secp384r1', and to 0 if you 149 don't. */ 150#undef HAVE_DECL_NID_SECP384R1 151 152/* Define to 1 if you have the declaration of `NID_X9_62_prime256v1', and to 0 153 if you don't. */ 154#undef HAVE_DECL_NID_X9_62_PRIME256V1 155 156/* Define to 1 if you have the declaration of `reallocarray', and to 0 if you 157 don't. */ 158#undef HAVE_DECL_REALLOCARRAY 159 160/* Define to 1 if you have the declaration of `redisConnect', and to 0 if you 161 don't. */ 162#undef HAVE_DECL_REDISCONNECT 163 164/* Define to 1 if you have the declaration of `sk_SSL_COMP_pop_free', and to 0 165 if you don't. */ 166#undef HAVE_DECL_SK_SSL_COMP_POP_FREE 167 168/* Define to 1 if you have the declaration of 169 `SSL_COMP_get_compression_methods', and to 0 if you don't. */ 170#undef HAVE_DECL_SSL_COMP_GET_COMPRESSION_METHODS 171 172/* Define to 1 if you have the declaration of `SSL_CTX_set_ecdh_auto', and to 173 0 if you don't. */ 174#undef HAVE_DECL_SSL_CTX_SET_ECDH_AUTO 175 176/* Define to 1 if you have the declaration of `strlcat', and to 0 if you 177 don't. */ 178#undef HAVE_DECL_STRLCAT 179 180/* Define to 1 if you have the declaration of `strlcpy', and to 0 if you 181 don't. */ 182#undef HAVE_DECL_STRLCPY 183 184/* Define to 1 if you have the declaration of `XML_StopParser', and to 0 if 185 you don't. */ 186#undef HAVE_DECL_XML_STOPPARSER 187 188/* Define to 1 if you have the <dlfcn.h> header file. */ 189#undef HAVE_DLFCN_H 190 191/* Define to 1 if you have the `DSA_SIG_set0' function. */ 192#undef HAVE_DSA_SIG_SET0 193 194/* Define to 1 if you have the <endian.h> header file. */ 195#undef HAVE_ENDIAN_H 196 197/* Define to 1 if you have the `endprotoent' function. */ 198#undef HAVE_ENDPROTOENT 199 200/* Define to 1 if you have the `endpwent' function. */ 201#undef HAVE_ENDPWENT 202 203/* Define to 1 if you have the `endservent' function. */ 204#undef HAVE_ENDSERVENT 205 206/* Define to 1 if you have the `ENGINE_cleanup' function. */ 207#undef HAVE_ENGINE_CLEANUP 208 209/* Define to 1 if you have the `ERR_free_strings' function. */ 210#undef HAVE_ERR_FREE_STRINGS 211 212/* Define to 1 if you have the `ERR_load_crypto_strings' function. */ 213#undef HAVE_ERR_LOAD_CRYPTO_STRINGS 214 215/* Define to 1 if you have the `event_assign' function. */ 216#undef HAVE_EVENT_ASSIGN 217 218/* Define to 1 if you have the `event_base_free' function. */ 219#undef HAVE_EVENT_BASE_FREE 220 221/* Define to 1 if you have the `event_base_get_method' function. */ 222#undef HAVE_EVENT_BASE_GET_METHOD 223 224/* Define to 1 if you have the `event_base_new' function. */ 225#undef HAVE_EVENT_BASE_NEW 226 227/* Define to 1 if you have the `event_base_once' function. */ 228#undef HAVE_EVENT_BASE_ONCE 229 230/* Define to 1 if you have the <event.h> header file. */ 231#undef HAVE_EVENT_H 232 233/* Define to 1 if you have the `EVP_aes_256_cbc' function. */ 234#undef HAVE_EVP_AES_256_CBC 235 236/* Define to 1 if you have the `EVP_cleanup' function. */ 237#undef HAVE_EVP_CLEANUP 238 239/* Define to 1 if you have the `EVP_default_properties_is_fips_enabled' 240 function. */ 241#undef HAVE_EVP_DEFAULT_PROPERTIES_IS_FIPS_ENABLED 242 243/* Define to 1 if you have the `EVP_DigestVerify' function. */ 244#undef HAVE_EVP_DIGESTVERIFY 245 246/* Define to 1 if you have the `EVP_dss1' function. */ 247#undef HAVE_EVP_DSS1 248 249/* Define to 1 if you have the `EVP_EncryptInit_ex' function. */ 250#undef HAVE_EVP_ENCRYPTINIT_EX 251 252/* Define to 1 if you have the `EVP_MAC_CTX_set_params' function. */ 253#undef HAVE_EVP_MAC_CTX_SET_PARAMS 254 255/* Define to 1 if you have the `EVP_MD_CTX_new' function. */ 256#undef HAVE_EVP_MD_CTX_NEW 257 258/* Define to 1 if you have the `EVP_sha1' function. */ 259#undef HAVE_EVP_SHA1 260 261/* Define to 1 if you have the `EVP_sha256' function. */ 262#undef HAVE_EVP_SHA256 263 264/* Define to 1 if you have the `EVP_sha512' function. */ 265#undef HAVE_EVP_SHA512 266 267/* Define to 1 if you have the `ev_default_loop' function. */ 268#undef HAVE_EV_DEFAULT_LOOP 269 270/* Define to 1 if you have the `ev_loop' function. */ 271#undef HAVE_EV_LOOP 272 273/* Define to 1 if you have the <expat.h> header file. */ 274#undef HAVE_EXPAT_H 275 276/* Define to 1 if you have the `explicit_bzero' function. */ 277#undef HAVE_EXPLICIT_BZERO 278 279/* Define to 1 if you have the `fcntl' function. */ 280#undef HAVE_FCNTL 281 282/* Define to 1 if you have the `FIPS_mode' function. */ 283#undef HAVE_FIPS_MODE 284 285/* Define to 1 if you have the `fork' function. */ 286#undef HAVE_FORK 287 288/* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ 289#undef HAVE_FSEEKO 290 291/* Define to 1 if you have the `fsync' function. */ 292#undef HAVE_FSYNC 293 294/* Whether getaddrinfo is available */ 295#undef HAVE_GETADDRINFO 296 297/* Define to 1 if you have the `getauxval' function. */ 298#undef HAVE_GETAUXVAL 299 300/* Define to 1 if you have the `getentropy' function. */ 301#undef HAVE_GETENTROPY 302 303/* Define to 1 if you have the `getifaddrs' function. */ 304#undef HAVE_GETIFADDRS 305 306/* Define to 1 if you have the <getopt.h> header file. */ 307#undef HAVE_GETOPT_H 308 309/* Define to 1 if you have the `getpwnam' function. */ 310#undef HAVE_GETPWNAM 311 312/* Define to 1 if you have the `getrlimit' function. */ 313#undef HAVE_GETRLIMIT 314 315/* Define to 1 if you have the `gettid' function. */ 316#undef HAVE_GETTID 317 318/* Define to 1 if you have the `glob' function. */ 319#undef HAVE_GLOB 320 321/* Define to 1 if you have the <glob.h> header file. */ 322#undef HAVE_GLOB_H 323 324/* Define to 1 if you have the `gmtime_r' function. */ 325#undef HAVE_GMTIME_R 326 327/* Define to 1 if you have the <grp.h> header file. */ 328#undef HAVE_GRP_H 329 330/* Define to 1 if you have the <hiredis/hiredis.h> header file. */ 331#undef HAVE_HIREDIS_HIREDIS_H 332 333/* Define to 1 if you have the `HMAC_Init_ex' function. */ 334#undef HAVE_HMAC_INIT_EX 335 336/* If we have htobe64 */ 337#undef HAVE_HTOBE64 338 339/* Define to 1 if you have the <ifaddrs.h> header file. */ 340#undef HAVE_IFADDRS_H 341 342/* Define to 1 if you have the `if_nametoindex' function. */ 343#undef HAVE_IF_NAMETOINDEX 344 345/* Define to 1 if you have the `inet_aton' function. */ 346#undef HAVE_INET_ATON 347 348/* Define to 1 if you have the `inet_ntop' function. */ 349#undef HAVE_INET_NTOP 350 351/* Define to 1 if you have the `inet_pton' function. */ 352#undef HAVE_INET_PTON 353 354/* Define to 1 if you have the `initgroups' function. */ 355#undef HAVE_INITGROUPS 356 357/* Define to 1 if you have the <inttypes.h> header file. */ 358#undef HAVE_INTTYPES_H 359 360/* if the function 'ioctlsocket' is available */ 361#undef HAVE_IOCTLSOCKET 362 363/* Define to 1 if you have the <iphlpapi.h> header file. */ 364#undef HAVE_IPHLPAPI_H 365 366/* Define to 1 if you have the `isblank' function. */ 367#undef HAVE_ISBLANK 368 369/* Define to 1 if you have the `kill' function. */ 370#undef HAVE_KILL 371 372/* Use portable libbsd functions */ 373#undef HAVE_LIBBSD 374 375/* Define to 1 if you have the <libkern/OSByteOrder.h> header file. */ 376#undef HAVE_LIBKERN_OSBYTEORDER_H 377 378/* Define if we have LibreSSL */ 379#undef HAVE_LIBRESSL 380 381/* Define to 1 if you have the <linux/net_tstamp.h> header file. */ 382#undef HAVE_LINUX_NET_TSTAMP_H 383 384/* Define to 1 if you have the `localtime_r' function. */ 385#undef HAVE_LOCALTIME_R 386 387/* Define to 1 if you have the <login_cap.h> header file. */ 388#undef HAVE_LOGIN_CAP_H 389 390/* If have GNU libc compatible malloc */ 391#undef HAVE_MALLOC 392 393/* Define to 1 if you have the `memmove' function. */ 394#undef HAVE_MEMMOVE 395 396/* Define to 1 if you have the <minix/config.h> header file. */ 397#undef HAVE_MINIX_CONFIG_H 398 399/* Define to 1 if you have the <netdb.h> header file. */ 400#undef HAVE_NETDB_H 401 402/* Define to 1 if you have the <netinet/in.h> header file. */ 403#undef HAVE_NETINET_IN_H 404 405/* Define to 1 if you have the <netinet/tcp.h> header file. */ 406#undef HAVE_NETINET_TCP_H 407 408/* Define to 1 if you have the <netioapi.h> header file. */ 409#undef HAVE_NETIOAPI_H 410 411/* Use libnettle for crypto */ 412#undef HAVE_NETTLE 413 414/* Define to 1 if you have the <nettle/dsa-compat.h> header file. */ 415#undef HAVE_NETTLE_DSA_COMPAT_H 416 417/* Define to 1 if you have the <nettle/eddsa.h> header file. */ 418#undef HAVE_NETTLE_EDDSA_H 419 420/* Define to 1 if you have the <net/if.h> header file. */ 421#undef HAVE_NET_IF_H 422 423/* Define to 1 if you have the <net/pfvar.h> header file. */ 424#undef HAVE_NET_PFVAR_H 425 426/* Define this to use nghttp2 client. */ 427#undef HAVE_NGHTTP2 428 429/* Define to 1 if you have the <nghttp2/nghttp2.h> header file. */ 430#undef HAVE_NGHTTP2_NGHTTP2_H 431 432/* Define this to use ngtcp2. */ 433#undef HAVE_NGTCP2 434 435/* Define to 1 if you have the `ngtcp2_ccerr_default' function. */ 436#undef HAVE_NGTCP2_CCERR_DEFAULT 437 438/* Define to 1 if you have the `ngtcp2_conn_encode_0rtt_transport_params' 439 function. */ 440#undef HAVE_NGTCP2_CONN_ENCODE_0RTT_TRANSPORT_PARAMS 441 442/* Define to 1 if you have the `ngtcp2_conn_get_max_local_streams_uni' 443 function. */ 444#undef HAVE_NGTCP2_CONN_GET_MAX_LOCAL_STREAMS_UNI 445 446/* Define to 1 if you have the `ngtcp2_conn_get_num_scid' function. */ 447#undef HAVE_NGTCP2_CONN_GET_NUM_SCID 448 449/* Define to 1 if you have the `ngtcp2_conn_in_closing_period' function. */ 450#undef HAVE_NGTCP2_CONN_IN_CLOSING_PERIOD 451 452/* Define to 1 if you have the `ngtcp2_conn_in_draining_period' function. */ 453#undef HAVE_NGTCP2_CONN_IN_DRAINING_PERIOD 454 455/* Define if ngtcp2_conn_shutdown_stream has 4 arguments. */ 456#undef HAVE_NGTCP2_CONN_SHUTDOWN_STREAM4 457 458/* Define to 1 if you have the `ngtcp2_conn_tls_early_data_rejected' function. 459 */ 460#undef HAVE_NGTCP2_CONN_TLS_EARLY_DATA_REJECTED 461 462/* Define to 1 if you have the `ngtcp2_crypto_encrypt_cb' function. */ 463#undef HAVE_NGTCP2_CRYPTO_ENCRYPT_CB 464 465/* Define to 1 if you have the 466 `ngtcp2_crypto_quictls_configure_client_context' function. */ 467#undef HAVE_NGTCP2_CRYPTO_QUICTLS_CONFIGURE_CLIENT_CONTEXT 468 469/* Define to 1 if you have the 470 `ngtcp2_crypto_quictls_configure_server_context' function. */ 471#undef HAVE_NGTCP2_CRYPTO_QUICTLS_CONFIGURE_SERVER_CONTEXT 472 473/* Define to 1 if you have the 474 `ngtcp2_crypto_quictls_from_ossl_encryption_level' function. */ 475#undef HAVE_NGTCP2_CRYPTO_QUICTLS_FROM_OSSL_ENCRYPTION_LEVEL 476 477/* Define to 1 if the system has the type `ngtcp2_encryption_level'. */ 478#undef HAVE_NGTCP2_ENCRYPTION_LEVEL 479 480/* Define to 1 if you have the <ngtcp2/ngtcp2_crypto_openssl.h> header file. 481 */ 482#undef HAVE_NGTCP2_NGTCP2_CRYPTO_OPENSSL_H 483 484/* Define to 1 if you have the <ngtcp2/ngtcp2_crypto_quictls.h> header file. 485 */ 486#undef HAVE_NGTCP2_NGTCP2_CRYPTO_QUICTLS_H 487 488/* Define to 1 if you have the <ngtcp2/ngtcp2.h> header file. */ 489#undef HAVE_NGTCP2_NGTCP2_H 490 491/* Use libnss for crypto */ 492#undef HAVE_NSS 493 494/* Define to 1 if you have the `OpenSSL_add_all_digests' function. */ 495#undef HAVE_OPENSSL_ADD_ALL_DIGESTS 496 497/* Define to 1 if you have the <openssl/bn.h> header file. */ 498#undef HAVE_OPENSSL_BN_H 499 500/* Define to 1 if you have the `OPENSSL_config' function. */ 501#undef HAVE_OPENSSL_CONFIG 502 503/* Define to 1 if you have the <openssl/conf.h> header file. */ 504#undef HAVE_OPENSSL_CONF_H 505 506/* Define to 1 if you have the <openssl/core_names.h> header file. */ 507#undef HAVE_OPENSSL_CORE_NAMES_H 508 509/* Define to 1 if you have the <openssl/dh.h> header file. */ 510#undef HAVE_OPENSSL_DH_H 511 512/* Define to 1 if you have the <openssl/dsa.h> header file. */ 513#undef HAVE_OPENSSL_DSA_H 514 515/* Define to 1 if you have the <openssl/engine.h> header file. */ 516#undef HAVE_OPENSSL_ENGINE_H 517 518/* Define to 1 if you have the <openssl/err.h> header file. */ 519#undef HAVE_OPENSSL_ERR_H 520 521/* Define to 1 if you have the `OPENSSL_init_crypto' function. */ 522#undef HAVE_OPENSSL_INIT_CRYPTO 523 524/* Define to 1 if you have the `OPENSSL_init_ssl' function. */ 525#undef HAVE_OPENSSL_INIT_SSL 526 527/* Define to 1 if you have the <openssl/param_build.h> header file. */ 528#undef HAVE_OPENSSL_PARAM_BUILD_H 529 530/* Define to 1 if you have the <openssl/rand.h> header file. */ 531#undef HAVE_OPENSSL_RAND_H 532 533/* Define to 1 if you have the <openssl/rsa.h> header file. */ 534#undef HAVE_OPENSSL_RSA_H 535 536/* Define to 1 if you have the <openssl/ssl.h> header file. */ 537#undef HAVE_OPENSSL_SSL_H 538 539/* Define to 1 if you have the `OSSL_PARAM_BLD_new' function. */ 540#undef HAVE_OSSL_PARAM_BLD_NEW 541 542/* Define to 1 if you have the `poll' function. */ 543#undef HAVE_POLL 544 545/* Define to 1 if you have the <poll.h> header file. */ 546#undef HAVE_POLL_H 547 548/* Define if you have POSIX threads libraries and header files. */ 549#undef HAVE_PTHREAD 550 551/* Have PTHREAD_PRIO_INHERIT. */ 552#undef HAVE_PTHREAD_PRIO_INHERIT 553 554/* Define to 1 if the system has the type `pthread_rwlock_t'. */ 555#undef HAVE_PTHREAD_RWLOCK_T 556 557/* Define to 1 if the system has the type `pthread_spinlock_t'. */ 558#undef HAVE_PTHREAD_SPINLOCK_T 559 560/* Define to 1 if you have the <pwd.h> header file. */ 561#undef HAVE_PWD_H 562 563/* Define if you have Python libraries and header files. */ 564#undef HAVE_PYTHON 565 566/* Define to 1 if you have the `random' function. */ 567#undef HAVE_RANDOM 568 569/* Define to 1 if you have the `RAND_cleanup' function. */ 570#undef HAVE_RAND_CLEANUP 571 572/* If we have reallocarray(3) */ 573#undef HAVE_REALLOCARRAY 574 575/* Define to 1 if you have the `recvmsg' function. */ 576#undef HAVE_RECVMSG 577 578/* Define to 1 if you have the `sendmsg' function. */ 579#undef HAVE_SENDMSG 580 581/* Define to 1 if you have the `setregid' function. */ 582#undef HAVE_SETREGID 583 584/* Define to 1 if you have the `setresgid' function. */ 585#undef HAVE_SETRESGID 586 587/* Define to 1 if you have the `setresuid' function. */ 588#undef HAVE_SETRESUID 589 590/* Define to 1 if you have the `setreuid' function. */ 591#undef HAVE_SETREUID 592 593/* Define to 1 if you have the `setrlimit' function. */ 594#undef HAVE_SETRLIMIT 595 596/* Define to 1 if you have the `setsid' function. */ 597#undef HAVE_SETSID 598 599/* Define to 1 if you have the `setusercontext' function. */ 600#undef HAVE_SETUSERCONTEXT 601 602/* Define to 1 if you have the `SHA512_Update' function. */ 603#undef HAVE_SHA512_UPDATE 604 605/* Define to 1 if you have the `shmget' function. */ 606#undef HAVE_SHMGET 607 608/* Define to 1 if you have the `sigprocmask' function. */ 609#undef HAVE_SIGPROCMASK 610 611/* Define to 1 if you have the `sleep' function. */ 612#undef HAVE_SLEEP 613 614/* Define to 1 if you have the `snprintf' function. */ 615#undef HAVE_SNPRINTF 616 617/* Define to 1 if you have the `socketpair' function. */ 618#undef HAVE_SOCKETPAIR 619 620/* Using Solaris threads */ 621#undef HAVE_SOLARIS_THREADS 622 623/* Define to 1 if you have the `srandom' function. */ 624#undef HAVE_SRANDOM 625 626/* Define if you have the SSL libraries installed. */ 627#undef HAVE_SSL 628 629/* Define to 1 if you have the `SSL_CTX_set_alpn_protos' function. */ 630#undef HAVE_SSL_CTX_SET_ALPN_PROTOS 631 632/* Define to 1 if you have the `SSL_CTX_set_alpn_select_cb' function. */ 633#undef HAVE_SSL_CTX_SET_ALPN_SELECT_CB 634 635/* Define to 1 if you have the `SSL_CTX_set_ciphersuites' function. */ 636#undef HAVE_SSL_CTX_SET_CIPHERSUITES 637 638/* Define to 1 if you have the `SSL_CTX_set_security_level' function. */ 639#undef HAVE_SSL_CTX_SET_SECURITY_LEVEL 640 641/* Define to 1 if you have the `SSL_CTX_set_tlsext_ticket_key_evp_cb' 642 function. */ 643#undef HAVE_SSL_CTX_SET_TLSEXT_TICKET_KEY_EVP_CB 644 645/* Define to 1 if you have the `SSL_CTX_set_tmp_ecdh' function. */ 646#undef HAVE_SSL_CTX_SET_TMP_ECDH 647 648/* Define to 1 if you have the `SSL_get0_alpn_selected' function. */ 649#undef HAVE_SSL_GET0_ALPN_SELECTED 650 651/* Define to 1 if you have the `SSL_get0_peername' function. */ 652#undef HAVE_SSL_GET0_PEERNAME 653 654/* Define to 1 if you have the `SSL_get1_peer_certificate' function. */ 655#undef HAVE_SSL_GET1_PEER_CERTIFICATE 656 657/* Define to 1 if you have the `SSL_is_quic' function. */ 658#undef HAVE_SSL_IS_QUIC 659 660/* Define to 1 if you have the `SSL_set1_host' function. */ 661#undef HAVE_SSL_SET1_HOST 662 663/* Define to 1 if you have the <stdarg.h> header file. */ 664#undef HAVE_STDARG_H 665 666/* Define to 1 if you have the <stdbool.h> header file. */ 667#undef HAVE_STDBOOL_H 668 669/* Define to 1 if you have the <stdint.h> header file. */ 670#undef HAVE_STDINT_H 671 672/* Define to 1 if you have the <stdio.h> header file. */ 673#undef HAVE_STDIO_H 674 675/* Define to 1 if you have the <stdlib.h> header file. */ 676#undef HAVE_STDLIB_H 677 678/* Define to 1 if you have the `strftime' function. */ 679#undef HAVE_STRFTIME 680 681/* Define to 1 if you have the <strings.h> header file. */ 682#undef HAVE_STRINGS_H 683 684/* Define to 1 if you have the <string.h> header file. */ 685#undef HAVE_STRING_H 686 687/* Define to 1 if you have the `strlcat' function. */ 688#undef HAVE_STRLCAT 689 690/* Define to 1 if you have the `strlcpy' function. */ 691#undef HAVE_STRLCPY 692 693/* Define to 1 if you have the `strptime' function. */ 694#undef HAVE_STRPTIME 695 696/* Define to 1 if you have the `strsep' function. */ 697#undef HAVE_STRSEP 698 699/* Define to 1 if `ipi_spec_dst' is a member of `struct in_pktinfo'. */ 700#undef HAVE_STRUCT_IN_PKTINFO_IPI_SPEC_DST 701 702/* Define to 1 if `tokenlen' is a member of `struct ngtcp2_pkt_hd'. */ 703#undef HAVE_STRUCT_NGTCP2_PKT_HD_TOKENLEN 704 705/* Define to 1 if `max_tx_udp_payload_size' is a member of `struct 706 ngtcp2_settings'. */ 707#undef HAVE_STRUCT_NGTCP2_SETTINGS_MAX_TX_UDP_PAYLOAD_SIZE 708 709/* Define to 1 if `tokenlen' is a member of `struct ngtcp2_settings'. */ 710#undef HAVE_STRUCT_NGTCP2_SETTINGS_TOKENLEN 711 712/* Define to 1 if `original_dcid_present' is a member of `struct 713 ngtcp2_transport_params'. */ 714#undef HAVE_STRUCT_NGTCP2_TRANSPORT_PARAMS_ORIGINAL_DCID_PRESENT 715 716/* Define to 1 if the system has the type `struct ngtcp2_version_cid'. */ 717#undef HAVE_STRUCT_NGTCP2_VERSION_CID 718 719/* Define to 1 if `sun_len' is a member of `struct sockaddr_un'. */ 720#undef HAVE_STRUCT_SOCKADDR_UN_SUN_LEN 721 722/* Define if you have Swig libraries and header files. */ 723#undef HAVE_SWIG 724 725/* Define to 1 if you have the <syslog.h> header file. */ 726#undef HAVE_SYSLOG_H 727 728/* Define to 1 if systemd should be used */ 729#undef HAVE_SYSTEMD 730 731/* Define to 1 if you have the <sys/endian.h> header file. */ 732#undef HAVE_SYS_ENDIAN_H 733 734/* Define to 1 if you have the <sys/ipc.h> header file. */ 735#undef HAVE_SYS_IPC_H 736 737/* Define to 1 if you have the <sys/param.h> header file. */ 738#undef HAVE_SYS_PARAM_H 739 740/* Define to 1 if you have the <sys/resource.h> header file. */ 741#undef HAVE_SYS_RESOURCE_H 742 743/* Define to 1 if you have the <sys/select.h> header file. */ 744#undef HAVE_SYS_SELECT_H 745 746/* Define to 1 if you have the <sys/sha2.h> header file. */ 747#undef HAVE_SYS_SHA2_H 748 749/* Define to 1 if you have the <sys/shm.h> header file. */ 750#undef HAVE_SYS_SHM_H 751 752/* Define to 1 if you have the <sys/socket.h> header file. */ 753#undef HAVE_SYS_SOCKET_H 754 755/* Define to 1 if you have the <sys/stat.h> header file. */ 756#undef HAVE_SYS_STAT_H 757 758/* Define to 1 if you have the <sys/sysctl.h> header file. */ 759#undef HAVE_SYS_SYSCTL_H 760 761/* Define to 1 if you have the <sys/types.h> header file. */ 762#undef HAVE_SYS_TYPES_H 763 764/* Define to 1 if you have the <sys/uio.h> header file. */ 765#undef HAVE_SYS_UIO_H 766 767/* Define to 1 if you have the <sys/un.h> header file. */ 768#undef HAVE_SYS_UN_H 769 770/* Define to 1 if you have the <sys/wait.h> header file. */ 771#undef HAVE_SYS_WAIT_H 772 773/* Define to 1 if you have the <TargetConditionals.h> header file. */ 774#undef HAVE_TARGETCONDITIONALS_H 775 776/* Define to 1 if you have the <time.h> header file. */ 777#undef HAVE_TIME_H 778 779/* Define to 1 if you have the `tzset' function. */ 780#undef HAVE_TZSET 781 782/* Define to 1 if you have the <unistd.h> header file. */ 783#undef HAVE_UNISTD_H 784 785/* Define to 1 if you have the `usleep' function. */ 786#undef HAVE_USLEEP 787 788/* Define to 1 if you have the `vfork' function. */ 789#undef HAVE_VFORK 790 791/* Define to 1 if you have the <vfork.h> header file. */ 792#undef HAVE_VFORK_H 793 794/* Define to 1 if you have the <wchar.h> header file. */ 795#undef HAVE_WCHAR_H 796 797/* Define to 1 if you have the <windows.h> header file. */ 798#undef HAVE_WINDOWS_H 799 800/* Using Windows threads */ 801#undef HAVE_WINDOWS_THREADS 802 803/* Define to 1 if you have the <winsock2.h> header file. */ 804#undef HAVE_WINSOCK2_H 805 806/* Define to 1 if `fork' works. */ 807#undef HAVE_WORKING_FORK 808 809/* Define to 1 if `vfork' works. */ 810#undef HAVE_WORKING_VFORK 811 812/* Define to 1 if you have the `writev' function. */ 813#undef HAVE_WRITEV 814 815/* Define to 1 if you have the <ws2tcpip.h> header file. */ 816#undef HAVE_WS2TCPIP_H 817 818/* Define to 1 if you have the `X509_VERIFY_PARAM_set1_host' function. */ 819#undef HAVE_X509_VERIFY_PARAM_SET1_HOST 820 821/* Define to 1 if you have the `_beginthreadex' function. */ 822#undef HAVE__BEGINTHREADEX 823 824/* If HMAC_Init_ex() returns void */ 825#undef HMAC_INIT_EX_RETURNS_VOID 826 827/* if lex has yylex_destroy */ 828#undef LEX_HAS_YYLEX_DESTROY 829 830/* Define to the sub-directory where libtool stores uninstalled libraries. */ 831#undef LT_OBJDIR 832 833/* Define to the maximum message length to pass to syslog. */ 834#undef MAXSYSLOGMSGLEN 835 836/* Define if memcmp() does not compare unsigned bytes */ 837#undef MEMCMP_IS_BROKEN 838 839/* Define if mkdir has one argument. */ 840#undef MKDIR_HAS_ONE_ARG 841 842/* Define if the network stack does not fully support nonblocking io (causes 843 lower performance). */ 844#undef NONBLOCKING_IS_BROKEN 845 846/* Put -D_ALL_SOURCE define in config.h */ 847#undef OMITTED__D_ALL_SOURCE 848 849/* Put -D_BSD_SOURCE define in config.h */ 850#undef OMITTED__D_BSD_SOURCE 851 852/* Put -D_DEFAULT_SOURCE define in config.h */ 853#undef OMITTED__D_DEFAULT_SOURCE 854 855/* Put -D_GNU_SOURCE define in config.h */ 856#undef OMITTED__D_GNU_SOURCE 857 858/* Put -D_LARGEFILE_SOURCE=1 define in config.h */ 859#undef OMITTED__D_LARGEFILE_SOURCE_1 860 861/* Put -D_POSIX_C_SOURCE=200112 define in config.h */ 862#undef OMITTED__D_POSIX_C_SOURCE_200112 863 864/* Put -D_XOPEN_SOURCE=600 define in config.h */ 865#undef OMITTED__D_XOPEN_SOURCE_600 866 867/* Put -D_XOPEN_SOURCE_EXTENDED=1 define in config.h */ 868#undef OMITTED__D_XOPEN_SOURCE_EXTENDED_1 869 870/* Put -D__EXTENSIONS__ define in config.h */ 871#undef OMITTED__D__EXTENSIONS__ 872 873/* Define to the address where bug reports for this package should be sent. */ 874#undef PACKAGE_BUGREPORT 875 876/* Define to the full name of this package. */ 877#undef PACKAGE_NAME 878 879/* Define to the full name and version of this package. */ 880#undef PACKAGE_STRING 881 882/* Define to the one symbol short name of this package. */ 883#undef PACKAGE_TARNAME 884 885/* Define to the home page for this package. */ 886#undef PACKAGE_URL 887 888/* Define to the version of this package. */ 889#undef PACKAGE_VERSION 890 891/* default pidfile location */ 892#undef PIDFILE 893 894/* Define to necessary symbol if this constant uses a non-standard name on 895 your system. */ 896#undef PTHREAD_CREATE_JOINABLE 897 898/* Return type of signal handlers, but autoconf 2.70 says 'your code may 899 safely assume C89 semantics that RETSIGTYPE is void.' */ 900#undef RETSIGTYPE 901 902/* if REUSEPORT is enabled by default */ 903#undef REUSEPORT_DEFAULT 904 905/* default rootkey location */ 906#undef ROOT_ANCHOR_FILE 907 908/* default rootcert location */ 909#undef ROOT_CERT_FILE 910 911/* version number for resource files */ 912#undef RSRC_PACKAGE_VERSION 913 914/* Directory to chdir to */ 915#undef RUN_DIR 916 917/* Shared data */ 918#undef SHARE_DIR 919 920/* The size of `pthread_t', as computed by sizeof. */ 921#undef SIZEOF_PTHREAD_T 922 923/* The size of `size_t', as computed by sizeof. */ 924#undef SIZEOF_SIZE_T 925 926/* The size of `time_t', as computed by sizeof. */ 927#undef SIZEOF_TIME_T 928 929/* The size of `unsigned long', as computed by sizeof. */ 930#undef SIZEOF_UNSIGNED_LONG 931 932/* define if (v)snprintf does not return length needed, (but length used) */ 933#undef SNPRINTF_RET_BROKEN 934 935/* Define to 1 if libsodium supports sodium_set_misuse_handler */ 936#undef SODIUM_MISUSE_HANDLER 937 938/* Define to 1 if all of the C90 standard headers exist (not just the ones 939 required in a freestanding environment). This macro is provided for 940 backward compatibility; new code need not use it. */ 941#undef STDC_HEADERS 942 943/* use default strptime. */ 944#undef STRPTIME_WORKS 945 946/* Use win32 resources and API */ 947#undef UB_ON_WINDOWS 948 949/* the SYSLOG_FACILITY to use, default LOG_DAEMON */ 950#undef UB_SYSLOG_FACILITY 951 952/* default username */ 953#undef UB_USERNAME 954 955/* use to enable lightweight alloc assertions, for debug use */ 956#undef UNBOUND_ALLOC_LITE 957 958/* use malloc not regions, for debug use */ 959#undef UNBOUND_ALLOC_NONREGIONAL 960 961/* use statistics for allocs and frees, for debug use */ 962#undef UNBOUND_ALLOC_STATS 963 964/* define this to enable debug checks. */ 965#undef UNBOUND_DEBUG 966 967/* Define to 1 to use cachedb support */ 968#undef USE_CACHEDB 969 970/* Define to 1 to enable dnscrypt support */ 971#undef USE_DNSCRYPT 972 973/* Define to 1 to enable dnscrypt with xchacha20 support */ 974#undef USE_DNSCRYPT_XCHACHA20 975 976/* Define to 1 to enable dnstap support */ 977#undef USE_DNSTAP 978 979/* Define this to enable DSA support. */ 980#undef USE_DSA 981 982/* Define this to enable ECDSA support. */ 983#undef USE_ECDSA 984 985/* Define this to enable an EVP workaround for older openssl */ 986#undef USE_ECDSA_EVP_WORKAROUND 987 988/* Define this to enable ED25519 support. */ 989#undef USE_ED25519 990 991/* Define this to enable ED448 support. */ 992#undef USE_ED448 993 994/* Define this to enable GOST support. */ 995#undef USE_GOST 996 997/* Define to 1 to use ipsecmod support. */ 998#undef USE_IPSECMOD 999 1000/* Define to 1 to use ipset support */ 1001#undef USE_IPSET 1002 1003/* Define if you enable libevent */ 1004#undef USE_LIBEVENT 1005 1006/* Define this to enable use of /proc/sys/net/ipv4/ip_local_port_range as a 1007 default outgoing port range. This is only for the libunbound on Linux and 1008 does not affect unbound resolving daemon itself. This may severely limit 1009 the number of available outgoing ports and thus decrease randomness. Define 1010 this only when the target system restricts (e.g. some of SELinux enabled 1011 distributions) the use of non-ephemeral ports. */ 1012#undef USE_LINUX_IP_LOCAL_PORT_RANGE 1013 1014/* Define if you want to use internal select based events */ 1015#undef USE_MINI_EVENT 1016 1017/* Define this to enable client TCP Fast Open. */ 1018#undef USE_MSG_FASTOPEN 1019 1020/* Define this to enable client TCP Fast Open. */ 1021#undef USE_OSX_MSG_FASTOPEN 1022 1023/* Define this to use hiredis client. */ 1024#undef USE_REDIS 1025 1026/* Define this to enable SHA1 support. */ 1027#undef USE_SHA1 1028 1029/* Define this to enable SHA256 and SHA512 support. */ 1030#undef USE_SHA2 1031 1032/* Enable extensions on AIX 3, Interix. */ 1033#ifndef _ALL_SOURCE 1034# undef _ALL_SOURCE 1035#endif 1036/* Enable general extensions on macOS. */ 1037#ifndef _DARWIN_C_SOURCE 1038# undef _DARWIN_C_SOURCE 1039#endif 1040/* Enable general extensions on Solaris. */ 1041#ifndef __EXTENSIONS__ 1042# undef __EXTENSIONS__ 1043#endif 1044/* Enable GNU extensions on systems that have them. */ 1045#ifndef _GNU_SOURCE 1046# undef _GNU_SOURCE 1047#endif 1048/* Enable X/Open compliant socket functions that do not require linking 1049 with -lxnet on HP-UX 11.11. */ 1050#ifndef _HPUX_ALT_XOPEN_SOCKET_API 1051# undef _HPUX_ALT_XOPEN_SOCKET_API 1052#endif 1053/* Identify the host operating system as Minix. 1054 This macro does not affect the system headers' behavior. 1055 A future release of Autoconf may stop defining this macro. */ 1056#ifndef _MINIX 1057# undef _MINIX 1058#endif 1059/* Enable general extensions on NetBSD. 1060 Enable NetBSD compatibility extensions on Minix. */ 1061#ifndef _NETBSD_SOURCE 1062# undef _NETBSD_SOURCE 1063#endif 1064/* Enable OpenBSD compatibility extensions on NetBSD. 1065 Oddly enough, this does nothing on OpenBSD. */ 1066#ifndef _OPENBSD_SOURCE 1067# undef _OPENBSD_SOURCE 1068#endif 1069/* Define to 1 if needed for POSIX-compatible behavior. */ 1070#ifndef _POSIX_SOURCE 1071# undef _POSIX_SOURCE 1072#endif 1073/* Define to 2 if needed for POSIX-compatible behavior. */ 1074#ifndef _POSIX_1_SOURCE 1075# undef _POSIX_1_SOURCE 1076#endif 1077/* Enable POSIX-compatible threading on Solaris. */ 1078#ifndef _POSIX_PTHREAD_SEMANTICS 1079# undef _POSIX_PTHREAD_SEMANTICS 1080#endif 1081/* Enable extensions specified by ISO/IEC TS 18661-5:2014. */ 1082#ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1083# undef __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1084#endif 1085/* Enable extensions specified by ISO/IEC TS 18661-1:2014. */ 1086#ifndef __STDC_WANT_IEC_60559_BFP_EXT__ 1087# undef __STDC_WANT_IEC_60559_BFP_EXT__ 1088#endif 1089/* Enable extensions specified by ISO/IEC TS 18661-2:2015. */ 1090#ifndef __STDC_WANT_IEC_60559_DFP_EXT__ 1091# undef __STDC_WANT_IEC_60559_DFP_EXT__ 1092#endif 1093/* Enable extensions specified by ISO/IEC TS 18661-4:2015. */ 1094#ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__ 1095# undef __STDC_WANT_IEC_60559_FUNCS_EXT__ 1096#endif 1097/* Enable extensions specified by ISO/IEC TS 18661-3:2015. */ 1098#ifndef __STDC_WANT_IEC_60559_TYPES_EXT__ 1099# undef __STDC_WANT_IEC_60559_TYPES_EXT__ 1100#endif 1101/* Enable extensions specified by ISO/IEC TR 24731-2:2010. */ 1102#ifndef __STDC_WANT_LIB_EXT2__ 1103# undef __STDC_WANT_LIB_EXT2__ 1104#endif 1105/* Enable extensions specified by ISO/IEC 24747:2009. */ 1106#ifndef __STDC_WANT_MATH_SPEC_FUNCS__ 1107# undef __STDC_WANT_MATH_SPEC_FUNCS__ 1108#endif 1109/* Enable extensions on HP NonStop. */ 1110#ifndef _TANDEM_SOURCE 1111# undef _TANDEM_SOURCE 1112#endif 1113/* Enable X/Open extensions. Define to 500 only if necessary 1114 to make mbstate_t available. */ 1115#ifndef _XOPEN_SOURCE 1116# undef _XOPEN_SOURCE 1117#endif 1118 1119 1120/* Define this to enable server TCP Fast Open. */ 1121#undef USE_TCP_FASTOPEN 1122 1123/* Whether the windows socket API is used */ 1124#undef USE_WINSOCK 1125 1126/* the version of the windows API enabled */ 1127#undef WINVER 1128 1129/* Define if you want dynlib module. */ 1130#undef WITH_DYNLIBMODULE 1131 1132/* Define if you want Python module. */ 1133#undef WITH_PYTHONMODULE 1134 1135/* Define if you want PyUnbound. */ 1136#undef WITH_PYUNBOUND 1137 1138/* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a 1139 `char[]'. */ 1140#undef YYTEXT_POINTER 1141 1142/* Number of bits in a file offset, on hosts where this is settable. */ 1143#undef _FILE_OFFSET_BITS 1144 1145/* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ 1146#undef _LARGEFILE_SOURCE 1147 1148/* Define for large files, on AIX-style hosts. */ 1149#undef _LARGE_FILES 1150 1151/* Enable for compile on Minix */ 1152#undef _NETBSD_SOURCE 1153 1154/* defined to use gcc ansi snprintf and sscanf that understands %lld when 1155 compiled for windows. */ 1156#undef __USE_MINGW_ANSI_STDIO 1157 1158/* Define to empty if `const' does not conform to ANSI C. */ 1159#undef const 1160 1161/* Define to `int' if <sys/types.h> doesn't define. */ 1162#undef gid_t 1163 1164/* in_addr_t */ 1165#undef in_addr_t 1166 1167/* in_port_t */ 1168#undef in_port_t 1169 1170/* Define to `__inline__' or `__inline' if that's what the C compiler 1171 calls it, or to nothing if 'inline' is not supported under any name. */ 1172#ifndef __cplusplus 1173#undef inline 1174#endif 1175 1176/* Define to `short' if <sys/types.h> does not define. */ 1177#undef int16_t 1178 1179/* Define to `int' if <sys/types.h> does not define. */ 1180#undef int32_t 1181 1182/* Define to `long long' if <sys/types.h> does not define. */ 1183#undef int64_t 1184 1185/* Define to `signed char' if <sys/types.h> does not define. */ 1186#undef int8_t 1187 1188/* Define if replacement function should be used. */ 1189#undef malloc 1190 1191/* Define to `long int' if <sys/types.h> does not define. */ 1192#undef off_t 1193 1194/* Define as a signed integer type capable of holding a process identifier. */ 1195#undef pid_t 1196 1197/* Define to 'int' if not defined */ 1198#undef rlim_t 1199 1200/* Define to `unsigned int' if <sys/types.h> does not define. */ 1201#undef size_t 1202 1203/* Define to 'int' if not defined */ 1204#undef socklen_t 1205 1206/* Define to `int' if <sys/types.h> does not define. */ 1207#undef ssize_t 1208 1209/* Define to 'unsigned char if not defined */ 1210#undef u_char 1211 1212/* Define to `int' if <sys/types.h> doesn't define. */ 1213#undef uid_t 1214 1215/* Define to `unsigned short' if <sys/types.h> does not define. */ 1216#undef uint16_t 1217 1218/* Define to `unsigned int' if <sys/types.h> does not define. */ 1219#undef uint32_t 1220 1221/* Define to `unsigned long long' if <sys/types.h> does not define. */ 1222#undef uint64_t 1223 1224/* Define to `unsigned char' if <sys/types.h> does not define. */ 1225#undef uint8_t 1226 1227/* Define as `fork' if `vfork' does not work. */ 1228#undef vfork 1229 1230#if defined(OMITTED__D_GNU_SOURCE) && !defined(_GNU_SOURCE) 1231#define _GNU_SOURCE 1 1232#endif 1233 1234#if defined(OMITTED__D_BSD_SOURCE) && !defined(_BSD_SOURCE) 1235#define _BSD_SOURCE 1 1236#endif 1237 1238#if defined(OMITTED__D_DEFAULT_SOURCE) && !defined(_DEFAULT_SOURCE) 1239#define _DEFAULT_SOURCE 1 1240#endif 1241 1242#if defined(OMITTED__D__EXTENSIONS__) && !defined(__EXTENSIONS__) 1243#define __EXTENSIONS__ 1 1244#endif 1245 1246#if defined(OMITTED__D_POSIX_C_SOURCE_200112) && !defined(_POSIX_C_SOURCE) 1247#define _POSIX_C_SOURCE 200112 1248#endif 1249 1250#if defined(OMITTED__D_XOPEN_SOURCE_600) && !defined(_XOPEN_SOURCE) 1251#define _XOPEN_SOURCE 600 1252#endif 1253 1254#if defined(OMITTED__D_XOPEN_SOURCE_EXTENDED_1) && !defined(_XOPEN_SOURCE_EXTENDED) 1255#define _XOPEN_SOURCE_EXTENDED 1 1256#endif 1257 1258#if defined(OMITTED__D_ALL_SOURCE) && !defined(_ALL_SOURCE) 1259#define _ALL_SOURCE 1 1260#endif 1261 1262#if defined(OMITTED__D_LARGEFILE_SOURCE_1) && !defined(_LARGEFILE_SOURCE) 1263#define _LARGEFILE_SOURCE 1 1264#endif 1265 1266 1267 1268 1269#ifndef _OPENBSD_SOURCE 1270#define _OPENBSD_SOURCE 1 1271#endif 1272 1273#ifndef UNBOUND_DEBUG 1274# ifndef NDEBUG 1275# define NDEBUG 1276# endif 1277#endif 1278 1279/** Use small-ldns codebase */ 1280#define USE_SLDNS 1 1281#ifdef HAVE_SSL 1282# define LDNS_BUILD_CONFIG_HAVE_SSL 1 1283#endif 1284 1285#include <stdio.h> 1286#include <string.h> 1287#include <unistd.h> 1288#include <assert.h> 1289 1290#if STDC_HEADERS 1291#include <stdlib.h> 1292#include <stddef.h> 1293#endif 1294 1295#ifdef HAVE_STDARG_H 1296#include <stdarg.h> 1297#endif 1298 1299#ifdef HAVE_STDINT_H 1300#include <stdint.h> 1301#endif 1302 1303#include <errno.h> 1304 1305#if HAVE_SYS_PARAM_H 1306#include <sys/param.h> 1307#endif 1308 1309#ifdef HAVE_SYS_SOCKET_H 1310#include <sys/socket.h> 1311#endif 1312 1313#ifdef HAVE_SYS_UIO_H 1314#include <sys/uio.h> 1315#endif 1316 1317#ifdef HAVE_NETINET_IN_H 1318#include <netinet/in.h> 1319#endif 1320 1321#ifdef HAVE_NETINET_TCP_H 1322#include <netinet/tcp.h> 1323#endif 1324 1325#ifdef HAVE_ARPA_INET_H 1326#include <arpa/inet.h> 1327#endif 1328 1329#ifdef HAVE_WINSOCK2_H 1330#include <winsock2.h> 1331#endif 1332 1333#ifdef HAVE_WS2TCPIP_H 1334#include <ws2tcpip.h> 1335#endif 1336 1337#if !defined(USE_WINSOCK) || !defined(HAVE_SNPRINTF) || defined(SNPRINTF_RET_BROKEN) || defined(__USE_MINGW_ANSI_STDIO) 1338#define ARG_LL "%ll" 1339#else 1340#define ARG_LL "%I64" 1341#endif 1342 1343#ifndef AF_LOCAL 1344#define AF_LOCAL AF_UNIX 1345#endif 1346 1347 1348 1349#ifdef HAVE_ATTR_FORMAT 1350# define ATTR_FORMAT(archetype, string_index, first_to_check) \ 1351 __attribute__ ((format (archetype, string_index, first_to_check))) 1352#else /* !HAVE_ATTR_FORMAT */ 1353# define ATTR_FORMAT(archetype, string_index, first_to_check) /* empty */ 1354#endif /* !HAVE_ATTR_FORMAT */ 1355 1356 1357#if defined(DOXYGEN) 1358# define ATTR_UNUSED(x) x 1359#elif defined(__cplusplus) 1360# define ATTR_UNUSED(x) 1361#elif defined(HAVE_ATTR_UNUSED) 1362# define ATTR_UNUSED(x) x __attribute__((unused)) 1363#else /* !HAVE_ATTR_UNUSED */ 1364# define ATTR_UNUSED(x) x 1365#endif /* !HAVE_ATTR_UNUSED */ 1366 1367 1368#ifndef HAVE_FSEEKO 1369#define fseeko fseek 1370#define ftello ftell 1371#endif /* HAVE_FSEEKO */ 1372 1373 1374#ifndef MAXHOSTNAMELEN 1375#define MAXHOSTNAMELEN 256 1376#endif 1377 1378#if !defined(HAVE_SNPRINTF) || defined(SNPRINTF_RET_BROKEN) 1379#define snprintf snprintf_unbound 1380#define vsnprintf vsnprintf_unbound 1381#include <stdarg.h> 1382int snprintf (char *str, size_t count, const char *fmt, ...); 1383int vsnprintf (char *str, size_t count, const char *fmt, va_list arg); 1384#endif /* HAVE_SNPRINTF or SNPRINTF_RET_BROKEN */ 1385 1386#ifndef HAVE_INET_PTON 1387#define inet_pton inet_pton_unbound 1388int inet_pton(int af, const char* src, void* dst); 1389#endif /* HAVE_INET_PTON */ 1390 1391 1392#ifndef HAVE_INET_NTOP 1393#define inet_ntop inet_ntop_unbound 1394const char *inet_ntop(int af, const void *src, char *dst, size_t size); 1395#endif 1396 1397 1398#ifndef HAVE_INET_ATON 1399#define inet_aton inet_aton_unbound 1400int inet_aton(const char *cp, struct in_addr *addr); 1401#endif 1402 1403 1404#ifndef HAVE_MEMMOVE 1405#define memmove memmove_unbound 1406void *memmove(void *dest, const void *src, size_t n); 1407#endif 1408 1409 1410#ifndef HAVE_STRLCAT 1411#define strlcat strlcat_unbound 1412size_t strlcat(char *dst, const char *src, size_t siz); 1413#endif 1414 1415 1416#ifndef HAVE_STRLCPY 1417#define strlcpy strlcpy_unbound 1418size_t strlcpy(char *dst, const char *src, size_t siz); 1419#endif 1420 1421 1422#ifndef HAVE_GMTIME_R 1423#define gmtime_r gmtime_r_unbound 1424struct tm *gmtime_r(const time_t *timep, struct tm *result); 1425#endif 1426 1427 1428#ifndef HAVE_REALLOCARRAY 1429#define reallocarray reallocarrayunbound 1430void* reallocarray(void *ptr, size_t nmemb, size_t size); 1431#endif 1432 1433 1434#if !defined(HAVE_SLEEP) || defined(HAVE_WINDOWS_H) 1435#define sleep(x) Sleep((x)*1000) /* on win32 */ 1436#endif /* HAVE_SLEEP */ 1437 1438 1439#ifndef HAVE_USLEEP 1440#define usleep(x) Sleep((x)/1000 + 1) /* on win32 */ 1441#endif /* HAVE_USLEEP */ 1442 1443 1444#ifndef HAVE_RANDOM 1445#define random rand /* on win32, for tests only (bad random) */ 1446#endif /* HAVE_RANDOM */ 1447 1448 1449#ifndef HAVE_SRANDOM 1450#define srandom(x) srand(x) /* on win32, for tests only (bad random) */ 1451#endif /* HAVE_SRANDOM */ 1452 1453 1454/* detect if we need to cast to unsigned int for FD_SET to avoid warnings */ 1455#ifdef HAVE_WINSOCK2_H 1456#define FD_SET_T (u_int) 1457#else 1458#define FD_SET_T 1459#endif 1460 1461 1462#ifndef IPV6_MIN_MTU 1463#define IPV6_MIN_MTU 1280 1464#endif /* IPV6_MIN_MTU */ 1465 1466 1467#ifdef MEMCMP_IS_BROKEN 1468#include "compat/memcmp.h" 1469#define memcmp memcmp_unbound 1470int memcmp(const void *x, const void *y, size_t n); 1471#endif 1472 1473 1474 1475#ifndef HAVE_CTIME_R 1476#define ctime_r unbound_ctime_r 1477char *ctime_r(const time_t *timep, char *buf); 1478#endif 1479 1480#ifndef HAVE_STRSEP 1481#define strsep unbound_strsep 1482char *strsep(char **stringp, const char *delim); 1483#endif 1484 1485#ifndef HAVE_ISBLANK 1486#define isblank unbound_isblank 1487int isblank(int c); 1488#endif 1489 1490#ifndef HAVE_EXPLICIT_BZERO 1491#define explicit_bzero unbound_explicit_bzero 1492void explicit_bzero(void* buf, size_t len); 1493#endif 1494 1495#if defined(HAVE_INET_NTOP) && !HAVE_DECL_INET_NTOP 1496const char *inet_ntop(int af, const void *src, char *dst, size_t size); 1497#endif 1498 1499#if defined(HAVE_INET_PTON) && !HAVE_DECL_INET_PTON 1500int inet_pton(int af, const char* src, void* dst); 1501#endif 1502 1503#if !defined(HAVE_STRPTIME) || !defined(STRPTIME_WORKS) 1504#define strptime unbound_strptime 1505struct tm; 1506char *strptime(const char *s, const char *format, struct tm *tm); 1507#endif 1508 1509#if !HAVE_DECL_REALLOCARRAY 1510void *reallocarray(void *ptr, size_t nmemb, size_t size); 1511#endif 1512 1513#ifdef HAVE_LIBBSD 1514#include <bsd/string.h> 1515#include <bsd/stdlib.h> 1516#endif 1517 1518#ifdef HAVE_LIBRESSL 1519# if !HAVE_DECL_STRLCPY 1520size_t strlcpy(char *dst, const char *src, size_t siz); 1521# endif 1522# if !HAVE_DECL_STRLCAT 1523size_t strlcat(char *dst, const char *src, size_t siz); 1524# endif 1525# if !HAVE_DECL_ARC4RANDOM && defined(HAVE_ARC4RANDOM) 1526uint32_t arc4random(void); 1527# endif 1528# if !HAVE_DECL_ARC4RANDOM_UNIFORM && defined(HAVE_ARC4RANDOM_UNIFORM) 1529uint32_t arc4random_uniform(uint32_t upper_bound); 1530# endif 1531#endif /* HAVE_LIBRESSL */ 1532#ifndef HAVE_ARC4RANDOM 1533int getentropy(void* buf, size_t len); 1534uint32_t arc4random(void); 1535void arc4random_buf(void* buf, size_t n); 1536void _ARC4_LOCK(void); 1537void _ARC4_UNLOCK(void); 1538void _ARC4_LOCK_DESTROY(void); 1539#endif 1540#ifndef HAVE_ARC4RANDOM_UNIFORM 1541uint32_t arc4random_uniform(uint32_t upper_bound); 1542#endif 1543#ifdef COMPAT_SHA512 1544#ifndef SHA512_DIGEST_LENGTH 1545#define SHA512_BLOCK_LENGTH 128 1546#define SHA512_DIGEST_LENGTH 64 1547#define SHA512_DIGEST_STRING_LENGTH (SHA512_DIGEST_LENGTH * 2 + 1) 1548typedef struct _SHA512_CTX { 1549 uint64_t state[8]; 1550 uint64_t bitcount[2]; 1551 uint8_t buffer[SHA512_BLOCK_LENGTH]; 1552} SHA512_CTX; 1553#endif /* SHA512_DIGEST_LENGTH */ 1554void SHA512_Init(SHA512_CTX*); 1555void SHA512_Update(SHA512_CTX*, void*, size_t); 1556void SHA512_Final(uint8_t[SHA512_DIGEST_LENGTH], SHA512_CTX*); 1557unsigned char *SHA512(void* data, unsigned int data_len, unsigned char *digest); 1558#endif /* COMPAT_SHA512 */ 1559 1560 1561 1562#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)) 1563 /* using version of libevent that is not threadsafe. */ 1564# define LIBEVENT_SIGNAL_PROBLEM 1 1565#endif 1566 1567#ifndef CHECKED_INET6 1568# define CHECKED_INET6 1569# ifdef AF_INET6 1570# define INET6 1571# else 1572# define AF_INET6 28 1573# endif 1574#endif /* CHECKED_INET6 */ 1575 1576#ifndef HAVE_GETADDRINFO 1577struct sockaddr_storage; 1578#include "compat/fake-rfc2553.h" 1579#endif 1580 1581#ifdef UNBOUND_ALLOC_STATS 1582# define malloc(s) unbound_stat_malloc_log(s, __FILE__, __LINE__, __func__) 1583# define calloc(n,s) unbound_stat_calloc_log(n, s, __FILE__, __LINE__, __func__) 1584# define free(p) unbound_stat_free_log(p, __FILE__, __LINE__, __func__) 1585# define realloc(p,s) unbound_stat_realloc_log(p, s, __FILE__, __LINE__, __func__) 1586# define strdup(s) unbound_stat_strdup_log(s, __FILE__, __LINE__, __func__) 1587#ifdef HAVE_REALLOCARRAY 1588# define reallocarray(p,n,s) unbound_stat_reallocarray_log(p, n, s, __FILE__, __LINE__, __func__) 1589#endif 1590void *unbound_stat_malloc(size_t size); 1591void *unbound_stat_calloc(size_t nmemb, size_t size); 1592void unbound_stat_free(void *ptr); 1593void *unbound_stat_realloc(void *ptr, size_t size); 1594void *unbound_stat_malloc_log(size_t size, const char* file, int line, 1595 const char* func); 1596void *unbound_stat_calloc_log(size_t nmemb, size_t size, const char* file, 1597 int line, const char* func); 1598void unbound_stat_free_log(void *ptr, const char* file, int line, 1599 const char* func); 1600void *unbound_stat_realloc_log(void *ptr, size_t size, const char* file, 1601 int line, const char* func); 1602void *unbound_stat_reallocarray_log(void *ptr, size_t nmemb, size_t size, 1603 const char* file, int line, const char* func); 1604char *unbound_stat_strdup_log(const char *s, const char* file, int line, 1605 const char* func); 1606#elif defined(UNBOUND_ALLOC_LITE) 1607# include "util/alloc.h" 1608#endif /* UNBOUND_ALLOC_LITE and UNBOUND_ALLOC_STATS */ 1609 1610/** default port for DNS traffic. */ 1611#define UNBOUND_DNS_PORT 53 1612/** default port for DNS over TLS traffic. */ 1613#define UNBOUND_DNS_OVER_TLS_PORT 853 1614/** default port for DNS over HTTPS traffic. */ 1615#define UNBOUND_DNS_OVER_HTTPS_PORT 443 1616/** default port for DNS over QUIC traffic. */ 1617#define UNBOUND_DNS_OVER_QUIC_PORT 853 1618/** default port for unbound control traffic, registered port with IANA, 1619 ub-dns-control 8953/tcp unbound dns nameserver control */ 1620#define UNBOUND_CONTROL_PORT 8953 1621/** the version of unbound-control that this software implements */ 1622#define UNBOUND_CONTROL_VERSION 1 1623 1624 1625