diff options
author | smos <seth.mos@dds.nl> | 2011-09-01 08:40:14 +0200 |
---|---|---|
committer | smos <seth.mos@dds.nl> | 2011-09-01 08:41:16 +0200 |
commit | 1a40ed8ad8817ced94b2b5af4f05ae5311667456 (patch) | |
tree | c3950c403d85d0afa0cf556efa15bec6dc4d3da9 | |
parent | 4ddbdfc17bc3844b51a0160f2fa96e5f52178fd0 (diff) | |
download | pfsense-1a40ed8ad8817ced94b2b5af4f05ae5311667456.zip pfsense-1a40ed8ad8817ced94b2b5af4f05ae5311667456.tar.gz |
Fix system_routing_configure() so that that it also passes the interface scope with the IPv6 address on route changes. This is required for link local gateways to work.
-rw-r--r-- | etc/inc/system.inc | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/etc/inc/system.inc b/etc/inc/system.inc index bc62e24..9b3151a 100644 --- a/etc/inc/system.inc +++ b/etc/inc/system.inc @@ -338,9 +338,6 @@ function system_routing_configure($interface = "") { echo "system_routing_configure() being called $mt\n"; } - /* configure gif interfaces for ipv6 tunnels */ - // interfaces_gif_configure(); - $gatewayip = ""; $interfacegw = ""; $foundgw = false; @@ -369,7 +366,7 @@ function system_routing_configure($interface = "") { } foreach ($config['gateways']['gateway_item'] as $gateway) { if (isset($gateway['defaultgw']) && (is_ipaddrv6($gateway['gateway']))) { - if ($gateway['gateway'] == "dynamic") + if ($gateway['gateway'] == "dynamic6") $gateway['gateway'] = get_interface_gateway_v6($gateway['interface']); $gatewayipv6 = $gateway['gateway']; $interfacegwv6 = $gateway['interface']; @@ -417,8 +414,8 @@ function system_routing_configure($interface = "") { if (!empty($interface) && $interface != $interfacegwv6) ; else if (($interfacegwv6 <> "bgpd") && (is_ipaddrv6($gatewayipv6))) { - log_error("ROUTING: setting IPv6 default route to $gatewayipv6"); - mwexec("/sbin/route change -inet6 default " . escapeshellarg($gatewayipv6)); + log_error("ROUTING: setting IPv6 default route to {$gatewayipv6}%{$defaultifv6}"); + mwexec("/sbin/route change -inet6 default " . escapeshellarg($gatewayipv6) ."%". escapeshellarg($defaultifv6)); } } |