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