summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--etc/inc/pfsense-utils.inc7
-rw-r--r--usr/local/www/widgets/include/carp_status.inc2
-rw-r--r--usr/local/www/widgets/widgets/carp_status.widget.php11
3 files changed, 9 insertions, 11 deletions
diff --git a/etc/inc/pfsense-utils.inc b/etc/inc/pfsense-utils.inc
index 7ffbf24..a2cb02e 100644
--- a/etc/inc/pfsense-utils.inc
+++ b/etc/inc/pfsense-utils.inc
@@ -339,11 +339,8 @@ function convert_ip_to_network_format($ip, $subnet) {
* get_carp_interface_status($carpinterface): returns the status of a carp ip
*/
function get_carp_interface_status($carpinterface) {
- /* basically cache the contents of ifconfig statement
- to speed up this routine */
- global $carp_query;
- if($carp_query == "")
- $carp_query = split("\n", `/sbin/ifconfig $carpinterface | grep carp`);
+ $carp_query = "";
+ exec("/sbin/ifconfig $carpinterface | /usr/bin/grep -v grep | /usr/bin/grep carp:", $carp_query);
foreach($carp_query as $int) {
if(stristr($int, "MASTER"))
return "MASTER";
diff --git a/usr/local/www/widgets/include/carp_status.inc b/usr/local/www/widgets/include/carp_status.inc
index d2851d2..79d3c03 100644
--- a/usr/local/www/widgets/include/carp_status.inc
+++ b/usr/local/www/widgets/include/carp_status.inc
@@ -4,4 +4,4 @@
$carp_status_title = "Carp Status";
$carp_status_title_link = "carp_status.php";
-?> \ No newline at end of file
+?>
diff --git a/usr/local/www/widgets/widgets/carp_status.widget.php b/usr/local/www/widgets/widgets/carp_status.widget.php
index 7c98946..6399579 100644
--- a/usr/local/www/widgets/widgets/carp_status.widget.php
+++ b/usr/local/www/widgets/widgets/carp_status.widget.php
@@ -37,13 +37,14 @@ require_once("/usr/local/www/widgets/include/carp_status.inc");
if(is_array($config['virtualip']['vip'])) {
$carpint=0;
foreach($config['virtualip']['vip'] as $carp) {
- if ($carp['mode'] != "carp") continue;
+ if ($carp['mode'] != "carp")
+ continue;
$ipaddress = $carp['subnet'];
$password = $carp['password'];
- $netmask = $carp['subnet_bits'];
+ $netmask = $carp['subnet_bits'];
$vhid = $carp['vhid'];
$advskew = $carp['advskew'];
- $carp_int = find_carp_interface($ipaddress);
+ $carp_int = "vip{$vhid}";
$status = get_carp_interface_status($carp_int);
?>
<tr>
@@ -54,7 +55,7 @@ require_once("/usr/local/www/widgets/include/carp_status.inc");
</td>
<td width="70%" class="listr">
<?php
- if($status == "MASTER") {
+ if($status == "MASTER") {
echo "<img src='/themes/".$g['theme']."/images/icons/icon_pass.gif' title=\"$status\">";
} else if($status == "BACKUP") {
echo "<img src='/themes/".$g['theme']."/images/icons/icon_pass_d.gif' title=\"$status\">";
@@ -73,4 +74,4 @@ require_once("/usr/local/www/widgets/include/carp_status.inc");
<?php
}
?>
-</table> \ No newline at end of file
+</table>
OpenPOWER on IntegriCloud