1 1.1 christos /* includes/config.h. Generated from config.h.in by configure. */ 2 1.1 christos /* includes/config.h.in. Generated from configure.ac by autoheader. */ 3 1.1 christos 4 1.1 christos /* Define if building universal (internal helper macro) */ 5 1.1 christos /* #undef AC_APPLE_UNIVERSAL_BUILD */ 6 1.1 christos 7 1.1 christos /* Define to support binary insertion of leases into queues. */ 8 1.4 christos /* #undef BINARY_LEASES */ 9 1.1 christos 10 1.1 christos /* Define to compile debug-only DHCP software. */ 11 1.1 christos /* #undef DEBUG */ 12 1.1 christos 13 1.1 christos /* Define to queue multiple DHCPACK replies per fsync. */ 14 1.4 christos #define DELAYED_ACK 1 15 1.4 christos 16 1.4 christos /* Define to 1 to include DHCPv4 over DHCPv6 support. */ 17 1.4 christos /* #undef DHCP4o6 */ 18 1.1 christos 19 1.1 christos /* Define to BIG_ENDIAN for MSB (Motorola or SPARC CPUs) or LITTLE_ENDIAN for 20 1.1 christos LSB (Intel CPUs). */ 21 1.1 christos #include <sys/endian.h> 22 1.1 christos #define DHCP_BYTE_ORDER _BYTE_ORDER 23 1.1 christos 24 1.1 christos #if 0 25 1.1 christos /* make it possible to obey USE_INET6=no, define it in the Makefile instead */ 26 1.1 christos /* Define to 1 to include DHCPv6 support. */ 27 1.1 christos #define DHCPv6 1 28 1.1 christos #endif 29 1.1 christos 30 1.1 christos /* Define to any value to chroot() prior to loading config. */ 31 1.1 christos /* #undef EARLY_CHROOT */ 32 1.1 christos 33 1.1 christos /* Define to include execute() config language support. */ 34 1.1 christos #define ENABLE_EXECUTE 1 35 1.1 christos 36 1.1 christos /* Define to include Failover Protocol support. */ 37 1.1 christos #define FAILOVER_PROTOCOL 1 38 1.1 christos 39 1.1 christos /* Define to nothing if C supports flexible array members, and to 1 if it does 40 1.1 christos not. That way, with a declaration like `struct s { int n; double 41 1.1 christos d[FLEXIBLE_ARRAY_MEMBER]; };', the struct hack can be used with pre-C99 42 1.1 christos compilers. When computing the size of such an object, don't use 'sizeof 43 1.1 christos (struct s)' as it overestimates the size. Use 'offsetof (struct s, d)' 44 1.1 christos instead. Don't use 'offsetof (struct s, d[0])', as this doesn't work with 45 1.1 christos MSVC and with C++ compilers. */ 46 1.1 christos #define FLEXIBLE_ARRAY_MEMBER /**/ 47 1.1 christos 48 1.1 christos /* ATF framework specified? */ 49 1.1 christos #define HAVE_ATF 1 50 1.1 christos 51 1.1 christos /* Define to 1 to use the Berkeley Packet Filter interface code. */ 52 1.1 christos #define HAVE_BPF 1 53 1.1 christos 54 1.3 christos /* Define to 1 if you have the /dev/random or other configured file. */ 55 1.1 christos #define HAVE_DEV_RANDOM 1 56 1.1 christos 57 1.1 christos /* Define to 1 to use DLPI interface code. */ 58 1.1 christos /* #undef HAVE_DLPI */ 59 1.1 christos 60 1.1 christos /* Define to 1 if you have the <ifaddrs.h> header file. */ 61 1.1 christos #define HAVE_IFADDRS_H 1 62 1.1 christos 63 1.1 christos /* Define to 1 if you have the `inet_ntop' function. */ 64 1.1 christos #define HAVE_INET_NTOP 1 65 1.1 christos 66 1.1 christos /* Define to 1 if you have the `inet_pton' function. */ 67 1.1 christos #define HAVE_INET_PTON 1 68 1.1 christos 69 1.1 christos /* Define to 1 if you have the <inttypes.h> header file. */ 70 1.1 christos #define HAVE_INTTYPES_H 1 71 1.1 christos 72 1.1 christos /* Define to 1 if you have the <ldap.h> header file. */ 73 1.1 christos #define HAVE_LDAP_H 1 74 1.1 christos 75 1.1 christos /* Define to 1 if you have the <linux/types.h> header file. */ 76 1.1 christos /* #undef HAVE_LINUX_TYPES_H */ 77 1.1 christos 78 1.1 christos /* Define to 1 to use the Linux Packet Filter interface code. */ 79 1.1 christos /* #undef HAVE_LPF */ 80 1.1 christos 81 1.1 christos /* Define to 1 if you have the <memory.h> header file. */ 82 1.1 christos #define HAVE_MEMORY_H 1 83 1.1 christos 84 1.1 christos /* Define to 1 if you have the <micasa_mgmd.h> header file. */ 85 1.1 christos /* #undef HAVE_MICASA_MGMD_H */ 86 1.1 christos 87 1.1 christos /* Define to 1 if you have the <net/if6.h> header file. */ 88 1.1 christos /* #undef HAVE_NET_IF6_H */ 89 1.1 christos 90 1.1 christos /* Define to 1 if you have the <net/if_dl.h> header file. */ 91 1.1 christos #define HAVE_NET_IF_DL_H 1 92 1.1 christos 93 1.1 christos /* Define to 1 if you have the <regex.h> header file. */ 94 1.1 christos #define HAVE_REGEX_H 1 95 1.1 christos 96 1.1 christos /* Define to 1 if the sockaddr structure has a length field. */ 97 1.1 christos #define HAVE_SA_LEN /**/ 98 1.1 christos 99 1.1 christos /* Define to 1 if you have the <stdint.h> header file. */ 100 1.1 christos #define HAVE_STDINT_H 1 101 1.1 christos 102 1.4 christos /* Define to 1 if you have the <stdio.h> header file. */ 103 1.4 christos #define HAVE_STDIO_H 1 104 1.4 christos 105 1.1 christos /* Define to 1 if you have the <stdlib.h> header file. */ 106 1.1 christos #define HAVE_STDLIB_H 1 107 1.1 christos 108 1.1 christos /* Define to 1 if you have the <strings.h> header file. */ 109 1.1 christos #define HAVE_STRINGS_H 1 110 1.1 christos 111 1.1 christos /* Define to 1 if you have the <string.h> header file. */ 112 1.1 christos #define HAVE_STRING_H 1 113 1.1 christos 114 1.1 christos /* Define to 1 if you have the `strlcat' function. */ 115 1.1 christos #define HAVE_STRLCAT 1 116 1.1 christos 117 1.1 christos /* Define to 1 if you have the <sys/socket.h> header file. */ 118 1.1 christos #define HAVE_SYS_SOCKET_H 1 119 1.1 christos 120 1.1 christos /* Define to 1 if you have the <sys/stat.h> header file. */ 121 1.1 christos #define HAVE_SYS_STAT_H 1 122 1.1 christos 123 1.1 christos /* Define to 1 if you have the <sys/types.h> header file. */ 124 1.1 christos #define HAVE_SYS_TYPES_H 1 125 1.1 christos 126 1.1 christos /* Define to 1 if you have the <unistd.h> header file. */ 127 1.1 christos #define HAVE_UNISTD_H 1 128 1.1 christos 129 1.1 christos /* Define to the string for a noreturn attribute. */ 130 1.1 christos #define ISC_DHCP_NORETURN __attribute__((noreturn)) 131 1.1 christos 132 1.1 christos /* Define to 1 if the system has 'struct if_laddrconf'. */ 133 1.1 christos /* #undef ISC_PLATFORM_HAVEIF_LADDRCONF */ 134 1.1 christos 135 1.1 christos /* Define to 1 if the system has 'struct if_laddrreq'. */ 136 1.1 christos /* #undef ISC_PLATFORM_HAVEIF_LADDRREQ */ 137 1.1 christos 138 1.1 christos /* Define to 1 if the system has 'struct lifnum'. */ 139 1.1 christos /* #undef ISC_PLATFORM_HAVELIFNUM */ 140 1.1 christos 141 1.1 christos /* Define to 1 if the inet_aton() function is missing. */ 142 1.1 christos /* #undef NEED_INET_ATON */ 143 1.1 christos 144 1.1 christos /* Name of package */ 145 1.1 christos #define PACKAGE "dhcp" 146 1.1 christos 147 1.1 christos /* Define to the address where bug reports for this package should be sent. */ 148 1.1 christos #define PACKAGE_BUGREPORT "dhcp-users (at) isc.org" 149 1.1 christos 150 1.1 christos /* Define to the full name of this package. */ 151 1.1 christos #define PACKAGE_NAME "DHCP" 152 1.1 christos 153 1.1 christos /* Define to the full name and version of this package. */ 154 1.4 christos #define PACKAGE_STRING "DHCP 4.4.3-P1" 155 1.1 christos 156 1.1 christos /* Define to the one symbol short name of this package. */ 157 1.1 christos #define PACKAGE_TARNAME "dhcp" 158 1.1 christos 159 1.1 christos /* Define to the home page for this package. */ 160 1.1 christos #define PACKAGE_URL "" 161 1.1 christos 162 1.1 christos /* Define to the version of this package. */ 163 1.4 christos #define PACKAGE_VERSION "4.4.3-P1" 164 1.1 christos 165 1.1 christos /* Define to any value to include Ari's PARANOIA patch. */ 166 1.1 christos /* #undef PARANOIA */ 167 1.1 christos 168 1.3 christos /* Define to 1 to include relay port support. */ 169 1.3 christos /* #undef RELAY_PORT */ 170 1.1 christos 171 1.1 christos /* The size of `struct iaddr *', as computed by sizeof. */ 172 1.1 christos #define SIZEOF_STRUCT_IADDR_P sizeof(void *) 173 1.1 christos 174 1.1 christos /* Define to 1 if you have the ANSI C header files. */ 175 1.1 christos #define STDC_HEADERS 1 176 1.1 christos 177 1.1 christos /* Define to include server activity tracing support. */ 178 1.1 christos #define TRACING 1 179 1.1 christos 180 1.3 christos /* Define to 1 if ethernet devices are in /dev/net */ 181 1.3 christos /* #undef USE_DEV_NET */ 182 1.3 christos 183 1.1 christos /* Define to include PIDs in syslog messages. */ 184 1.1 christos #define USE_LOG_PID 1 185 1.1 christos 186 1.1 christos /* Define to 1 to use the standard BSD socket API. */ 187 1.1 christos /* #undef USE_SOCKETS */ 188 1.1 christos 189 1.1 christos /* Enable extensions on AIX 3, Interix. */ 190 1.1 christos #ifndef _ALL_SOURCE 191 1.1 christos # define _ALL_SOURCE 1 192 1.1 christos #endif 193 1.1 christos /* Enable GNU extensions on systems that have them. */ 194 1.1 christos #ifndef _GNU_SOURCE 195 1.1 christos # define _GNU_SOURCE 1 196 1.1 christos #endif 197 1.1 christos /* Enable threading extensions on Solaris. */ 198 1.1 christos #ifndef _POSIX_PTHREAD_SEMANTICS 199 1.1 christos # define _POSIX_PTHREAD_SEMANTICS 1 200 1.1 christos #endif 201 1.1 christos /* Enable extensions on HP NonStop. */ 202 1.1 christos #ifndef _TANDEM_SOURCE 203 1.1 christos # define _TANDEM_SOURCE 1 204 1.1 christos #endif 205 1.1 christos /* Enable general extensions on Solaris. */ 206 1.1 christos #ifndef __EXTENSIONS__ 207 1.1 christos # define __EXTENSIONS__ 1 208 1.1 christos #endif 209 1.1 christos 210 1.1 christos 211 1.1 christos /* Define to 1 to enable IPv4 packet info support. */ 212 1.1 christos /* #undef USE_V4_PKTINFO */ 213 1.1 christos 214 1.1 christos /* Version number of package */ 215 1.4 christos #define VERSION "4.4.3-P1" 216 1.1 christos 217 1.1 christos /* tpacket_auxdata.tp_vlan_tci present */ 218 1.1 christos /* #undef VLAN_TCI_PRESENT */ 219 1.1 christos 220 1.1 christos #if 0 221 1.1 christos /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most 222 1.1 christos significant byte first (like Motorola and SPARC, unlike Intel). */ 223 1.1 christos #if defined AC_APPLE_UNIVERSAL_BUILD 224 1.1 christos # if defined __BIG_ENDIAN__ 225 1.1 christos # define WORDS_BIGENDIAN 1 226 1.1 christos # endif 227 1.1 christos #else 228 1.1 christos # ifndef WORDS_BIGENDIAN 229 1.1 christos /* # undef WORDS_BIGENDIAN */ 230 1.1 christos # endif 231 1.1 christos #endif 232 1.1 christos #else 233 1.1 christos #if _BYTE_ORDER == _BIG_ENDIAN 234 1.1 christos # define WORDS_BIGENDIAN 1 235 1.1 christos #endif 236 1.1 christos #endif 237 1.1 christos 238 1.1 christos /* Define to 1 if on MINIX. */ 239 1.1 christos /* #undef _MINIX */ 240 1.1 christos 241 1.1 christos /* File for dhclient6 leases. */ 242 1.1 christos /* #undef _PATH_DHCLIENT6_DB */ 243 1.1 christos 244 1.1 christos /* File for dhclient6 process information. */ 245 1.1 christos /* #undef _PATH_DHCLIENT6_PID */ 246 1.1 christos 247 1.3 christos /* Default file containing dhcpd configuration. */ 248 1.3 christos /* #undef _PATH_DHCPD_CONF */ 249 1.3 christos 250 1.1 christos /* File for dhclient leases. */ 251 1.1 christos /* #undef _PATH_DHCLIENT_DB */ 252 1.1 christos 253 1.1 christos /* File for dhclient process information. */ 254 1.1 christos /* #undef _PATH_DHCLIENT_PID */ 255 1.1 christos 256 1.1 christos /* File for dhcpd6 leases. */ 257 1.1 christos /* #undef _PATH_DHCPD6_DB */ 258 1.1 christos 259 1.1 christos /* File for dhcpd6 process information. */ 260 1.1 christos /* #undef _PATH_DHCPD6_PID */ 261 1.1 christos 262 1.1 christos /* File for dhcpd leases. */ 263 1.1 christos /* #undef _PATH_DHCPD_DB */ 264 1.1 christos 265 1.1 christos /* File for dhcpd process information. */ 266 1.1 christos /* #undef _PATH_DHCPD_PID */ 267 1.1 christos 268 1.1 christos /* File for dhcrelay6 process information. */ 269 1.1 christos /* #undef _PATH_DHCRELAY6_PID */ 270 1.1 christos 271 1.1 christos /* File for dhcrelay process information. */ 272 1.1 christos /* #undef _PATH_DHCRELAY_PID */ 273 1.1 christos 274 1.1 christos /* Define to 2 if the system does not provide POSIX.1 features except with 275 1.1 christos this defined. */ 276 1.1 christos /* #undef _POSIX_1_SOURCE */ 277 1.1 christos 278 1.1 christos /* Define to 1 if you need to in order for `stat' and other things to work. */ 279 1.1 christos /* #undef _POSIX_SOURCE */ 280 1.1 christos 281 1.1 christos /* Define for Solaris 2.5.1 so the uint32_t typedef from <sys/synch.h>, 282 1.1 christos <pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the 283 1.1 christos #define below would cause a syntax error. */ 284 1.1 christos /* #undef _UINT32_T */ 285 1.1 christos 286 1.1 christos /* Define for Solaris 2.5.1 so the uint64_t typedef from <sys/synch.h>, 287 1.1 christos <pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the 288 1.1 christos #define below would cause a syntax error. */ 289 1.1 christos /* #undef _UINT64_T */ 290 1.1 christos 291 1.1 christos /* Define for Solaris 2.5.1 so the uint8_t typedef from <sys/synch.h>, 292 1.1 christos <pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the 293 1.1 christos #define below would cause a syntax error. */ 294 1.1 christos /* #undef _UINT8_T */ 295 1.1 christos 296 1.1 christos /* Define to the type of a signed integer type of width exactly 16 bits if 297 1.1 christos such a type exists and the standard includes do not define it. */ 298 1.1 christos /* #undef int16_t */ 299 1.1 christos 300 1.1 christos /* Define to the type of a signed integer type of width exactly 32 bits if 301 1.1 christos such a type exists and the standard includes do not define it. */ 302 1.1 christos /* #undef int32_t */ 303 1.1 christos 304 1.1 christos /* Define to the type of a signed integer type of width exactly 64 bits if 305 1.1 christos such a type exists and the standard includes do not define it. */ 306 1.1 christos /* #undef int64_t */ 307 1.1 christos 308 1.1 christos /* Define to the type of a signed integer type of width exactly 8 bits if such 309 1.1 christos a type exists and the standard includes do not define it. */ 310 1.1 christos /* #undef int8_t */ 311 1.1 christos 312 1.1 christos /* Define a type for 16-bit unsigned integers. */ 313 1.1 christos /* #undef u_int16_t */ 314 1.1 christos 315 1.1 christos /* Define a type for 32-bit unsigned integers. */ 316 1.1 christos /* #undef u_int32_t */ 317 1.1 christos 318 1.1 christos /* Define a type for 64-bit unsigned integers. */ 319 1.1 christos /* #undef u_int64_t */ 320 1.1 christos 321 1.1 christos /* Define a type for 8-bit unsigned integers. */ 322 1.1 christos /* #undef u_int8_t */ 323 1.1 christos 324 1.1 christos /* Define to the type of an unsigned integer type of width exactly 16 bits if 325 1.1 christos such a type exists and the standard includes do not define it. */ 326 1.1 christos /* #undef uint16_t */ 327 1.1 christos 328 1.1 christos /* Define to the type of an unsigned integer type of width exactly 32 bits if 329 1.1 christos such a type exists and the standard includes do not define it. */ 330 1.1 christos /* #undef uint32_t */ 331 1.1 christos 332 1.1 christos /* Define to the type of an unsigned integer type of width exactly 64 bits if 333 1.1 christos such a type exists and the standard includes do not define it. */ 334 1.1 christos /* #undef uint64_t */ 335 1.1 christos 336 1.1 christos /* Define to the type of an unsigned integer type of width exactly 8 bits if 337 1.1 christos such a type exists and the standard includes do not define it. */ 338 1.1 christos /* #undef uint8_t */ 339 1.2 christos 340 1.2 christos /* 341 1.2 christos * XXX: compat 342 1.2 christos */ 343 1.2 christos #include <stdbool.h> 344 1.2 christos #include <limits.h> 345 1.2 christos #define isc_boolean_t bool 346 1.2 christos #define ISC_TRUE true 347 1.2 christos #define ISC_FALSE false 348 1.2 christos #define isc_uint64_t uint64_t 349 1.2 christos #define isc_boolean_true true 350 1.2 christos #define isc_boolean_false false 351 1.2 christos #define ISC_UINT64_MAX UINT64_MAX 352