diff options
author | Renato Botelho <garga@FreeBSD.org> | 2014-11-06 08:30:50 -0200 |
---|---|---|
committer | Renato Botelho <garga@FreeBSD.org> | 2014-11-06 08:30:50 -0200 |
commit | 3f6525c1ab0fd3f704ab8e23f935c475c3cbd16c (patch) | |
tree | 3fb77d769494ddc90665cfa22690a90e570230f1 /etc/inc/gwlb.inc | |
parent | e7752fc4ee8cd6384e51d45c61fa000cf2f195c0 (diff) | |
download | pfsense-3f6525c1ab0fd3f704ab8e23f935c475c3cbd16c.zip pfsense-3f6525c1ab0fd3f704ab8e23f935c475c3cbd16c.tar.gz |
Make sure srcip has scope when it's link-local. Should fix #3969
Diffstat (limited to 'etc/inc/gwlb.inc')
-rw-r--r-- | etc/inc/gwlb.inc | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/etc/inc/gwlb.inc b/etc/inc/gwlb.inc index e32bea0..35fde30 100644 --- a/etc/inc/gwlb.inc +++ b/etc/inc/gwlb.inc @@ -214,7 +214,11 @@ EOD; $gwifip = find_interface_ipv6($gateway['interface'], true); } } - + + /* Make sure srcip has scope defined when it's ll */ + if (is_linklocal($gwifip) && !strstr($gwifip, '%')) + $gwifip .= '%' . $gateway['interface']; + if (!is_ipaddrv6($gwifip)) continue; //Skip this target |