summaryrefslogtreecommitdiffstats
path: root/etc/inc/interfaces.inc
diff options
context:
space:
mode:
authorErmal <eri@pfsense.org>2013-03-19 16:28:06 +0000
committerErmal <eri@pfsense.org>2013-03-19 16:28:06 +0000
commit1af4f4e0223a20281160cbd851c4142ab030832d (patch)
tree10f074f877403cca194b09ae09e31b29283499d6 /etc/inc/interfaces.inc
parent673c2f8b82066f44b603b9dbb22030c519ad069b (diff)
downloadpfsense-1af4f4e0223a20281160cbd851c4142ab030832d.zip
pfsense-1af4f4e0223a20281160cbd851c4142ab030832d.tar.gz
Bring down even rtsold process
Diffstat (limited to 'etc/inc/interfaces.inc')
-rw-r--r--etc/inc/interfaces.inc15
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;
OpenPOWER on IntegriCloud