summaryrefslogtreecommitdiffstats
path: root/etc/inc
diff options
context:
space:
mode:
authorErmal <eri@pfsense.org>2010-06-04 15:57:08 +0000
committerErmal <eri@pfsense.org>2010-06-04 15:57:08 +0000
commit956950dea4f933af197b061b5e32a527544e375c (patch)
tree30567961663a07296a5b9ce76d29193067b139b3 /etc/inc
parent922693e929f4589d719a58bfd4986d8a1572debb (diff)
downloadpfsense-956950dea4f933af197b061b5e32a527544e375c.zip
pfsense-956950dea4f933af197b061b5e32a527544e375c.tar.gz
Fixes #374. Actually reload teh dhcpleases utility whenever the hosts files is regenerated to avoid problems.
Diffstat (limited to 'etc/inc')
-rw-r--r--etc/inc/services.inc23
-rw-r--r--etc/inc/system.inc13
2 files changed, 13 insertions, 23 deletions
diff --git a/etc/inc/services.inc b/etc/inc/services.inc
index 013351b..94f69cd 100644
--- a/etc/inc/services.inc
+++ b/etc/inc/services.inc
@@ -38,26 +38,6 @@
pfSense_MODULE: utils
*/
-function services_parse_dhcpd_hostnames() {
- global $g, $config;
-
- // Launch if option enabled
- if (isset($config['dnsmasq']['regdhcp'])) {
- /* Make sure we do not error out */
- @touch("{$g['dhcpd_chroot_path']}/var/db/dhcpd.leases");
- if (!file_exists("{$g['varetc_path']}/hosts"))
- system_hosts_generate();
- if (file_exists("{$g['varrun_path']}/dhcpleases.pid"))
- sigkillbypid("{$g['varrun_path']}/dhcpleases.pid", "HUP");
- else
- mwexec("/usr/local/sbin/dhcpleases -l {$g['dhcpd_chroot_path']}/var/db/dhcpd.leases -d {$config['system']['domain']} -p {$g['varrun_path']}/dnsmasq.pid -h {$g['varetc_path']}/hosts");
- } else {
- sigkillbypid("{$g['varrun_path']}/dhcpleases.pid", "TERM");
- @unlink("{$g['varrun_path']}/dhcpleases.pid");
- }
-
-}
-
function services_dhcpd_configure() {
global $config, $g;
@@ -648,9 +628,6 @@ function services_dnsmasq_configure() {
$return = 1;
}
- // restart isc-dhcpd parser
- services_parse_dhcpd_hostnames();
-
return $return;
}
diff --git a/etc/inc/system.inc b/etc/inc/system.inc
index 75e3f6d..a7c3423 100644
--- a/etc/inc/system.inc
+++ b/etc/inc/system.inc
@@ -225,6 +225,19 @@ function system_hosts_generate() {
fwrite($fd, $hosts);
fclose($fd);
+ /* Start the monitoring process for dynamic dhcpclients. */
+ if (isset($config['dnsmasq']['regdhcp'])) {
+ /* Make sure we do not error out */
+ @touch("{$g['dhcpd_chroot_path']}/var/db/dhcpd.leases");
+ if (file_exists("{$g['varrun_path']}/dhcpleases.pid"))
+ sigkillbypid("{$g['varrun_path']}/dhcpleases.pid", "HUP");
+ else
+ mwexec("/usr/local/sbin/dhcpleases -l {$g['dhcpd_chroot_path']}/var/db/dhcpd.leases -d {$syscfg['domain']} -p {$g['varrun_path']}/dnsmasq.pid -h {$g['varetc_path']}/hosts");
+ } else {
+ sigkillbypid("{$g['varrun_path']}/dhcpleases.pid", "TERM");
+ @unlink("{$g['varrun_path']}/dhcpleases.pid");
+ }
+
return 0;
}
OpenPOWER on IntegriCloud