]> git.ipfire.org Git - thirdparty/dhcp.git/blobdiff - includes/site.h
Revert last commit
[thirdparty/dhcp.git] / includes / site.h
index 80f6a837cc788140a9d999c1dbe95d9a021ea09b..2ef69e415e6aa6eb6d3589d3c7228953920de3b6 100644 (file)
 
 /* #define DEBUG_CLASS_MATCHING */
 
+/* Define this if you want to track memory usage for the purpose of
+   noticing memory leaks quickly. */
+
+/* #define DEBUG_MEMORY_LEAKAGE */
+/* #define DEBUG_MEMORY_LEAKAGE_ON_EXIT */
+
+/* Define this if you want exhaustive (and very slow) checking of the
+   malloc pool for corruption. */
+
+/* #define DEBUG_MALLOC_POOL */
+
+/* Define this if you want to see a message every time a lease's state
+   changes. */
+/* #define DEBUG_LEASE_STATE_TRANSITIONS */
+
+/* Define this if you want to maintain a history of the last N operations
+   that changed reference counts on objects.   This can be used to debug
+   cases where an object is dereferenced too often, or not often enough. */
+
+/* #define DEBUG_RC_HISTORY */
+
+/* Define this if you want to see the history every cycle. */
+
+/* #define DEBUG_RC_HISTORY_EXHAUSTIVELY */
+
+/* This is the number of history entries to maintain - by default, 256. */
+
+/* #define RC_HISTORY_MAX 10240 */
+
+/* Define this if you want dhcpd to dump core when a non-fatal memory
+   allocation error is detected (i.e., something that would cause a
+   memory leak rather than a memory smash). */
+
+/* #define POINTER_DEBUG */
+
+/* Define this if you want debugging output for DHCP failover protocol
+   messages. */
+
+/* #define DEBUG_FAILOVER_MESSAGES */
+
+/* Define this to include contact messages in failover message debugging.
+   The contact messages are sent once per second, so this can generate a
+   lot of log entries. */
+
+/* #define DEBUG_FAILOVER_CONTACT_MESSAGES */
+
+/* Define this if you want debugging output for DHCP failover protocol
+   event timeout timing. */
+
+/* #define DEBUG_FAILOVER_TIMING */
+
+/* Define this if you want to include contact message timing, which is
+   performed once per second and can generate a lot of log entries. */
+
+/* #define DEBUG_FAILOVER_CONTACT_TIMING */
+
+/* Define this if you want all leases written to the lease file, even if
+   they are free leases that have never been used. */
+
+/* #define DEBUG_DUMP_ALL_LEASES */
+
+/* Define this if you want to see the requests and replies between the
+   DHCP code and the DNS library code. */
+/* #define DEBUG_DNS_UPDATES */
+
+/* Define this if you want to debug the host part of the inform processing */
+/* #define DEBUG_INFORM_HOST */
+
+/* Define this if you want to debug the binary leases (lease_chain) code */
+/* #define DEBUG_BINARY_LEASES */
+
+/* Define this if you want to debug checksum calculations */
+/* #define DEBUG_CHECKSUM */
+
+/* Define this if you want to verbosely debug checksum calculations */
+/* #define DEBUG_CHECKSUM_VERBOSE */
+
+
+/* Define this if you want DHCP failover protocol support in the DHCP
+   server. */
+
+/* #define FAILOVER_PROTOCOL */
+
+/* Define this if you want DNS update functionality to be available. */
+
+#define NSUPDATE
+
+/* Define this if you want to enable the DHCP server attempting to
+   find a nameserver to use for DDNS updates. */
+#define DNS_ZONE_LOOKUP
+
 /* Define this if you want the dhcpd.pid file to go somewhere other than
    the default (which varies from system to system, but is usually either
    /etc or /var/run. */
    you don't choose, one will be chosen for you in your system's config
    header.    DON'T MESS WITH THIS UNLESS YOU KNOW WHAT YOU'RE DOING!!! */
 
-/* Define this to use the standard BSD socket API.
+/* Define USE_SOCKETS to use the standard BSD socket API.
 
    On many systems, the BSD socket API does not provide the ability to
    send packets to the 255.255.255.255 broadcast address, which can
 
 /* #define USE_RAW_SOCKETS */
 
+/* Define this to keep the old program name (e.g., "dhcpd" for
+   the DHCP server) in place of the (base) name the program was
+   invoked with. */
+
+/* #define OLD_LOG_NAME */
+
 /* Define this to change the logging facility used by dhcpd. */
 
 /* #define DHCPD_LOG_FACILITY LOG_DAEMON */
 
-/* Define this to support the failover protocol.   This probably won't work
-   right now. */
 
-/* #define FAILOVER_PROTOCOL */
+/* Define this if you want to be able to execute external commands
+   during conditional evaluation. */
+
+/* #define ENABLE_EXECUTE */
+
+/* Define this if you aren't debugging and you want to save memory
+   (potentially a _lot_ of memory) by allocating leases in chunks rather
+   than one at a time. */
+
+#define COMPACT_LEASES
+
+/* Define this if you want to be able to save and playback server operational
+   traces. */
+
+/* #define TRACING */
+
+/* Define this if you want the server to use the previous behavior
+   when determining the DDNS TTL.  If the user has specified a ddns-ttl
+   option that is used to detemine the ttl.  (If the user specifies
+   an option that references the lease structure it is only usable
+   for v4.  In that case v6 will use the default.) Otherwise when
+   defined the defaults are: v4 - 1/2 the lease time,
+   v6 - DEFAULT_DDNS_TTL.  When undefined the defaults are 1/2 the
+   (preferred) lease time for both but with a cap on the maximum. */
+
+/* #define USE_OLD_DDNS_TTL */
+
+/* Define this if you want a DHCPv6 server to send replies to the
+   source port of the message it received.  This is useful for testing
+   but is only included for backwards compatibility. */
+/* #define REPLY_TO_SOURCE_PORT */
+
+/* Define this if you want to enable strict checks in DNS Updates mechanism.
+   Do not enable this unless are DHCP developer. */
+/* #define DNS_UPDATES_MEMORY_CHECKS */
+
+/* Define this if you want to allow domain list in domain-name option.
+   RFC2132 does not allow that behavior, but it is somewhat used due
+   to historic reasons. Note that it may be removed some time in the
+   future. */
+
+#define ACCEPT_LIST_IN_DOMAIN_NAME
+
+/* In previous versions of the code when the server generates a NAK
+   it doesn't attempt to determine if the configuration included a
+   server ID for that client.  Defining this option causes the server
+   to make a modest effort to determine the server id when building
+   a NAK as a response.  This effort will only check the first subnet
+   and pool associated with a shared subnet and will not check for
+   host declarations.  With some configurations the server id
+   computed for a NAK may not match that computed for an ACK. */
+
+#define SERVER_ID_FOR_NAK
+
+/* NOTE:  SERVER_ID_CHECK switch has been removed. Enabling server id
+ * checking is now done via the server-id-check statement. Please refer
+ * to the dhcpd manpage (server/dhcpd.conf.5) */
+
+/* Include code to do a slow transition of DDNS records
+   from the interim to the standard version, or backwards.
+   The normal code will handle removing an old style record
+   when the name on a lease is being changed.  This adds code
+   to handle the case where the name isn't being changed but
+   the old record should be removed to allow a new record to
+   be added.  This is the slow transition as leases are only
+   updated as a client touches them.  A fast transition would
+   entail updating all the records at once, probably at start
+   up. */
+#define DDNS_UPDATE_SLOW_TRANSITION
+
+/* Define the default prefix length passed from the client to
+   the script when modifying an IPv6 IA_NA or IA_TA address.
+   The two most useful values are 128 which is what the current
+   specifications call for or 64 which is what has been used in
+   the past.  For most OSes 128 will indicate that the address
+   is a host address and doesn't include any on-link information.
+   64 indicates that the first 64 bits are the subnet or on-link
+   prefix. */
+#define DHCLIENT_DEFAULT_PREFIX_LEN 128
+
+/* Enable the gentle shutdown signal handling.  Currently this
+   means that on SIGINT or SIGTERM a client will release its
+   address and a server in a failover pair will go through
+   partner down.  Both of which can be undesireable in some
+   situations.  We plan to revisit this feature and may
+   make non-backwards compatible changes including the
+   removal of this define.  Use at your own risk.  */
+/* #define ENABLE_GENTLE_SHUTDOWN */
+
+/* Include old error codes.  This is provided in case you
+   are building an external program similar to omshell for
+   which you need the ISC_R_* error codes.  You should switch
+   to DHCP_R_* error codes for those that have been defined
+   (see includes/omapip/result.h).  The extra defines and
+   this option will be removed at some time. */
+/* #define INCLUDE_OLD_DHCP_ISC_ERROR_CODES */
+
+/* Use the older factors for scoring a lease in the v6 client code.
+   The new factors cause the client to choose more bindings (IAs)
+   over more addresse within a binding.  Most uses will get a
+   single address in a single binding and only get an adverstise
+   from a single server and there won't be a difference. */
+/* #define USE_ORIGINAL_CLIENT_LEASE_WEIGHTS */
+
+/* Print out specific error messages for dhclient, dhcpd
+   or dhcrelay when processing an incorrect command line.  This
+   is included for those that might require the exact error
+   messages, as we don't expect that is necessary it is on by
+   default. */
+#define PRINT_SPECIFIC_CL_ERRORS
+
+/* Limit the value of a file descriptor the serve will use
+   when accepting a connecting request.  This can be used to
+   limit the number of TCP connections that the server will
+   allow at one time.  A value of 0 means there is no limit.*/
+#define MAX_FD_VALUE 200
+
+/* Enable EUI-64 Address assignment policy.  Instructs the server
+ * to use EUI-64 addressing instead of dynamic address allocation
+ * for IA_NA pools, if the parameter use-eui-64 is true for the
+ * pool.  Can be at all scopes down to the pool level.  Not
+ * supported by the configure script. */
+/* #define EUI_64 */
+
+/* Enable enforcement of the require option statement as documented
+ * in man page.  Instructs the dhclient, when in -6 mode, to discard
+ * offered leases that do not contain all options specified as required
+ * in the client's configuration file. The client already enforces this
+ * in -4 mode. */
+#define ENFORCE_DHCPV6_CLIENT_REQUIRE
+
+/* Enable the invocation of the client script with a FAIL state code
+ * by dhclient when running in one-try mode (-T) and the attempt to
+ * obtain the desired lease(s) fails. Applies to IPv4 mode only. */
+/* #define CALL_SCRIPT_ON_ONETRY_FAIL */
+
+/* Include definitions for various options.  In general these
+   should be left as is, but if you have already defined one
+   of these and prefer your definition you can comment the
+   RFC define out to avoid conflicts */
+#define RFC2563_OPTIONS
+#define RFC2937_OPTIONS
+#define RFC4776_OPTIONS
+#define RFC4578_OPTIONS
+#define RFC4833_OPTIONS
+#define RFC4994_OPTIONS
+#define RFC5071_OPTIONS
+#define RFC5192_OPTIONS
+#define RFC5223_OPTIONS
+#define RFC5417_OPTIONS
+#define RFC5460_OPTIONS
+#define RFC5859_OPTIONS
+#define RFC5969_OPTIONS
+#define RFC5970_OPTIONS
+#define RFC5986_OPTIONS
+#define RFC6011_OPTIONS
+#define RFC6011_OPTIONS
+#define RFC6153_OPTIONS
+#define RFC6334_OPTIONS
+#define RFC6440_OPTIONS
+#define RFC6731_OPTIONS
+#define RFC6939_OPTIONS
+#define RFC6977_OPTIONS
+#define RFC7083_OPTIONS
+#define RFC7341_OPTIONS
+#define RFC7618_OPTIONS
+#define RFC7710_OPTIONS