diff options
author | Scott Ullrich <sullrich@pfsense.org> | 2007-03-20 17:46:57 +0000 |
---|---|---|
committer | Scott Ullrich <sullrich@pfsense.org> | 2007-03-20 17:46:57 +0000 |
commit | 357cde414ef1825ee5fe2345ac93f6c434d2693a (patch) | |
tree | c3e55c86d9451333107ac126766ed7efa5627961 /etc | |
parent | 95594e5aadbed02594326ac7908138d46f2c5332 (diff) | |
download | pfsense-357cde414ef1825ee5fe2345ac93f6c434d2693a.zip pfsense-357cde414ef1825ee5fe2345ac93f6c434d2693a.tar.gz |
Add link_carp_interface_to_parent() function
Diffstat (limited to 'etc')
-rw-r--r-- | etc/inc/pfsense-utils.inc | 22 | ||||
-rw-r--r-- | etc/inc/vpn.inc | 7 |
2 files changed, 29 insertions, 0 deletions
diff --git a/etc/inc/pfsense-utils.inc b/etc/inc/pfsense-utils.inc index 076fa99..320b80b 100644 --- a/etc/inc/pfsense-utils.inc +++ b/etc/inc/pfsense-utils.inc @@ -479,6 +479,28 @@ function link_int_to_bridge_interface($int) { } } +function link_carp_interface_to_parent($interface) { + global $config; + if($interface == "") return; + + $ifdescrs = array('wan', 'lan'); + for ($j = 1; isset($config['interfaces']['opt' . $j]); $j++) + $ifdescrs['opt' . $j] = "opt" . $j; + + $carp_ints = ""; + $num_carp_ints = find_number_of_created_carp_interfaces(); + foreach ($ifdescrs as $ifdescr => $ifname) { + $carp_int = $interface; + $carp_ip = find_interface_ip($interface); + $carp_subnet = find_virtual_ip_netmask($carp_ip); + $starting_ip = gen_subnet("{$carp_ip}", "{$carp_subnet}"); + if(ip_in_subnet($starting_ip, "{$carp_ip}/{$carp_subnet}")) + if(!stristr($carp_ints, $carp_int)) + return $ifname; + } + return $carp_ints; +} + /****f* pfsense-utils/link_ip_to_carp_interface * NAME * link_ip_to_carp_interface - Find where a CARP interface links to. diff --git a/etc/inc/vpn.inc b/etc/inc/vpn.inc index 2ef2660..76f7161 100644 --- a/etc/inc/vpn.inc +++ b/etc/inc/vpn.inc @@ -232,6 +232,13 @@ function vpn_ipsec_configure($ipchg = false) { "{$sa}/{$sn} any -P in ipsec " . "{$tunnel['p2']['protocol']}/tunnel/{$tunnel['remote-gateway']}-" . "{$ep}/unique;\n"; + + if($tunnel['interface'] <> "wan") { + /* static route needed? */ + if(strstr("carp", $tunnel['interface'])) { + + } + } } fwrite($fd, $spdconf); |