From dca9eafb0eec2bc2c21522183b01217ad969d6cf Mon Sep 17 00:00:00 2001 From: Daniel Hoffend Date: Wed, 29 Jun 2016 00:46:10 +0200 Subject: [PATCH] Use a different delimiter for dpinger socket names Currently underscores are used to seperate gwifip, monitorip, etc, but underscors are also used in vlan subinterfaces like em0_vlan10 and therefore can't be used because the interface scope is appended to IPv6 link-local addresses. --- src/etc/inc/gwlb.inc | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/etc/inc/gwlb.inc b/src/etc/inc/gwlb.inc index cbdceb59cf..998319d12a 100644 --- a/src/etc/inc/gwlb.inc +++ b/src/etc/inc/gwlb.inc @@ -79,7 +79,7 @@ function running_dpinger_processes() { } foreach ($pidfiles as $pidfile) { - if (preg_match('/^dpinger_(.+)_([^_]+)_([^_]+)\.pid$/', + if (preg_match('/^dpinger_(.+)~([^~]+)~([^~]+)\.pid$/', basename($pidfile), $matches)) { $socket_file = preg_replace('/\.pid$/', '.sock', $pidfile); @@ -128,10 +128,10 @@ function start_dpinger($gateway) { $dpinger_defaults = return_dpinger_defaults(); - $pidfile = "{$g['varrun_path']}/dpinger_{$gateway['name']}_" . - "{$gateway['gwifip']}_{$gateway['monitor']}.pid"; - $socket = "{$g['varrun_path']}/dpinger_{$gateway['name']}_" . - "{$gateway['gwifip']}_{$gateway['monitor']}.sock"; + $pidfile = "{$g['varrun_path']}/dpinger_{$gateway['name']}~" . + "{$gateway['gwifip']}~{$gateway['monitor']}.pid"; + $socket = "{$g['varrun_path']}/dpinger_{$gateway['name']}~" . + "{$gateway['gwifip']}~{$gateway['monitor']}.sock"; $alarm_cmd = "{$g['etc_path']}/rc.gateway_alarm"; $params = "-S "; /* Log warnings via syslog */