diff options
author | Ermal <eri@pfsense.org> | 2010-12-09 20:42:41 +0000 |
---|---|---|
committer | Ermal <eri@pfsense.org> | 2010-12-09 20:42:41 +0000 |
commit | 68ef6e03bdc11b04ca01a78995f8ee79f9388219 (patch) | |
tree | fd49c4007aef4b362641e8d8eefcb636c60daefa /etc/inc | |
parent | 8c3450c7ce81e38d3d79f5d552ba9a5bf4033079 (diff) | |
download | pfsense-68ef6e03bdc11b04ca01a78995f8ee79f9388219.zip pfsense-68ef6e03bdc11b04ca01a78995f8ee79f9388219.tar.gz |
Teach convert_friendly_interface_to_friendly_descr about carp vips. This helps cases like Ticket #1086.
Diffstat (limited to 'etc/inc')
-rw-r--r-- | etc/inc/interfaces.inc | 54 |
1 files changed, 32 insertions, 22 deletions
diff --git a/etc/inc/interfaces.inc b/etc/inc/interfaces.inc index 5b3cc54..4636c3e 100644 --- a/etc/inc/interfaces.inc +++ b/etc/inc/interfaces.inc @@ -2771,22 +2771,22 @@ function convert_friendly_interface_to_friendly_descr($interface) { global $config; switch ($interface) { - case "l2tp": - $ifdesc = "L2TP"; - break; - case "pptp": - $ifdesc = "PPTP"; - break; - case "pppoe": - $ifdesc = "PPPoE"; - break; - case "openvpn": - $ifdesc = "OpenVPN"; - break; - case "enc0": - case "ipsec": - $ifdesc = "IPsec"; - break; + case "l2tp": + $ifdesc = "L2TP"; + break; + case "pptp": + $ifdesc = "PPTP"; + break; + case "pppoe": + $ifdesc = "PPPoE"; + break; + case "openvpn": + $ifdesc = "OpenVPN"; + break; + case "enc0": + case "ipsec": + $ifdesc = "IPsec"; + break; default: if (isset($config['interfaces'][$interface])) { if (empty($config['interfaces'][$interface]['descr'])) @@ -2794,13 +2794,23 @@ function convert_friendly_interface_to_friendly_descr($interface) { else $ifdesc = strtoupper($config['interfaces'][$interface]['descr']); break; + } else if (substr($interface, 0, 3) == "vip") { + if (is_array($config['virtualip']['vip'])) { + foreach ($config['virtualip']['vip'] as $counter => $vip) { + if ($vip['mode'] == "carpdev-dhcp" || $vip['mode'] == "carp") { + if ($interface == "vip{$vip['vhid']}") + return "{$vip['subnet']} - {$vip['descr']}"; + } + } + } + } else { + /* if list */ + $ifdescrs = get_configured_interface_with_descr(false, true); + foreach ($ifdescrs as $if => $ifname) { + if ($if == $interface || $ifname == $interface) + return $ifname; + } } - /* if list */ - $ifdescrs = get_configured_interface_with_descr(false, true); - foreach ($ifdescrs as $if => $ifname) { - if ($if == $interface || $ifname == $interface) - return $ifname; - } break; } |