summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbcyrill <cyrill@bannwart.info>2013-02-06 11:21:47 +0100
committerbcyrill <cyrill@bannwart.info>2013-02-06 11:21:47 +0100
commit6b207f739b20246d9b981a8a180ba7c746916cb6 (patch)
treef7925aaec30365d117635afb7b33ab1f245af8f9
parent614be0519197c7c1920bdf5f962d1d07f574725f (diff)
downloadpfsense-6b207f739b20246d9b981a8a180ba7c746916cb6.zip
pfsense-6b207f739b20246d9b981a8a180ba7c746916cb6.tar.gz
find_virtual_ip_alias() add IPv6 support
-rw-r--r--etc/inc/interfaces.inc8
1 files changed, 8 insertions, 0 deletions
diff --git a/etc/inc/interfaces.inc b/etc/inc/interfaces.inc
index e6a9d58..9424bda 100644
--- a/etc/inc/interfaces.inc
+++ b/etc/inc/interfaces.inc
@@ -3870,11 +3870,19 @@ function find_ip_interface($ip, $bits = null) {
*/
function find_virtual_ip_alias($ip, $bits = null) {
global $config;
+
if (!is_array($config['virtualip']['vip'])) {
return false;
}
+ if (!is_ipaddr($ip))
+ return false;
+
+ $isv6ip = is_ipaddrv6($ip);
+
foreach ($config['virtualip']['vip'] as $vip) {
if ($vip['mode'] === "ipalias") {
+ if (is_ipaddrv6($vip['subnet']) != $isv6ip)
+ continue;
if ($bits === null) {
if (ip_in_subnet($ip, $vip['subnet'] . "/" . $vip['subnet_bits'])) {
return $vip;
OpenPOWER on IntegriCloud