Annotation of embedaddon/dhcp/includes/site.h, revision 1.1.1.1

1.1       misho       1: /* Site-specific definitions.
                      2: 
                      3:    For supported systems, you shouldn't need to make any changes here.
                      4:    However, you may want to, in order to deal with site-specific
                      5:    differences. */
                      6: 
                      7: /* Add any site-specific definitions and inclusions here... */
                      8: 
                      9: /* #include <site-foo-bar.h> */
                     10: /* #define SITE_FOOBAR */
                     11: 
                     12: /* Define this if you don't want dhcpd to run as a daemon and do want
                     13:    to see all its output printed to stdout instead of being logged via
                     14:    syslog().   This also makes dhcpd use the dhcpd.conf in its working
                     15:    directory and write the dhcpd.leases file there. */
                     16: 
                     17: /* #define DEBUG */
                     18: 
                     19: /* Define this to see what the parser is parsing.   You probably don't
                     20:    want to see this. */
                     21: 
                     22: /* #define DEBUG_TOKENS */
                     23: 
                     24: /* Define this to see dumps of incoming and outgoing packets.    This
                     25:    slows things down quite a bit... */
                     26: 
                     27: /* #define DEBUG_PACKET */
                     28: 
                     29: /* Define this if you want to see dumps of expression evaluation. */
                     30: 
                     31: /* #define DEBUG_EXPRESSIONS */
                     32: 
                     33: /* Define this if you want to see dumps of find_lease() in action. */
                     34: 
                     35: /* #define DEBUG_FIND_LEASE */
                     36: 
                     37: /* Define this if you want to see dumps of parsed expressions. */
                     38: 
                     39: /* #define DEBUG_EXPRESSION_PARSE */
                     40: 
                     41: /* Define this if you want to watch the class matching process. */
                     42: 
                     43: /* #define DEBUG_CLASS_MATCHING */
                     44: 
                     45: /* Define this if you want to track memory usage for the purpose of
                     46:    noticing memory leaks quickly. */
                     47: 
                     48: /* #define DEBUG_MEMORY_LEAKAGE */
                     49: /* #define DEBUG_MEMORY_LEAKAGE_ON_EXIT */
                     50: 
                     51: /* Define this if you want exhaustive (and very slow) checking of the
                     52:    malloc pool for corruption. */
                     53: 
                     54: /* #define DEBUG_MALLOC_POOL */
                     55: 
                     56: /* Define this if you want to see a message every time a lease's state
                     57:    changes. */
                     58: /* #define DEBUG_LEASE_STATE_TRANSITIONS */
                     59: 
                     60: /* Define this if you want to maintain a history of the last N operations
                     61:    that changed reference counts on objects.   This can be used to debug
                     62:    cases where an object is dereferenced too often, or not often enough. */
                     63: 
                     64: /* #define DEBUG_RC_HISTORY */
                     65: 
                     66: /* Define this if you want to see the history every cycle. */
                     67: 
                     68: /* #define DEBUG_RC_HISTORY_EXHAUSTIVELY */
                     69: 
                     70: /* This is the number of history entries to maintain - by default, 256. */
                     71: 
                     72: /* #define RC_HISTORY_MAX 10240 */
                     73: 
                     74: /* Define this if you want dhcpd to dump core when a non-fatal memory
                     75:    allocation error is detected (i.e., something that would cause a
                     76:    memory leak rather than a memory smash). */
                     77: 
                     78: /* #define POINTER_DEBUG */
                     79: 
                     80: /* Define this if you want debugging output for DHCP failover protocol
                     81:    messages. */
                     82: 
                     83: /* #define DEBUG_FAILOVER_MESSAGES */
                     84: 
                     85: /* Define this to include contact messages in failover message debugging.
                     86:    The contact messages are sent once per second, so this can generate a
                     87:    lot of log entries. */
                     88: 
                     89: /* #define DEBUG_FAILOVER_CONTACT_MESSAGES */
                     90: 
                     91: /* Define this if you want debugging output for DHCP failover protocol
                     92:    event timeout timing. */
                     93: 
                     94: /* #define DEBUG_FAILOVER_TIMING */
                     95: 
                     96: /* Define this if you want to include contact message timing, which is
                     97:    performed once per second and can generate a lot of log entries. */
                     98: 
                     99: /* #define DEBUG_FAILOVER_CONTACT_TIMING */
                    100: 
                    101: /* Define this if you want all leases written to the lease file, even if
                    102:    they are free leases that have never been used. */
                    103: 
                    104: /* #define DEBUG_DUMP_ALL_LEASES */
                    105: 
                    106: /* Define this if you want DHCP failover protocol support in the DHCP
                    107:    server. */
                    108: 
                    109: /* #define FAILOVER_PROTOCOL */
                    110: 
                    111: /* Define this if you want DNS update functionality to be available. */
                    112: 
                    113: #define NSUPDATE
                    114: 
                    115: /* Define this if you want the dhcpd.pid file to go somewhere other than
                    116:    the default (which varies from system to system, but is usually either
                    117:    /etc or /var/run. */
                    118: 
                    119: /* #define _PATH_DHCPD_PID     "/var/run/dhcpd.pid" */
                    120: 
                    121: /* Define this if you want the dhcpd.leases file (the dynamic lease database)
                    122:    to go somewhere other than the default location, which is normally
                    123:    /etc/dhcpd.leases. */
                    124: 
                    125: /* #define _PATH_DHCPD_DB      "/etc/dhcpd.leases" */
                    126: 
                    127: /* Define this if you want the dhcpd.conf file to go somewhere other than
                    128:    the default location.   By default, it goes in /etc/dhcpd.conf. */
                    129: 
                    130: /* #define _PATH_DHCPD_CONF    "/etc/dhcpd.conf" */
                    131: 
                    132: /* Network API definitions.   You do not need to choose one of these - if
                    133:    you don't choose, one will be chosen for you in your system's config
                    134:    header.    DON'T MESS WITH THIS UNLESS YOU KNOW WHAT YOU'RE DOING!!! */
                    135: 
                    136: /* Define USE_SOCKETS to use the standard BSD socket API.
                    137: 
                    138:    On many systems, the BSD socket API does not provide the ability to
                    139:    send packets to the 255.255.255.255 broadcast address, which can
                    140:    prevent some clients (e.g., Win95) from seeing replies.   This is
                    141:    not a problem on Solaris.
                    142: 
                    143:    In addition, the BSD socket API will not work when more than one
                    144:    network interface is configured on the server.
                    145: 
                    146:    However, the BSD socket API is about as efficient as you can get, so if
                    147:    the aforementioned problems do not matter to you, or if no other
                    148:    API is supported for your system, you may want to go with it. */
                    149: 
                    150: /* #define USE_SOCKETS */
                    151: 
                    152: /* Define this to use the Sun Streams NIT API.
                    153: 
                    154:    The Sun Streams NIT API is only supported on SunOS 4.x releases. */
                    155: 
                    156: /* #define USE_NIT */
                    157: 
                    158: /* Define this to use the Berkeley Packet Filter API.
                    159: 
                    160:    The BPF API is available on all 4.4-BSD derivatives, including
                    161:    NetBSD, FreeBSD and BSDI's BSD/OS.   It's also available on
                    162:    DEC Alpha OSF/1 in a compatibility mode supported by the Alpha OSF/1
                    163:    packetfilter interface. */
                    164: 
                    165: /* #define USE_BPF */
                    166: 
                    167: /* Define this to use the raw socket API.
                    168: 
                    169:    The raw socket API is provided on many BSD derivatives, and provides
                    170:    a way to send out raw IP packets.   It is only supported for sending
                    171:    packets - packets must be received with the regular socket API.
                    172:    This code is experimental - I've never gotten it to actually transmit
                    173:    a packet to the 255.255.255.255 broadcast address - so use it at your
                    174:    own risk. */
                    175: 
                    176: /* #define USE_RAW_SOCKETS */
                    177: 
                    178: /* Define this to change the logging facility used by dhcpd. */
                    179: 
                    180: /* #define DHCPD_LOG_FACILITY LOG_DAEMON */
                    181: 
                    182: 
                    183: /* Define this if you want to be able to execute external commands
                    184:    during conditional evaluation. */
                    185: 
                    186: /* #define ENABLE_EXECUTE */
                    187: 
                    188: /* Define this if you aren't debugging and you want to save memory
                    189:    (potentially a _lot_ of memory) by allocating leases in chunks rather
                    190:    than one at a time. */
                    191: 
                    192: #define COMPACT_LEASES
                    193: 
                    194: /* Define this if you want to be able to save and playback server operational
                    195:    traces. */
                    196: 
                    197: /* #define TRACING */
                    198: 
                    199: /* Define this if you want a DHCPv6 server to send replies to the
                    200:    source port of the message it received.  This is useful for testing
                    201:    but is only included for backwards compatibility. */
                    202: /* #define REPLY_TO_SOURCE_PORT */
                    203: 
                    204: /* Define this if you want to allow domain list in domain-name option.
                    205:    RFC2132 does not allow that behavior, but it is somewhat used due
                    206:    to historic reasons. Note that it may be removed some time in the
                    207:    future. */
                    208: 
                    209: #define ACCEPT_LIST_IN_DOMAIN_NAME
1.1.1.1 ! misho     210: 
        !           211: /* In RFC3315 section 17.2.2 stated that if the server was not going
        !           212:    to be able to assign any addresses to any IAs in a subsequent Request
        !           213:    from a client that the server should not include any IAs.  This
        !           214:    requirement was removed in an errata from August 2010.  Define the
        !           215:    following if you want the pre-errata version.  
        !           216:    You should only enable this option if you have clients that
        !           217:    require the original functionality. */
        !           218: 
        !           219: /* #define RFC3315_PRE_ERRATA_2010_08 */

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>