diff options
author | Chris Buechler <cmb@pfsense.org> | 2014-11-25 13:25:24 -0600 |
---|---|---|
committer | Chris Buechler <cmb@pfsense.org> | 2014-11-25 13:30:59 -0600 |
commit | 79f4c9700982022bb0ec7e5b380c93acbc5e875a (patch) | |
tree | d3e4c794552f6b9f547f04f07dfe34a3f398c724 /usr | |
parent | 2d2e466c2b5de70c7fe053ccb3d9de08e1b7d404 (diff) | |
download | pfsense-79f4c9700982022bb0ec7e5b380c93acbc5e875a.zip pfsense-79f4c9700982022bb0ec7e5b380c93acbc5e875a.tar.gz |
fix IPsec widget status display after recent changes broke it. Ticket #4045
Diffstat (limited to 'usr')
-rw-r--r-- | usr/local/www/widgets/widgets/ipsec.widget.php | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/usr/local/www/widgets/widgets/ipsec.widget.php b/usr/local/www/widgets/widgets/ipsec.widget.php index dcedf59..e510005 100644 --- a/usr/local/www/widgets/widgets/ipsec.widget.php +++ b/usr/local/www/widgets/widgets/ipsec.widget.php @@ -63,18 +63,23 @@ if (isset($config['ipsec']['phase1'])){?> ipsec_lookup_phase1($ph2ent,$ph1ent); if (!isset($ph1ent['disabled']) && !isset($ph2ent['disabled'])) { - if (is_array($ipsec_status['query']) && is_array($ipsec_status['query']['ikesalist']) && - is_array($ipsec_status['query']['ikesalist']['ikesa']) && - ipsec_phase1_status($ipsec_status['query']['ikesalist']['ikesa'], $ph1ent['ikeid'])) { - /* tunnel is up */ - $iconfn = "true"; - $activecounter++; - } else { - /* tunnel is down */ - $iconfn = "false"; - $inactivecounter++; + is_array($ipsec_status['query']['ikesalist']['ikesa'])) { + foreach ($ipsec_status['query']['ikesalist']['ikesa'] as $ikeid => $ikesa) { + if ($ph1ent['ikeid'] == substr($ikesa['peerconfig'], 3)) { + $ikeid = $ikesa['id']; + if (ipsec_phase1_status($ipsec_status['query']['ikesalist']['ikesa'], $ikeid)) { + /* tunnel is up */ + $iconfn = "true"; + $activecounter++; + } else { + /* tunnel is down */ + $iconfn = "false"; + $inactivecounter++; + } + } + } } $ipsec_detail_array[] = array('src' => convert_friendly_interface_to_friendly_descr($ph1ent['interface']), |