diff options
author | Luiz Otavio O Souza <luiz@netgate.com> | 2015-11-27 08:57:07 -0600 |
---|---|---|
committer | Luiz Otavio O Souza <luiz@netgate.com> | 2015-11-27 08:58:35 -0600 |
commit | 76153238bde48bba64e460b68d0d29ec8ba764a3 (patch) | |
tree | 8685eb1d45b888eeb8efe8e9df9f3c3019135138 /src/etc/inc/util.inc | |
parent | bb8e1db7ba526f15a84c0d49a3c9fe11ef523c24 (diff) | |
download | pfsense-76153238bde48bba64e460b68d0d29ec8ba764a3.zip pfsense-76153238bde48bba64e460b68d0d29ec8ba764a3.tar.gz |
Simplify get_configured_carp_interface_list().
No functional changes.
Diffstat (limited to 'src/etc/inc/util.inc')
-rw-r--r-- | src/etc/inc/util.inc | 91 |
1 files changed, 47 insertions, 44 deletions
diff --git a/src/etc/inc/util.inc b/src/etc/inc/util.inc index 8c6766b..fb00dcb 100644 --- a/src/etc/inc/util.inc +++ b/src/etc/inc/util.inc @@ -1041,51 +1041,54 @@ function get_configured_carp_interface_list($carpinterface = '', $family = 'inet $iflist = array(); - if (is_array($config['virtualip']['vip'])) { - $viparr = &$config['virtualip']['vip']; - foreach ($viparr as $vip) { - switch ($vip['mode']) { - case "carp": - if (!empty($carpinterface)) { - if ($carpinterface == "_vip{$vip['uniqid']}") { - switch ($what) { - case 'subnet': - if ($family == 'inet' && is_ipaddrv4($vip['subnet'])) { - return $vip['subnet_bits']; - } else if ($family == 'inet6' && is_ipaddrv6($vip['subnet'])) { - return $vip['subnet_bits']; - } - break; - case 'iface': - if ($family == 'inet' && is_ipaddrv4($vip['subnet'])) { - return $vip['interface']; - } else if ($family == 'inet6' && is_ipaddrv6($vip['subnet'])) { - return $vip['interface']; - } - break; - case 'vip': - if ($family == 'inet' && is_ipaddrv4($vip['subnet'])) { - return $vip; - } else if ($family == 'inet6' && is_ipaddrv6($vip['subnet'])) { - return $vip; - } - break; - case 'ip': - default: - if ($family == 'inet' && is_ipaddrv4($vip['subnet'])) { - return $vip['subnet']; - } else if ($family == 'inet6' && is_ipaddrv6($vip['subnet'])) { - return $vip['subnet']; - } - break; - } - } - } else { - $iflist["_vip{$vip['uniqid']}"] = $vip['subnet']; - } - break; - } + if (!is_array($config['virtualip']['vip']) || empty($config['virtualip']['vip'])) + return $iflist; + + $viparr = &$config['virtualip']['vip']; + foreach ($viparr as $vip) { + if ($vip['mode'] != "carp") + continue; + + if (empty($carpinterface)) { + $iflist["_vip{$vip['uniqid']}"] = $vip['subnet']; + continue; + } + + if ($carpinterface != "_vip{$vip['uniqid']}") + continue; + + switch ($what) { + case 'subnet': + if ($family == 'inet' && is_ipaddrv4($vip['subnet'])) { + return $vip['subnet_bits']; + } else if ($family == 'inet6' && is_ipaddrv6($vip['subnet'])) { + return $vip['subnet_bits']; + } + break; + case 'iface': + if ($family == 'inet' && is_ipaddrv4($vip['subnet'])) { + return $vip['interface']; + } else if ($family == 'inet6' && is_ipaddrv6($vip['subnet'])) { + return $vip['interface']; + } + break; + case 'vip': + if ($family == 'inet' && is_ipaddrv4($vip['subnet'])) { + return $vip; + } else if ($family == 'inet6' && is_ipaddrv6($vip['subnet'])) { + return $vip; + } + break; + case 'ip': + default: + if ($family == 'inet' && is_ipaddrv4($vip['subnet'])) { + return $vip['subnet']; + } else if ($family == 'inet6' && is_ipaddrv6($vip['subnet'])) { + return $vip['subnet']; + } + break; } + break; } return $iflist; |