diff options
author | Ermal <eri@pfsense.org> | 2013-03-19 16:28:06 +0000 |
---|---|---|
committer | Ermal <eri@pfsense.org> | 2013-03-19 16:28:06 +0000 |
commit | 1af4f4e0223a20281160cbd851c4142ab030832d (patch) | |
tree | 10f074f877403cca194b09ae09e31b29283499d6 /etc | |
parent | 673c2f8b82066f44b603b9dbb22030c519ad069b (diff) | |
download | pfsense-1af4f4e0223a20281160cbd851c4142ab030832d.zip pfsense-1af4f4e0223a20281160cbd851c4142ab030832d.tar.gz |
Bring down even rtsold process
Diffstat (limited to 'etc')
-rw-r--r-- | etc/inc/interfaces.inc | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/etc/inc/interfaces.inc b/etc/inc/interfaces.inc index 9b79e4a..253e7d9 100644 --- a/etc/inc/interfaces.inc +++ b/etc/inc/interfaces.inc @@ -1199,6 +1199,9 @@ function interface_bring_down($interface = "wan", $destroy = false, $ifacecfg = $pidv6 = find_dhcp6c_process($realif); if($pidv6) posix_kill($pidv6, SIGTERM); + $pidv6 = find_rtsold_process($realif) + if($pidv6) + posix_kill($pidv6, SIGTERM); sleep(3); unlink_if_exists("{$g['varetc_path']}/dhcp6c_{$interface}.conf"); if (does_interface_exist("$realif")) { @@ -2688,6 +2691,18 @@ function find_dhclient_process($interface) { return intval($pid); } +function find_rtsold_process($interface) { + global $g; + + if ($interface) + if (isvalidpid("{$g['varrun_path']}/rtsold_{$interface}.pid")) + $pid = trim(file_get_contents("{$g['varrun_path']}/rtsold_{$interface}.pid"), " \n"); + else + return(false); + + return intval($pid); +} + function find_dhcp6c_process($interface) { global $g; |