1/* config.h.  Generated from config.h.in by configure.  */
2/* config.h.in.  Generated from configure.ac by autoheader.  */
3
4/* apply the noreturn attribute to a function that exits the program */
5#define ATTR_NORETURN __attribute__((__noreturn__))
6
7/* apply the weak attribute to a symbol */
8#define ATTR_WEAK __attribute__((weak))
9
10/* Directory to chroot to */
11#define CHROOT_DIR "/var/unbound"
12
13/* Define this to enable client subnet option. */
14/* #undef CLIENT_SUBNET */
15
16/* Do sha512 definitions in config.h */
17/* #undef COMPAT_SHA512 */
18
19/* Pathname to the Unbound configuration file */
20#define CONFIGFILE "/var/unbound/unbound.conf"
21
22/* Define this if on macOSX10.4-darwin8 and setreuid and setregid do not work
23   */
24/* #undef DARWIN_BROKEN_SETREUID */
25
26/* Whether daemon is deprecated */
27/* #undef DEPRECATED_DAEMON */
28
29/* default dnstap socket path */
30/* #undef DNSTAP_SOCKET_PATH */
31
32/* Define if you want to use debug lock checking (slow). */
33/* #undef ENABLE_LOCK_CHECKS */
34
35/* Define this if you enabled-allsymbols from libunbound to link binaries to
36   it for smaller install size, but the libunbound export table is polluted by
37   internal symbols */
38/* #undef EXPORT_ALL_SYMBOLS */
39
40/* Define to 1 if you have the `accept4' function. */
41#define HAVE_ACCEPT4 1
42
43/* Define to 1 if you have the `arc4random' function. */
44#define HAVE_ARC4RANDOM 1
45
46/* Define to 1 if you have the `arc4random_uniform' function. */
47#define HAVE_ARC4RANDOM_UNIFORM 1
48
49/* Define to 1 if you have the <arpa/inet.h> header file. */
50#define HAVE_ARPA_INET_H 1
51
52/* Whether the C compiler accepts the "format" attribute */
53#define HAVE_ATTR_FORMAT 1
54
55/* Whether the C compiler accepts the "noreturn" attribute */
56#define HAVE_ATTR_NORETURN 1
57
58/* Whether the C compiler accepts the "unused" attribute */
59#define HAVE_ATTR_UNUSED 1
60
61/* Whether the C compiler accepts the "weak" attribute */
62#define HAVE_ATTR_WEAK 1
63
64/* Define to 1 if you have the `chown' function. */
65#define HAVE_CHOWN 1
66
67/* Define to 1 if you have the `chroot' function. */
68#define HAVE_CHROOT 1
69
70/* Define to 1 if you have the `CRYPTO_cleanup_all_ex_data' function. */
71/* #undef HAVE_CRYPTO_CLEANUP_ALL_EX_DATA */
72
73/* Define to 1 if you have the `CRYPTO_THREADID_set_callback' function. */
74/* #undef HAVE_CRYPTO_THREADID_SET_CALLBACK */
75
76/* Define to 1 if you have the `ctime_r' function. */
77#define HAVE_CTIME_R 1
78
79/* Define to 1 if you have the `daemon' function. */
80#define HAVE_DAEMON 1
81
82/* Define to 1 if you have the declaration of `arc4random', and to 0 if you
83   don't. */
84/* #undef HAVE_DECL_ARC4RANDOM */
85
86/* Define to 1 if you have the declaration of `arc4random_uniform', and to 0
87   if you don't. */
88/* #undef HAVE_DECL_ARC4RANDOM_UNIFORM */
89
90/* Define to 1 if you have the declaration of `evsignal_assign', and to 0 if
91   you don't. */
92/* #undef HAVE_DECL_EVSIGNAL_ASSIGN */
93
94/* Define to 1 if you have the declaration of `inet_ntop', and to 0 if you
95   don't. */
96#define HAVE_DECL_INET_NTOP 1
97
98/* Define to 1 if you have the declaration of `inet_pton', and to 0 if you
99   don't. */
100#define HAVE_DECL_INET_PTON 1
101
102/* Define to 1 if you have the declaration of `NID_ED25519', and to 0 if you
103   don't. */
104#define HAVE_DECL_NID_ED25519 1
105
106/* Define to 1 if you have the declaration of `NID_ED448', and to 0 if you
107   don't. */
108#define HAVE_DECL_NID_ED448 1
109
110/* Define to 1 if you have the declaration of `NID_secp384r1', and to 0 if you
111   don't. */
112#define HAVE_DECL_NID_SECP384R1 1
113
114/* Define to 1 if you have the declaration of `NID_X9_62_prime256v1', and to 0
115   if you don't. */
116#define HAVE_DECL_NID_X9_62_PRIME256V1 1
117
118/* Define to 1 if you have the declaration of `reallocarray', and to 0 if you
119   don't. */
120/* #undef HAVE_DECL_REALLOCARRAY */
121
122/* Define to 1 if you have the declaration of `redisConnect', and to 0 if you
123   don't. */
124/* #undef HAVE_DECL_REDISCONNECT */
125
126/* Define to 1 if you have the declaration of `sk_SSL_COMP_pop_free', and to 0
127   if you don't. */
128#define HAVE_DECL_SK_SSL_COMP_POP_FREE 1
129
130/* Define to 1 if you have the declaration of
131   `SSL_COMP_get_compression_methods', and to 0 if you don't. */
132#define HAVE_DECL_SSL_COMP_GET_COMPRESSION_METHODS 1
133
134/* Define to 1 if you have the declaration of `SSL_CTX_set_ecdh_auto', and to
135   0 if you don't. */
136#define HAVE_DECL_SSL_CTX_SET_ECDH_AUTO 1
137
138/* Define to 1 if you have the declaration of `strlcat', and to 0 if you
139   don't. */
140/* #undef HAVE_DECL_STRLCAT */
141
142/* Define to 1 if you have the declaration of `strlcpy', and to 0 if you
143   don't. */
144/* #undef HAVE_DECL_STRLCPY */
145
146/* Define to 1 if you have the declaration of `XML_StopParser', and to 0 if
147   you don't. */
148#define HAVE_DECL_XML_STOPPARSER 1
149
150/* Define to 1 if you have the <dlfcn.h> header file. */
151#define HAVE_DLFCN_H 1
152
153/* Define to 1 if you have the `DSA_SIG_set0' function. */
154#define HAVE_DSA_SIG_SET0 1
155
156/* Define to 1 if you have the <endian.h> header file. */
157/* #undef HAVE_ENDIAN_H */
158
159/* Define to 1 if you have the `endprotoent' function. */
160#define HAVE_ENDPROTOENT 1
161
162/* Define to 1 if you have the `endpwent' function. */
163#define HAVE_ENDPWENT 1
164
165/* Define to 1 if you have the `endservent' function. */
166#define HAVE_ENDSERVENT 1
167
168/* Define to 1 if you have the `ERR_free_strings' function. */
169/* #undef HAVE_ERR_FREE_STRINGS */
170
171/* Define to 1 if you have the `ERR_load_crypto_strings' function. */
172/* #undef HAVE_ERR_LOAD_CRYPTO_STRINGS */
173
174/* Define to 1 if you have the `event_assign' function. */
175/* #undef HAVE_EVENT_ASSIGN */
176
177/* Define to 1 if you have the `event_base_free' function. */
178/* #undef HAVE_EVENT_BASE_FREE */
179
180/* Define to 1 if you have the `event_base_get_method' function. */
181/* #undef HAVE_EVENT_BASE_GET_METHOD */
182
183/* Define to 1 if you have the `event_base_new' function. */
184/* #undef HAVE_EVENT_BASE_NEW */
185
186/* Define to 1 if you have the `event_base_once' function. */
187/* #undef HAVE_EVENT_BASE_ONCE */
188
189/* Define to 1 if you have the <event.h> header file. */
190/* #undef HAVE_EVENT_H */
191
192/* Define to 1 if you have the `EVP_aes_256_cbc' function. */
193#define HAVE_EVP_AES_256_CBC 1
194
195/* Define to 1 if you have the `EVP_cleanup' function. */
196/* #undef HAVE_EVP_CLEANUP */
197
198/* Define to 1 if you have the `EVP_DigestVerify' function. */
199#define HAVE_EVP_DIGESTVERIFY 1
200
201/* Define to 1 if you have the `EVP_dss1' function. */
202/* #undef HAVE_EVP_DSS1 */
203
204/* Define to 1 if you have the `EVP_EncryptInit_ex' function. */
205#define HAVE_EVP_ENCRYPTINIT_EX 1
206
207/* Define to 1 if you have the `EVP_MD_CTX_new' function. */
208#define HAVE_EVP_MD_CTX_NEW 1
209
210/* Define to 1 if you have the `EVP_sha1' function. */
211#define HAVE_EVP_SHA1 1
212
213/* Define to 1 if you have the `EVP_sha256' function. */
214#define HAVE_EVP_SHA256 1
215
216/* Define to 1 if you have the `EVP_sha512' function. */
217#define HAVE_EVP_SHA512 1
218
219/* Define to 1 if you have the `ev_default_loop' function. */
220/* #undef HAVE_EV_DEFAULT_LOOP */
221
222/* Define to 1 if you have the `ev_loop' function. */
223/* #undef HAVE_EV_LOOP */
224
225/* Define to 1 if you have the <expat.h> header file. */
226#define HAVE_EXPAT_H 1
227
228/* Define to 1 if you have the `explicit_bzero' function. */
229#define HAVE_EXPLICIT_BZERO 1
230
231/* Define to 1 if you have the `fcntl' function. */
232#define HAVE_FCNTL 1
233
234/* Define to 1 if you have the `FIPS_mode' function. */
235#define HAVE_FIPS_MODE 1
236
237/* Define to 1 if you have the `fork' function. */
238#define HAVE_FORK 1
239
240/* Define to 1 if fseeko (and presumably ftello) exists and is declared. */
241#define HAVE_FSEEKO 1
242
243/* Define to 1 if you have the `fsync' function. */
244#define HAVE_FSYNC 1
245
246/* Whether getaddrinfo is available */
247#define HAVE_GETADDRINFO 1
248
249/* Define to 1 if you have the `getauxval' function. */
250/* #undef HAVE_GETAUXVAL */
251
252/* Define to 1 if you have the `getentropy' function. */
253/* #undef HAVE_GETENTROPY */
254
255/* Define to 1 if you have the <getopt.h> header file. */
256#define HAVE_GETOPT_H 1
257
258/* Define to 1 if you have the `getpwnam' function. */
259#define HAVE_GETPWNAM 1
260
261/* Define to 1 if you have the `getrlimit' function. */
262#define HAVE_GETRLIMIT 1
263
264/* Define to 1 if you have the `glob' function. */
265#define HAVE_GLOB 1
266
267/* Define to 1 if you have the <glob.h> header file. */
268#define HAVE_GLOB_H 1
269
270/* Define to 1 if you have the `gmtime_r' function. */
271#define HAVE_GMTIME_R 1
272
273/* Define to 1 if you have the <grp.h> header file. */
274#define HAVE_GRP_H 1
275
276/* Define to 1 if you have the <hiredis/hiredis.h> header file. */
277/* #undef HAVE_HIREDIS_HIREDIS_H */
278
279/* Define to 1 if you have the `HMAC_Init_ex' function. */
280#define HAVE_HMAC_INIT_EX 1
281
282/* If you have HMAC_Update */
283#define HAVE_HMAC_UPDATE 1
284
285/* Define to 1 if you have the `inet_aton' function. */
286#define HAVE_INET_ATON 1
287
288/* Define to 1 if you have the `inet_ntop' function. */
289#define HAVE_INET_NTOP 1
290
291/* Define to 1 if you have the `inet_pton' function. */
292#define HAVE_INET_PTON 1
293
294/* Define to 1 if you have the `initgroups' function. */
295#define HAVE_INITGROUPS 1
296
297/* Define to 1 if you have the <inttypes.h> header file. */
298#define HAVE_INTTYPES_H 1
299
300/* if the function 'ioctlsocket' is available */
301/* #undef HAVE_IOCTLSOCKET */
302
303/* Define to 1 if you have the <iphlpapi.h> header file. */
304/* #undef HAVE_IPHLPAPI_H */
305
306/* Define to 1 if you have the `isblank' function. */
307#define HAVE_ISBLANK 1
308
309/* Define to 1 if you have the `kill' function. */
310#define HAVE_KILL 1
311
312/* Define to 1 if you have the <libkern/OSByteOrder.h> header file. */
313/* #undef HAVE_LIBKERN_OSBYTEORDER_H */
314
315/* Define if we have LibreSSL */
316/* #undef HAVE_LIBRESSL */
317
318/* Define to 1 if you have the `localtime_r' function. */
319#define HAVE_LOCALTIME_R 1
320
321/* Define to 1 if you have the <login_cap.h> header file. */
322#define HAVE_LOGIN_CAP_H 1
323
324/* If have GNU libc compatible malloc */
325#define HAVE_MALLOC 1
326
327/* Define to 1 if you have the `memmove' function. */
328#define HAVE_MEMMOVE 1
329
330/* Define to 1 if you have the <memory.h> header file. */
331#define HAVE_MEMORY_H 1
332
333/* Define to 1 if you have the <netdb.h> header file. */
334#define HAVE_NETDB_H 1
335
336/* Define to 1 if you have the <netinet/in.h> header file. */
337#define HAVE_NETINET_IN_H 1
338
339/* Define to 1 if you have the <netinet/tcp.h> header file. */
340#define HAVE_NETINET_TCP_H 1
341
342/* Use libnettle for crypto */
343/* #undef HAVE_NETTLE */
344
345/* Define to 1 if you have the <nettle/dsa-compat.h> header file. */
346/* #undef HAVE_NETTLE_DSA_COMPAT_H */
347
348/* Define to 1 if you have the <nettle/eddsa.h> header file. */
349/* #undef HAVE_NETTLE_EDDSA_H */
350
351/* Use libnss for crypto */
352/* #undef HAVE_NSS */
353
354/* Define to 1 if you have the `OpenSSL_add_all_digests' function. */
355/* #undef HAVE_OPENSSL_ADD_ALL_DIGESTS */
356
357/* Define to 1 if you have the <openssl/bn.h> header file. */
358#define HAVE_OPENSSL_BN_H 1
359
360/* Define to 1 if you have the `OPENSSL_config' function. */
361#define HAVE_OPENSSL_CONFIG 1
362
363/* Define to 1 if you have the <openssl/conf.h> header file. */
364#define HAVE_OPENSSL_CONF_H 1
365
366/* Define to 1 if you have the <openssl/dh.h> header file. */
367#define HAVE_OPENSSL_DH_H 1
368
369/* Define to 1 if you have the <openssl/dsa.h> header file. */
370#define HAVE_OPENSSL_DSA_H 1
371
372/* Define to 1 if you have the <openssl/engine.h> header file. */
373#define HAVE_OPENSSL_ENGINE_H 1
374
375/* Define to 1 if you have the <openssl/err.h> header file. */
376#define HAVE_OPENSSL_ERR_H 1
377
378/* Define to 1 if you have the `OPENSSL_init_crypto' function. */
379#define HAVE_OPENSSL_INIT_CRYPTO 1
380
381/* Define to 1 if you have the `OPENSSL_init_ssl' function. */
382#define HAVE_OPENSSL_INIT_SSL 1
383
384/* Define to 1 if you have the <openssl/rand.h> header file. */
385#define HAVE_OPENSSL_RAND_H 1
386
387/* Define to 1 if you have the <openssl/rsa.h> header file. */
388#define HAVE_OPENSSL_RSA_H 1
389
390/* Define to 1 if you have the <openssl/ssl.h> header file. */
391#define HAVE_OPENSSL_SSL_H 1
392
393/* Define if you have POSIX threads libraries and header files. */
394#define HAVE_PTHREAD 1
395
396/* Have PTHREAD_PRIO_INHERIT. */
397#define HAVE_PTHREAD_PRIO_INHERIT 1
398
399/* Define to 1 if the system has the type `pthread_rwlock_t'. */
400#define HAVE_PTHREAD_RWLOCK_T 1
401
402/* Define to 1 if the system has the type `pthread_spinlock_t'. */
403#define HAVE_PTHREAD_SPINLOCK_T 1
404
405/* Define to 1 if you have the <pwd.h> header file. */
406#define HAVE_PWD_H 1
407
408/* Define if you have Python libraries and header files. */
409/* #undef HAVE_PYTHON */
410
411/* Define to 1 if you have the `random' function. */
412#define HAVE_RANDOM 1
413
414/* Define to 1 if you have the `RAND_cleanup' function. */
415/* #undef HAVE_RAND_CLEANUP */
416
417/* If we have reallocarray(3) */
418#define HAVE_REALLOCARRAY 1
419
420/* Define to 1 if you have the `recvmsg' function. */
421#define HAVE_RECVMSG 1
422
423/* Define to 1 if you have the `sendmsg' function. */
424#define HAVE_SENDMSG 1
425
426/* Define to 1 if you have the `setregid' function. */
427/* #undef HAVE_SETREGID */
428
429/* Define to 1 if you have the `setresgid' function. */
430#define HAVE_SETRESGID 1
431
432/* Define to 1 if you have the `setresuid' function. */
433#define HAVE_SETRESUID 1
434
435/* Define to 1 if you have the `setreuid' function. */
436/* #undef HAVE_SETREUID */
437
438/* Define to 1 if you have the `setrlimit' function. */
439#define HAVE_SETRLIMIT 1
440
441/* Define to 1 if you have the `setsid' function. */
442#define HAVE_SETSID 1
443
444/* Define to 1 if you have the `setusercontext' function. */
445#define HAVE_SETUSERCONTEXT 1
446
447/* Define to 1 if you have the `SHA512_Update' function. */
448/* #undef HAVE_SHA512_UPDATE */
449
450/* Define to 1 if you have the `shmget' function. */
451#define HAVE_SHMGET 1
452
453/* Define to 1 if you have the `sigprocmask' function. */
454#define HAVE_SIGPROCMASK 1
455
456/* Define to 1 if you have the `sleep' function. */
457#define HAVE_SLEEP 1
458
459/* Define to 1 if you have the `snprintf' function. */
460#define HAVE_SNPRINTF 1
461
462/* Define to 1 if you have the `socketpair' function. */
463#define HAVE_SOCKETPAIR 1
464
465/* Using Solaris threads */
466/* #undef HAVE_SOLARIS_THREADS */
467
468/* Define to 1 if you have the `srandom' function. */
469#define HAVE_SRANDOM 1
470
471/* Define if you have the SSL libraries installed. */
472#define HAVE_SSL /**/
473
474/* Define to 1 if you have the `SSL_CTX_set_ciphersuites' function. */
475#define HAVE_SSL_CTX_SET_CIPHERSUITES 1
476
477/* Define to 1 if you have the `SSL_CTX_set_security_level' function. */
478#define HAVE_SSL_CTX_SET_SECURITY_LEVEL 1
479
480/* Define to 1 if you have the `SSL_CTX_set_tlsext_ticket_key_cb' function. */
481/* #undef HAVE_SSL_CTX_SET_TLSEXT_TICKET_KEY_CB */
482
483/* Define to 1 if you have the `SSL_get0_peername' function. */
484#define HAVE_SSL_GET0_PEERNAME 1
485
486/* Define to 1 if you have the `SSL_set1_host' function. */
487#define HAVE_SSL_SET1_HOST 1
488
489/* Define to 1 if you have the <stdarg.h> header file. */
490#define HAVE_STDARG_H 1
491
492/* Define to 1 if you have the <stdbool.h> header file. */
493#define HAVE_STDBOOL_H 1
494
495/* Define to 1 if you have the <stdint.h> header file. */
496#define HAVE_STDINT_H 1
497
498/* Define to 1 if you have the <stdlib.h> header file. */
499#define HAVE_STDLIB_H 1
500
501/* Define to 1 if you have the `strftime' function. */
502#define HAVE_STRFTIME 1
503
504/* Define to 1 if you have the <strings.h> header file. */
505#define HAVE_STRINGS_H 1
506
507/* Define to 1 if you have the <string.h> header file. */
508#define HAVE_STRING_H 1
509
510/* Define to 1 if you have the `strlcat' function. */
511#define HAVE_STRLCAT 1
512
513/* Define to 1 if you have the `strlcpy' function. */
514#define HAVE_STRLCPY 1
515
516/* Define to 1 if you have the `strptime' function. */
517#define HAVE_STRPTIME 1
518
519/* Define to 1 if you have the `strsep' function. */
520#define HAVE_STRSEP 1
521
522/* Define to 1 if `ipi_spec_dst' is a member of `struct in_pktinfo'. */
523/* #undef HAVE_STRUCT_IN_PKTINFO_IPI_SPEC_DST */
524
525/* Define to 1 if `sun_len' is a member of `struct sockaddr_un'. */
526#define HAVE_STRUCT_SOCKADDR_UN_SUN_LEN 1
527
528/* Define if you have Swig libraries and header files. */
529/* #undef HAVE_SWIG */
530
531/* Define to 1 if you have the <syslog.h> header file. */
532#define HAVE_SYSLOG_H 1
533
534/* Define to 1 if systemd should be used */
535/* #undef HAVE_SYSTEMD */
536
537/* Define to 1 if you have the <sys/endian.h> header file. */
538#define HAVE_SYS_ENDIAN_H 1
539
540/* Define to 1 if you have the <sys/ipc.h> header file. */
541#define HAVE_SYS_IPC_H 1
542
543/* Define to 1 if you have the <sys/param.h> header file. */
544#define HAVE_SYS_PARAM_H 1
545
546/* Define to 1 if you have the <sys/resource.h> header file. */
547#define HAVE_SYS_RESOURCE_H 1
548
549/* Define to 1 if you have the <sys/sha2.h> header file. */
550/* #undef HAVE_SYS_SHA2_H */
551
552/* Define to 1 if you have the <sys/shm.h> header file. */
553#define HAVE_SYS_SHM_H 1
554
555/* Define to 1 if you have the <sys/socket.h> header file. */
556#define HAVE_SYS_SOCKET_H 1
557
558/* Define to 1 if you have the <sys/stat.h> header file. */
559#define HAVE_SYS_STAT_H 1
560
561/* Define to 1 if you have the <sys/sysctl.h> header file. */
562/* #undef HAVE_SYS_SYSCTL_H */
563
564/* Define to 1 if you have the <sys/types.h> header file. */
565#define HAVE_SYS_TYPES_H 1
566
567/* Define to 1 if you have the <sys/uio.h> header file. */
568#define HAVE_SYS_UIO_H 1
569
570/* Define to 1 if you have the <sys/un.h> header file. */
571#define HAVE_SYS_UN_H 1
572
573/* Define to 1 if you have the <sys/wait.h> header file. */
574#define HAVE_SYS_WAIT_H 1
575
576/* Define to 1 if you have the <time.h> header file. */
577#define HAVE_TIME_H 1
578
579/* Define to 1 if you have the `tzset' function. */
580#define HAVE_TZSET 1
581
582/* Define to 1 if you have the <unistd.h> header file. */
583#define HAVE_UNISTD_H 1
584
585/* Define to 1 if you have the `usleep' function. */
586#define HAVE_USLEEP 1
587
588/* Define to 1 if you have the `vfork' function. */
589#define HAVE_VFORK 1
590
591/* Define to 1 if you have the <vfork.h> header file. */
592/* #undef HAVE_VFORK_H */
593
594/* Define to 1 if you have the <windows.h> header file. */
595/* #undef HAVE_WINDOWS_H */
596
597/* Using Windows threads */
598/* #undef HAVE_WINDOWS_THREADS */
599
600/* Define to 1 if you have the <winsock2.h> header file. */
601/* #undef HAVE_WINSOCK2_H */
602
603/* Define to 1 if `fork' works. */
604#define HAVE_WORKING_FORK 1
605
606/* Define to 1 if `vfork' works. */
607#define HAVE_WORKING_VFORK 1
608
609/* Define to 1 if you have the `writev' function. */
610#define HAVE_WRITEV 1
611
612/* Define to 1 if you have the <ws2tcpip.h> header file. */
613/* #undef HAVE_WS2TCPIP_H */
614
615/* Define to 1 if you have the `X509_VERIFY_PARAM_set1_host' function. */
616#define HAVE_X509_VERIFY_PARAM_SET1_HOST 1
617
618/* Define to 1 if you have the `_beginthreadex' function. */
619/* #undef HAVE__BEGINTHREADEX */
620
621/* if lex has yylex_destroy */
622#define LEX_HAS_YYLEX_DESTROY 1
623
624/* Define to the sub-directory where libtool stores uninstalled libraries. */
625#define LT_OBJDIR ".libs/"
626
627/* Define to the maximum message length to pass to syslog. */
628#define MAXSYSLOGMSGLEN 10240
629
630/* Define if memcmp() does not compare unsigned bytes */
631/* #undef MEMCMP_IS_BROKEN */
632
633/* Define if mkdir has one argument. */
634/* #undef MKDIR_HAS_ONE_ARG */
635
636/* Define if the network stack does not fully support nonblocking io (causes
637   lower performance). */
638/* #undef NONBLOCKING_IS_BROKEN */
639
640/* Put -D_ALL_SOURCE define in config.h */
641/* #undef OMITTED__D_ALL_SOURCE */
642
643/* Put -D_BSD_SOURCE define in config.h */
644/* #undef OMITTED__D_BSD_SOURCE */
645
646/* Put -D_DEFAULT_SOURCE define in config.h */
647/* #undef OMITTED__D_DEFAULT_SOURCE */
648
649/* Put -D_GNU_SOURCE define in config.h */
650/* #undef OMITTED__D_GNU_SOURCE */
651
652/* Put -D_LARGEFILE_SOURCE=1 define in config.h */
653/* #undef OMITTED__D_LARGEFILE_SOURCE_1 */
654
655/* Put -D_POSIX_C_SOURCE=200112 define in config.h */
656/* #undef OMITTED__D_POSIX_C_SOURCE_200112 */
657
658/* Put -D_XOPEN_SOURCE=600 define in config.h */
659/* #undef OMITTED__D_XOPEN_SOURCE_600 */
660
661/* Put -D_XOPEN_SOURCE_EXTENDED=1 define in config.h */
662/* #undef OMITTED__D_XOPEN_SOURCE_EXTENDED_1 */
663
664/* Put -D__EXTENSIONS__ define in config.h */
665/* #undef OMITTED__D__EXTENSIONS__ */
666
667/* Define to the address where bug reports for this package should be sent. */
668#define PACKAGE_BUGREPORT "unbound-bugs@nlnetlabs.nl"
669
670/* Define to the full name of this package. */
671#define PACKAGE_NAME "unbound"
672
673/* Define to the full name and version of this package. */
674#define PACKAGE_STRING "unbound 1.9.2"
675
676/* Define to the one symbol short name of this package. */
677#define PACKAGE_TARNAME "unbound"
678
679/* Define to the home page for this package. */
680#define PACKAGE_URL ""
681
682/* Define to the version of this package. */
683#define PACKAGE_VERSION "1.9.2"
684
685/* default pidfile location */
686#define PIDFILE "/var/unbound/unbound.pid"
687
688/* Define to necessary symbol if this constant uses a non-standard name on
689   your system. */
690/* #undef PTHREAD_CREATE_JOINABLE */
691
692/* Define as the return type of signal handlers (`int' or `void'). */
693#define RETSIGTYPE void
694
695/* if REUSEPORT is enabled by default */
696#define REUSEPORT_DEFAULT 0
697
698/* default rootkey location */
699#define ROOT_ANCHOR_FILE "/var/unbound/root.key"
700
701/* default rootcert location */
702#define ROOT_CERT_FILE "/var/unbound/icannbundle.pem"
703
704/* version number for resource files */
705#define RSRC_PACKAGE_VERSION 1,9,2,0
706
707/* Directory to chdir to */
708#define RUN_DIR "/var/unbound"
709
710/* Shared data */
711#define SHARE_DIR "/var/unbound"
712
713/* The size of `time_t', as computed by sizeof. */
714#define SIZEOF_TIME_T 8
715
716/* define if (v)snprintf does not return length needed, (but length used) */
717/* #undef SNPRINTF_RET_BROKEN */
718
719/* Define to 1 if libsodium supports sodium_set_misuse_handler */
720/* #undef SODIUM_MISUSE_HANDLER */
721
722/* Define to 1 if you have the ANSI C header files. */
723#define STDC_HEADERS 1
724
725/* use default strptime. */
726#define STRPTIME_WORKS 1
727
728/* Use win32 resources and API */
729/* #undef UB_ON_WINDOWS */
730
731/* default username */
732#define UB_USERNAME "unbound"
733
734/* use to enable lightweight alloc assertions, for debug use */
735/* #undef UNBOUND_ALLOC_LITE */
736
737/* use malloc not regions, for debug use */
738/* #undef UNBOUND_ALLOC_NONREGIONAL */
739
740/* use statistics for allocs and frees, for debug use */
741/* #undef UNBOUND_ALLOC_STATS */
742
743/* define this to enable debug checks. */
744/* #undef UNBOUND_DEBUG */
745
746/* Define to 1 to use cachedb support */
747/* #undef USE_CACHEDB */
748
749/* Define to 1 to enable dnscrypt support */
750/* #undef USE_DNSCRYPT */
751
752/* Define to 1 to enable dnscrypt with xchacha20 support */
753/* #undef USE_DNSCRYPT_XCHACHA20 */
754
755/* Define to 1 to enable dnstap support */
756/* #undef USE_DNSTAP */
757
758/* Define this to enable DSA support. */
759#define USE_DSA 1
760
761/* Define this to enable ECDSA support. */
762#define USE_ECDSA 1
763
764/* Define this to enable an EVP workaround for older openssl */
765/* #undef USE_ECDSA_EVP_WORKAROUND */
766
767/* Define this to enable ED25519 support. */
768#define USE_ED25519 1
769
770/* Define this to enable ED448 support. */
771#define USE_ED448 1
772
773/* Define this to enable GOST support. */
774/* #undef USE_GOST */
775
776/* Define to 1 to use ipsecmod support. */
777/* #undef USE_IPSECMOD */
778
779/* Define if you want to use internal select based events */
780#define USE_MINI_EVENT 1
781
782/* Define this to enable client TCP Fast Open. */
783/* #undef USE_MSG_FASTOPEN */
784
785/* Define this to enable client TCP Fast Open. */
786/* #undef USE_OSX_MSG_FASTOPEN */
787
788/* Define this to use hiredis client. */
789/* #undef USE_REDIS */
790
791/* Define this to enable SHA1 support. */
792#define USE_SHA1 1
793
794/* Define this to enable SHA256 and SHA512 support. */
795#define USE_SHA2 1
796
797/* Enable extensions on AIX 3, Interix.  */
798#ifndef _ALL_SOURCE
799# define _ALL_SOURCE 1
800#endif
801/* Enable GNU extensions on systems that have them.  */
802#ifndef _GNU_SOURCE
803# define _GNU_SOURCE 1
804#endif
805/* Enable threading extensions on Solaris.  */
806#ifndef _POSIX_PTHREAD_SEMANTICS
807# define _POSIX_PTHREAD_SEMANTICS 1
808#endif
809/* Enable extensions on HP NonStop.  */
810#ifndef _TANDEM_SOURCE
811# define _TANDEM_SOURCE 1
812#endif
813/* Enable general extensions on Solaris.  */
814#ifndef __EXTENSIONS__
815# define __EXTENSIONS__ 1
816#endif
817
818
819/* Define this to enable server TCP Fast Open. */
820/* #undef USE_TCP_FASTOPEN */
821
822/* Whether the windows socket API is used */
823/* #undef USE_WINSOCK */
824
825/* the version of the windows API enabled */
826#define WINVER 0x0502
827
828/* Define if you want Python module. */
829/* #undef WITH_PYTHONMODULE */
830
831/* Define if you want PyUnbound. */
832/* #undef WITH_PYUNBOUND */
833
834/* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a
835   `char[]'. */
836#define YYTEXT_POINTER 1
837
838/* Enable large inode numbers on Mac OS X 10.5.  */
839#ifndef _DARWIN_USE_64_BIT_INODE
840# define _DARWIN_USE_64_BIT_INODE 1
841#endif
842
843/* Number of bits in a file offset, on hosts where this is settable. */
844/* #undef _FILE_OFFSET_BITS */
845
846/* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */
847/* #undef _LARGEFILE_SOURCE */
848
849/* Define for large files, on AIX-style hosts. */
850/* #undef _LARGE_FILES */
851
852/* Define to 1 if on MINIX. */
853/* #undef _MINIX */
854
855/* Enable for compile on Minix */
856/* #undef _NETBSD_SOURCE */
857
858/* Define to 2 if the system does not provide POSIX.1 features except with
859   this defined. */
860/* #undef _POSIX_1_SOURCE */
861
862/* Define to 1 if you need to in order for `stat' and other things to work. */
863/* #undef _POSIX_SOURCE */
864
865/* Define to empty if `const' does not conform to ANSI C. */
866/* #undef const */
867
868/* Define to `int' if <sys/types.h> doesn't define. */
869/* #undef gid_t */
870
871/* in_addr_t */
872/* #undef in_addr_t */
873
874/* in_port_t */
875/* #undef in_port_t */
876
877/* Define to `__inline__' or `__inline' if that's what the C compiler
878   calls it, or to nothing if 'inline' is not supported under any name.  */
879#ifndef __cplusplus
880/* #undef inline */
881#endif
882
883/* Define to `short' if <sys/types.h> does not define. */
884/* #undef int16_t */
885
886/* Define to `int' if <sys/types.h> does not define. */
887/* #undef int32_t */
888
889/* Define to `long long' if <sys/types.h> does not define. */
890/* #undef int64_t */
891
892/* Define to `signed char' if <sys/types.h> does not define. */
893/* #undef int8_t */
894
895/* Define if replacement function should be used. */
896/* #undef malloc */
897
898/* Define to `long int' if <sys/types.h> does not define. */
899/* #undef off_t */
900
901/* Define to `int' if <sys/types.h> does not define. */
902/* #undef pid_t */
903
904/* Define to 'int' if not defined */
905/* #undef rlim_t */
906
907/* Define to `unsigned int' if <sys/types.h> does not define. */
908/* #undef size_t */
909
910/* Define to 'int' if not defined */
911/* #undef socklen_t */
912
913/* Define to `int' if <sys/types.h> does not define. */
914/* #undef ssize_t */
915
916/* Define to 'unsigned char if not defined */
917/* #undef u_char */
918
919/* Define to `int' if <sys/types.h> doesn't define. */
920/* #undef uid_t */
921
922/* Define to `unsigned short' if <sys/types.h> does not define. */
923/* #undef uint16_t */
924
925/* Define to `unsigned int' if <sys/types.h> does not define. */
926/* #undef uint32_t */
927
928/* Define to `unsigned long long' if <sys/types.h> does not define. */
929/* #undef uint64_t */
930
931/* Define to `unsigned char' if <sys/types.h> does not define. */
932/* #undef uint8_t */
933
934/* Define as `fork' if `vfork' does not work. */
935/* #undef vfork */
936
937#if defined(OMITTED__D_GNU_SOURCE) && !defined(_GNU_SOURCE)
938#define _GNU_SOURCE 1
939#endif
940
941#if defined(OMITTED__D_BSD_SOURCE) && !defined(_BSD_SOURCE)
942#define _BSD_SOURCE 1
943#endif
944
945#if defined(OMITTED__D_DEFAULT_SOURCE) && !defined(_DEFAULT_SOURCE)
946#define _DEFAULT_SOURCE 1
947#endif
948
949#if defined(OMITTED__D__EXTENSIONS__) && !defined(__EXTENSIONS__)
950#define __EXTENSIONS__ 1
951#endif
952
953#if defined(OMITTED__D_POSIX_C_SOURCE_200112) && !defined(_POSIX_C_SOURCE)
954#define _POSIX_C_SOURCE 200112
955#endif
956
957#if defined(OMITTED__D_XOPEN_SOURCE_600) && !defined(_XOPEN_SOURCE)
958#define _XOPEN_SOURCE 600
959#endif
960
961#if defined(OMITTED__D_XOPEN_SOURCE_EXTENDED_1) && !defined(_XOPEN_SOURCE_EXTENDED)
962#define _XOPEN_SOURCE_EXTENDED 1
963#endif
964
965#if defined(OMITTED__D_ALL_SOURCE) && !defined(_ALL_SOURCE)
966#define _ALL_SOURCE 1
967#endif
968
969#if defined(OMITTED__D_LARGEFILE_SOURCE_1) && !defined(_LARGEFILE_SOURCE)
970#define _LARGEFILE_SOURCE 1
971#endif
972
973
974
975
976#ifndef _OPENBSD_SOURCE
977#define _OPENBSD_SOURCE 1
978#endif
979
980#ifndef UNBOUND_DEBUG
981# ifndef NDEBUG
982#  define NDEBUG
983# endif
984#endif
985
986/** Use small-ldns codebase */
987#define USE_SLDNS 1
988#ifdef HAVE_SSL
989#  define LDNS_BUILD_CONFIG_HAVE_SSL 1
990#endif
991
992#include <stdio.h>
993#include <string.h>
994#include <unistd.h>
995#include <assert.h>
996
997#if STDC_HEADERS
998#include <stdlib.h>
999#include <stddef.h>
1000#endif
1001
1002#ifdef HAVE_STDARG_H
1003#include <stdarg.h>
1004#endif
1005
1006#ifdef HAVE_STDINT_H
1007#include <stdint.h>
1008#endif
1009
1010#include <errno.h>
1011
1012#if HAVE_SYS_PARAM_H
1013#include <sys/param.h>
1014#endif
1015
1016#ifdef HAVE_SYS_SOCKET_H
1017#include <sys/socket.h>
1018#endif
1019
1020#ifdef HAVE_SYS_UIO_H
1021#include <sys/uio.h>
1022#endif
1023
1024#ifdef HAVE_NETINET_IN_H
1025#include <netinet/in.h>
1026#endif
1027
1028#ifdef HAVE_NETINET_TCP_H
1029#include <netinet/tcp.h>
1030#endif
1031
1032#ifdef HAVE_ARPA_INET_H
1033#include <arpa/inet.h>
1034#endif
1035
1036#ifdef HAVE_WINSOCK2_H
1037#include <winsock2.h>
1038#endif
1039
1040#ifdef HAVE_WS2TCPIP_H
1041#include <ws2tcpip.h>
1042#endif
1043
1044#ifndef USE_WINSOCK
1045#define ARG_LL "%ll"
1046#else
1047#define ARG_LL "%I64"
1048#endif
1049
1050#ifndef AF_LOCAL
1051#define AF_LOCAL AF_UNIX
1052#endif
1053
1054
1055
1056#ifdef HAVE_ATTR_FORMAT
1057#  define ATTR_FORMAT(archetype, string_index, first_to_check) \
1058    __attribute__ ((format (archetype, string_index, first_to_check)))
1059#else /* !HAVE_ATTR_FORMAT */
1060#  define ATTR_FORMAT(archetype, string_index, first_to_check) /* empty */
1061#endif /* !HAVE_ATTR_FORMAT */
1062
1063
1064#if defined(DOXYGEN)
1065#  define ATTR_UNUSED(x)  x
1066#elif defined(__cplusplus)
1067#  define ATTR_UNUSED(x)
1068#elif defined(HAVE_ATTR_UNUSED)
1069#  define ATTR_UNUSED(x)  x __attribute__((unused))
1070#else /* !HAVE_ATTR_UNUSED */
1071#  define ATTR_UNUSED(x)  x
1072#endif /* !HAVE_ATTR_UNUSED */
1073
1074
1075#ifndef HAVE_FSEEKO
1076#define fseeko fseek
1077#define ftello ftell
1078#endif /* HAVE_FSEEKO */
1079
1080
1081#ifndef MAXHOSTNAMELEN
1082#define MAXHOSTNAMELEN 256
1083#endif
1084
1085#if !defined(HAVE_SNPRINTF) || defined(SNPRINTF_RET_BROKEN)
1086#define snprintf snprintf_unbound
1087#define vsnprintf vsnprintf_unbound
1088#include <stdarg.h>
1089int snprintf (char *str, size_t count, const char *fmt, ...);
1090int vsnprintf (char *str, size_t count, const char *fmt, va_list arg);
1091#endif /* HAVE_SNPRINTF or SNPRINTF_RET_BROKEN */
1092
1093#ifndef HAVE_INET_PTON
1094#define inet_pton inet_pton_unbound
1095int inet_pton(int af, const char* src, void* dst);
1096#endif /* HAVE_INET_PTON */
1097
1098
1099#ifndef HAVE_INET_NTOP
1100#define inet_ntop inet_ntop_unbound
1101const char *inet_ntop(int af, const void *src, char *dst, size_t size);
1102#endif
1103
1104
1105#ifndef HAVE_INET_ATON
1106#define inet_aton inet_aton_unbound
1107int inet_aton(const char *cp, struct in_addr *addr);
1108#endif
1109
1110
1111#ifndef HAVE_MEMMOVE
1112#define memmove memmove_unbound
1113void *memmove(void *dest, const void *src, size_t n);
1114#endif
1115
1116
1117#ifndef HAVE_STRLCAT
1118#define strlcat strlcat_unbound
1119size_t strlcat(char *dst, const char *src, size_t siz);
1120#endif
1121
1122
1123#ifndef HAVE_STRLCPY
1124#define strlcpy strlcpy_unbound
1125size_t strlcpy(char *dst, const char *src, size_t siz);
1126#endif
1127
1128
1129#ifndef HAVE_GMTIME_R
1130#define gmtime_r gmtime_r_unbound
1131struct tm *gmtime_r(const time_t *timep, struct tm *result);
1132#endif
1133
1134
1135#ifndef HAVE_REALLOCARRAY
1136#define reallocarray reallocarrayunbound
1137void* reallocarray(void *ptr, size_t nmemb, size_t size);
1138#endif
1139
1140
1141#if !defined(HAVE_SLEEP) || defined(HAVE_WINDOWS_H)
1142#define sleep(x) Sleep((x)*1000) /* on win32 */
1143#endif /* HAVE_SLEEP */
1144
1145
1146#ifndef HAVE_USLEEP
1147#define usleep(x) Sleep((x)/1000 + 1) /* on win32 */
1148#endif /* HAVE_USLEEP */
1149
1150
1151#ifndef HAVE_RANDOM
1152#define random rand /* on win32, for tests only (bad random) */
1153#endif /* HAVE_RANDOM */
1154
1155
1156#ifndef HAVE_SRANDOM
1157#define srandom(x) srand(x) /* on win32, for tests only (bad random) */
1158#endif /* HAVE_SRANDOM */
1159
1160
1161/* detect if we need to cast to unsigned int for FD_SET to avoid warnings */
1162#ifdef HAVE_WINSOCK2_H
1163#define FD_SET_T (u_int)
1164#else
1165#define FD_SET_T
1166#endif
1167
1168
1169#ifndef IPV6_MIN_MTU
1170#define IPV6_MIN_MTU 1280
1171#endif /* IPV6_MIN_MTU */
1172
1173
1174#ifdef MEMCMP_IS_BROKEN
1175#include "compat/memcmp.h"
1176#define memcmp memcmp_unbound
1177int memcmp(const void *x, const void *y, size_t n);
1178#endif
1179
1180
1181
1182#ifndef HAVE_CTIME_R
1183#define ctime_r unbound_ctime_r
1184char *ctime_r(const time_t *timep, char *buf);
1185#endif
1186
1187#ifndef HAVE_STRSEP
1188#define strsep unbound_strsep
1189char *strsep(char **stringp, const char *delim);
1190#endif
1191
1192#ifndef HAVE_ISBLANK
1193#define isblank unbound_isblank
1194int isblank(int c);
1195#endif
1196
1197#ifndef HAVE_EXPLICIT_BZERO
1198#define explicit_bzero unbound_explicit_bzero
1199void explicit_bzero(void* buf, size_t len);
1200#endif
1201
1202#if defined(HAVE_INET_NTOP) && !HAVE_DECL_INET_NTOP
1203const char *inet_ntop(int af, const void *src, char *dst, size_t size);
1204#endif
1205
1206#if defined(HAVE_INET_PTON) && !HAVE_DECL_INET_PTON
1207int inet_pton(int af, const char* src, void* dst);
1208#endif
1209
1210#if !defined(HAVE_STRPTIME) || !defined(STRPTIME_WORKS)
1211#define strptime unbound_strptime
1212struct tm;
1213char *strptime(const char *s, const char *format, struct tm *tm);
1214#endif
1215
1216#ifdef HAVE_LIBRESSL
1217#  if !HAVE_DECL_STRLCPY
1218size_t strlcpy(char *dst, const char *src, size_t siz);
1219#  endif
1220#  if !HAVE_DECL_STRLCAT
1221size_t strlcat(char *dst, const char *src, size_t siz);
1222#  endif
1223#  if !HAVE_DECL_ARC4RANDOM && defined(HAVE_ARC4RANDOM)
1224uint32_t arc4random(void);
1225#  endif
1226#  if !HAVE_DECL_ARC4RANDOM_UNIFORM && defined(HAVE_ARC4RANDOM_UNIFORM)
1227uint32_t arc4random_uniform(uint32_t upper_bound);
1228#  endif
1229#  if !HAVE_DECL_REALLOCARRAY
1230void *reallocarray(void *ptr, size_t nmemb, size_t size);
1231#  endif
1232#endif /* HAVE_LIBRESSL */
1233#ifndef HAVE_ARC4RANDOM
1234int getentropy(void* buf, size_t len);
1235uint32_t arc4random(void);
1236void arc4random_buf(void* buf, size_t n);
1237void _ARC4_LOCK(void);
1238void _ARC4_UNLOCK(void);
1239void _ARC4_LOCK_DESTROY(void);
1240#endif
1241#ifndef HAVE_ARC4RANDOM_UNIFORM
1242uint32_t arc4random_uniform(uint32_t upper_bound);
1243#endif
1244#ifdef COMPAT_SHA512
1245#ifndef SHA512_DIGEST_LENGTH
1246#define SHA512_BLOCK_LENGTH		128
1247#define SHA512_DIGEST_LENGTH		64
1248#define SHA512_DIGEST_STRING_LENGTH	(SHA512_DIGEST_LENGTH * 2 + 1)
1249typedef struct _SHA512_CTX {
1250	uint64_t	state[8];
1251	uint64_t	bitcount[2];
1252	uint8_t	buffer[SHA512_BLOCK_LENGTH];
1253} SHA512_CTX;
1254#endif /* SHA512_DIGEST_LENGTH */
1255void SHA512_Init(SHA512_CTX*);
1256void SHA512_Update(SHA512_CTX*, void*, size_t);
1257void SHA512_Final(uint8_t[SHA512_DIGEST_LENGTH], SHA512_CTX*);
1258unsigned char *SHA512(void* data, unsigned int data_len, unsigned char *digest);
1259#endif /* COMPAT_SHA512 */
1260
1261
1262
1263#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))
1264   /* using version of libevent that is not threadsafe. */
1265#  define LIBEVENT_SIGNAL_PROBLEM 1
1266#endif
1267
1268#ifndef CHECKED_INET6
1269#  define CHECKED_INET6
1270#  ifdef AF_INET6
1271#    define INET6
1272#  else
1273#    define AF_INET6        28
1274#  endif
1275#endif /* CHECKED_INET6 */
1276
1277#ifndef HAVE_GETADDRINFO
1278struct sockaddr_storage;
1279#include "compat/fake-rfc2553.h"
1280#endif
1281
1282#ifdef UNBOUND_ALLOC_STATS
1283#  define malloc(s) unbound_stat_malloc_log(s, __FILE__, __LINE__, __func__)
1284#  define calloc(n,s) unbound_stat_calloc_log(n, s, __FILE__, __LINE__, __func__)
1285#  define free(p) unbound_stat_free_log(p, __FILE__, __LINE__, __func__)
1286#  define realloc(p,s) unbound_stat_realloc_log(p, s, __FILE__, __LINE__, __func__)
1287void *unbound_stat_malloc(size_t size);
1288void *unbound_stat_calloc(size_t nmemb, size_t size);
1289void unbound_stat_free(void *ptr);
1290void *unbound_stat_realloc(void *ptr, size_t size);
1291void *unbound_stat_malloc_log(size_t size, const char* file, int line,
1292	const char* func);
1293void *unbound_stat_calloc_log(size_t nmemb, size_t size, const char* file,
1294	int line, const char* func);
1295void unbound_stat_free_log(void *ptr, const char* file, int line,
1296	const char* func);
1297void *unbound_stat_realloc_log(void *ptr, size_t size, const char* file,
1298	int line, const char* func);
1299#elif defined(UNBOUND_ALLOC_LITE)
1300#  include "util/alloc.h"
1301#endif /* UNBOUND_ALLOC_LITE and UNBOUND_ALLOC_STATS */
1302
1303/** default port for DNS traffic. */
1304#define UNBOUND_DNS_PORT 53
1305/** default port for DNS over TLS traffic. */
1306#define UNBOUND_DNS_OVER_TLS_PORT 853
1307/** default port for unbound control traffic, registered port with IANA,
1308    ub-dns-control  8953/tcp    unbound dns nameserver control */
1309#define UNBOUND_CONTROL_PORT 8953
1310/** the version of unbound-control that this software implements */
1311#define UNBOUND_CONTROL_VERSION 1
1312
1313
1314