diff options
author | Gert Doering | 2023-03-06 09:07:44 +0100 |
---|---|---|
committer | Gert Doering | 2023-03-08 13:52:55 +0100 |
commit | b48298ac510abd000f65fe935a2d1cf7c25ecbf3 (patch) | |
tree | 1647601a8150b74cefd4d054b38e168a2fcacddf | |
parent | 202a934fc32673ef865b5cbcb23ad6057ceb2e0b (diff) | |
download | openvpn-b48298ac510abd000f65fe935a2d1cf7c25ecbf3.zip openvpn-b48298ac510abd000f65fe935a2d1cf7c25ecbf3.tar.gz |
FreeBSD 12.x workaround for IPv6 ifconfig is needed on 12.4 as well
Commit 16d7f2cd4d90 tried to remove an FreeBSD 12.x ifconfig inet6
workaround based on the understanding that the upstream fix for
bug 248172 went into 12.4, but that was a misread of the code - 12.4
needs the workaround as well, fixed in 13.0.
Also extend comment to point to /etc/network.subr, which is the real
source of the problematic code
if checkyesno ipv6_activate_all_interfaces; then
_ipv6_opts="-ifdisabled"
elif [ "$1" != "lo0" ]; then <<<<
_ipv6_opts="ifdisabled" <<<<
fi
Trac: 1226
Signed-off-by: Gert Doering <gert@greenie.muc.de>
Acked-by: Arne Schwabe <arne@rfc2549.org>
Message-Id: <20230306080744.66069-1-gert@greenie.muc.de>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg26335.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
(cherry picked from commit 549fbd83f9d445863cc62b3a658a406afacdaeac)
-rw-r--r-- | src/openvpn/tun.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/openvpn/tun.c b/src/openvpn/tun.c index 8703327..2ebe480 100644 --- a/src/openvpn/tun.c +++ b/src/openvpn/tun.c @@ -1105,11 +1105,11 @@ do_ifconfig_ipv6(struct tuntap *tt, const char *ifname, int tun_mtu, "generic BSD ifconfig inet6 failed"); #if defined(TARGET_FREEBSD) && __FreeBSD_version >= 1200000 \ - && __FreeBSD_version < 1204000 - /* On FreeBSD 12.0-12.3, there is ipv6_activate_all_interfaces="YES" + && __FreeBSD_version < 1300000 + /* On FreeBSD 12.0-12.4, there is ipv6_activate_all_interfaces="YES" * in rc.conf, which is not set by default. If it is *not* set, * "all new interfaces that are not already up" are configured by - * devd + /etc/pccard_ether as "inet6 ifdisabled". + * devd -> /etc/pccard_ether -> /etc/network.subr as "inet6 ifdisabled". * * The "is this interface already up?" test is a non-zero time window * which we manage to hit with our ifconfig often enough to cause |