summaryrefslogtreecommitdiff
path: root/server/dhcpd.c
diff options
context:
space:
mode:
authorThomas Markwalder <tmark@isc.org>2014-12-08 14:56:40 -0500
committerThomas Markwalder <tmark@isc.org>2014-12-08 14:56:40 -0500
commit7116a34fc9b1fb307bcdca22e6963254289ecb80 (patch)
treef468426e1f01f8b71f50823e6cf7f6500a8a1b86 /server/dhcpd.c
parent2731a82c8369439178f0e1cc7de58f30f0fe8897 (diff)
downloadisc-dhcp-7116a34fc9b1fb307bcdca22e6963254289ecb80.tar.gz
[master] Replaced SERVER_ID_CHECK compile switch with runtime config parameter
Merges in rt37551.
Diffstat (limited to 'server/dhcpd.c')
-rw-r--r--server/dhcpd.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/server/dhcpd.c b/server/dhcpd.c
index 6747c209..ff5968c5 100644
--- a/server/dhcpd.c
+++ b/server/dhcpd.c
@@ -72,6 +72,7 @@ option server.ddns-rev-domainname = \"in-addr.arpa.\";";
#endif /* NSUPDATE */
int ddns_update_style;
int dont_use_fsync = 0; /* 0 = default, use fsync, 1 = don't use fsync */
+int server_id_check = 0; /* 0 = default, don't check server id, 1 = do check */
const char *path_dhcpd_conf = _PATH_DHCPD_CONF;
const char *path_dhcpd_db = _PATH_DHCPD_DB;
@@ -1078,6 +1079,14 @@ void postconf_initialization (int quiet)
log_error("Not using fsync() to flush lease writes");
}
+ oc = lookup_option(&server_universe, options, SV_SERVER_ID_CHECK);
+ if ((oc != NULL) &&
+ evaluate_boolean_option_cache(NULL, NULL, NULL, NULL, options, NULL,
+ &global_scope, oc, MDL)) {
+ log_info("Setting server-id-check true");
+ server_id_check = 1;
+ }
+
/* Don't need the options anymore. */
option_state_dereference(&options, MDL);
}