/* config.h. Generated from config.h.in by configure. */ /* config.h.in. Generated from configure.in by autoheader. */ #ifndef _CONFIG_H_ #define _CONFIG_H_ /* ONLY EDIT acconfig.h, NEVER config.h or config.h.in! * config.h MAY BE OVERWRITTEN BY make, config.h.in by autoheader! */ /* Define your Target here. Currently defined are TARGET_LINUX (any * architecture), TARGET_BSD (experimental; tested on FreeBSD, hopefully * works for other BSD variants) and TARGET_CYGWIN. */ #define TARGET TARGET_LINUX /* change the #undef to #define if you do not want to compile with special * ISDN support for Linux. Note that the ISDN support will not compile ok on * unpatched kernerls earlier than 2.2.12 (if you did apply newer isdn patches, * it may work fine). This is not on by default because it will cause compile * problems on some systems */ /* #undef ISDN_SUPPORT */ /* The following regulates the IP Protocol support. Supported types are IPv4 * and IPv6 (aka IPng). You may enable either or both of these protocols. * Enabling in this context means that support for the respective protocol * will be in the binary. When running the binary, one of the protocols may * be activated via command line switches. Note that activating both IPv4 and * IPv6 is pointless (and will not work because two UDP and two TCP threads * will be started that concur for ports). Because of that, it is not allowed. * When pdnsd runs with IPv6 activated it should be able to service queries * from IPv6 as well as from IPv4 hosts, provided that you host is configured * properly. * For each of the protocols there are two options: ENABLE_IPV4 and ENABLE_IPV6 * control whether support for the respective protocol is available in the * binary. DEFAULT_IPV4 selects which protocol is enabled on pdnsd * startup by default. 1 means IPv4, while 0 means IPv6. If support for * a protocol was included in the executable, you can specify command line * parameters to activate or deactivate that protocol (the options are -4 and * -6), but it makes more sense to use the run_ipv4=on/off option in the * configuration file. * Make your choice. Note that IPv6 support is experimental in pdnsd. * In normal operation, you will currently only need IPv4. */ #define ENABLE_IPV4 1 #define DEFAULT_IPV4 1 #undef ENABLE_IPV6 /* In all pdnsd versions before 1.0.6, DNS queries were always done over * TCP. Now, you have the choice. You can control that behaviour using * the -m command line switch, and you can give a preset here. There * are 3 different modes: * UDP_ONLY: This is undoubtedly the fastest query method, because * no TCP negotiation needs to be done. * TCP_ONLY: This is slower than uo, but generally more secure * against DNS spoofing. Note that some name servers on the * internet do not support TCP queries, notably dnscache. * TCP_UDP: TCP, then UDP. If the TCP query fails with a "connection refused"- * error or times out, the query is retried using UDP. * UDP_TCP: UDP, then TCP. If the UDP reply is truncated (i.e. the tc flag is set), * the query is retried using TCP. */ #define M_PRESET TCP_ONLY /* In addition to choosing the presets, you may also completely disable * one of the protocols (TCP for preset UDP_ONLY and UDP for preset TCP_ONLY). * This saves some executable space. */ /* #undef NO_UDP_QUERIES */ /* #undef NO_TCP_QUERIES */ /* With the following option, you can disable the TCP server functionality * of pdnsd. Nearly no program does TCP queries, so you probably can do * this safely and save some executable space and one thread. * You also can turn off the TCP server at runtime with the --notcp option. */ /* #undef NO_TCP_SERVER */ /* By undefining the following, you can disable the UDP source address * discovery code. This is not recommended, but you may need it when * running into compilation problems. */ #define SRC_ADDR_DISC 1 /* NO_POLL specifies not to use poll(2), but select(2) instead. If you are * unsure about what this means, just leave this as it is.*/ /* #undef NO_POLL */ /* Define this for "hard" RFC 2181 compliance: this RFC states that * implementations should discard answers whose RR sets have multiple * different time stamps. While correct answers are generated, incorrect * ones are normally tolerated and corrected. Full RFC compliance is * however only achieved by deactivating this behaviour and thus being * intolerant. */ /* #undef RFC2181_ME_HARDER */ /* Define this to the device you want to use for getting random numbers. * Leave this undefined if you wand to use the standard C library random * function, which basically should be sufficient. * Linux and FreeBSD have two random number devices: /dev/random and * /dev/urandom. /dev/urandom might be less secure in some cases, but * should still be more than sufficient. The use of /dev/random is * discouraged, as reading from this device blocks when new random bits * need to be gathered. */ /* #undef RANDOM_DEVICE */ #define R_DEFAULT 1 /* #undef R_RANDOM */ /* #undef R_ARC4RANDOM */ /*#define RANDOM_DEVICE "/dev/urandom"*/ /* Designate which database manager to use for cacheing. * default: native; others: gdbm */ #define CACHE_DBM DBM_NATIVE #define CONFDIR "/data/data/net.typeblog.socks" #define CACHEDIR "/data/data/net.typeblog.socks" #define TEMPDIR "/data/data/net.typeblog.socks/cache"; /* This is for various debugging facilities that produce debug output and * double-check some values. You can enable debug messages with the -g option. * Normally, you can switch this off safely by setting the number after DEBUG * to 0. This will increase speed (although only marginally), save space * in the executable (only about 12kB) and some stack space per thread * (which may be significant if you have many threads running simultaneously). * However, it may be an aid when debugging config files. * The only defined debug levels by now are in the range 0 - 9. * Define this to 9 if you want hex dumps of all the queries and replies pdnsd * receives (you must also call pdnsd with -v9 to actually see the hex dumps). * When in doubt, leave it defined to 1. */ #define DEBUG 1 /* This defines the default verbosity of informational messages you will get. This has nothing to to with the debug option (-g), but may be set with -v option. 0 is for normal operation, up to 3 for debugging. Unlike the debug messages, these messages will also be written to the syslog.*/ #define VERBOSITY 0 /* Redefine this if you want another hash size. * The number of hash buckets is computed as power of two (1< and it should be used (not on Ultrix). */ #define HAVE_ALLOCA_H 1 /* Define to 1 if you have the `asprintf' function. */ #define HAVE_ASPRINTF 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `getline' function. */ #if defined(__aarch64__) || defined(__x86_64__) #define HAVE_GETLINE 1 #endif /* Define to 1 if you have the `getpwnam_r' function. */ //#define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `gettimeofday' function. */ #define HAVE_GETTIMEOFDAY 1 /* Define to 1 if you have the `inet_ntop' function. */ #define HAVE_INET_NTOP 1 /* Define to 1 if you have the `inet_pton' function. */ #define HAVE_INET_PTON 1 /* Define to 1 if you have the header file. */ #define HAVE_INTTYPES_H 1 /* Define to 1 if you have the `pthread' library (-lpthread). */ #define HAVE_LIBPTHREAD 1 /* Define to 1 if you have the header file. */ #define HAVE_MALLOC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mempcpy' function. */ //#define HAVE_MEMPCPY 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `nanosleep' function. */ #define HAVE_NANOSLEEP 1 /* Define to 1 if you have the header file. */ #define HAVE_NETINET_IN_H 1 /* Define to 1 if you have the header file. */ #define HAVE_NET_IF_H 1 /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `snprintf' function. */ #define HAVE_SNPRINTF 1 /* Define to 1 if you have the `socket' function. */ #define HAVE_SOCKET 1 /* Define to 1 if the system has the type `socklen_t'. */ #define HAVE_SOCKLEN_T 1 /* Define to 1 if you have the header file. */ #define HAVE_STDINT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `stpcpy' function. */ #if defined(__aarch64__) || defined(__x86_64__) #define HAVE_STPCPY 1 #endif /* Define to 1 if you have the `stpncpy' function. */ //#define HAVE_STPNCPY 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strlcpy' function. */ /* #undef HAVE_STRLCPY */ /* Define to 1 if you have the `strndup' function. */ #define HAVE_STRNDUP 1 /* Define to 1 if the system has the type `struct ifreq'. */ #define HAVE_STRUCT_IFREQ 1 /* Define to 1 if the system has the type `struct in6_addr'. */ #define HAVE_STRUCT_IN6_ADDR 1 /* Define to 1 if the system has the type `struct in_pktinfo'. */ #define HAVE_STRUCT_IN_PKTINFO 1 /* Define to 1 if you have the header file. */ #define HAVE_SYSLOG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SOCKET_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the `uname' function. */ #define HAVE_UNAME 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `vasprintf' function. */ #define HAVE_VASPRINTF 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the `vsnprintf' function. */ #define HAVE_VSNPRINTF 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* Define to the address where bug reports for this package should be sent. */ #define PACKAGE_BUGREPORT "" /* Define to the full name of this package. */ #define PACKAGE_NAME "" /* Define to the full name and version of this package. */ #define PACKAGE_STRING "" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "" /* Define to the version of this package. */ #define PACKAGE_VERSION "" /* Define as the return type of signal handlers (`int' or `void'). */ #define RETSIGTYPE void /* If using the C implementation of alloca, define if you know the direction of stack growth for your system; otherwise it will be automatically deduced at runtime. STACK_DIRECTION > 0 => grows toward higher addresses STACK_DIRECTION < 0 => grows toward lower addresses STACK_DIRECTION = 0 => direction of growth unknown */ /* #undef STACK_DIRECTION */ /* Define to 1 if you have the ANSI C header files. */ #define STDC_HEADERS 1 /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* Define to 1 if your declares `struct tm'. */ /* #undef TM_IN_SYS_TIME */ /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif /* Define to 1 if on MINIX. */ /* #undef _MINIX */ /* Define to 2 if the system does not provide POSIX.1 features except with this defined. */ /* #undef _POSIX_1_SOURCE */ /* Define to 1 if you need to in order for `stat' and other things to work. */ /* #undef _POSIX_SOURCE */ /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if does not define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */