Attention is currently required from: cron2, flichtenheld, plaisthos, stipa.
cron2 has uploaded a new patch set (#2) to the change originally created by stipa. ( http://gerrit.openvpn.net/c/openvpn/+/1248?usp=email ) The following approvals got outdated and were removed: Code-Review+2 by cron2 The change is no longer submittable: Code-Review and checks~ChecksSubmitRule are unsatisfied now. Change subject: Preserve ifconfig(_ipv6)_local across reconnect ...................................................................... Preserve ifconfig(_ipv6)_local across reconnect Turns out that ifconfig_(ipv6)_local options are set once and are not reset on a reconnect. Consider following scenario: - connect first time, server pushes ifconfig-ipv6 - add a ipv6 network route because ifconfig_ipv6_local is set - reconnect, server doesn't push ifconfig-ipv6 Because of ifconfig_ipv6_local is not reset and holds the value set by the first connect, client adds a ipv6 network route - but this is wrong, since ipv6 wasn't pushed this time by the server. Fix by saving/restoring ifconfig(_ipv6)_local in a struct options_pre_connect along with other options which preserves the initial values until --pull modifications are applied. Github: OpenVPN/openvpn#850 Change-Id: I9b099924286f9bccb6833e1e40606abe72714bbb Signed-off-by: Lev Stipakov <[email protected]> --- M src/openvpn/options.c M src/openvpn/options.h 2 files changed, 9 insertions(+), 0 deletions(-) git pull ssh://gerrit.openvpn.net:29418/openvpn refs/changes/48/1248/2 diff --git a/src/openvpn/options.c b/src/openvpn/options.c index f35738d..d1ce551 100644 --- a/src/openvpn/options.c +++ b/src/openvpn/options.c @@ -3143,6 +3143,9 @@ o->pre_connect->client_nat_defined = true; } + o->pre_connect->ifconfig_local = o->ifconfig_local; + o->pre_connect->ifconfig_ipv6_local = o->ifconfig_ipv6_local; + o->pre_connect->route_default_gateway = o->route_default_gateway; o->pre_connect->route_ipv6_default_gateway = o->route_ipv6_default_gateway; @@ -3193,6 +3196,9 @@ o->routes_ipv6 = NULL; } + o->ifconfig_local = pp->ifconfig_local; + o->ifconfig_ipv6_local = pp->ifconfig_ipv6_local; + o->route_default_gateway = pp->route_default_gateway; o->route_ipv6_default_gateway = pp->route_ipv6_default_gateway; diff --git a/src/openvpn/options.h b/src/openvpn/options.h index b033068..445fd25 100644 --- a/src/openvpn/options.h +++ b/src/openvpn/options.h @@ -64,6 +64,9 @@ bool tuntap_options_defined; struct tuntap_options tuntap_options; + const char *ifconfig_local; + const char *ifconfig_ipv6_local; + bool routes_defined; struct route_option_list *routes; -- To view, visit http://gerrit.openvpn.net/c/openvpn/+/1248?usp=email To unsubscribe, or for help writing mail filters, visit http://gerrit.openvpn.net/settings?usp=email Gerrit-MessageType: newpatchset Gerrit-Project: openvpn Gerrit-Branch: master Gerrit-Change-Id: I9b099924286f9bccb6833e1e40606abe72714bbb Gerrit-Change-Number: 1248 Gerrit-PatchSet: 2 Gerrit-Owner: stipa <[email protected]> Gerrit-Reviewer: cron2 <[email protected]> Gerrit-Reviewer: flichtenheld <[email protected]> Gerrit-Reviewer: plaisthos <[email protected]> Gerrit-CC: openvpn-devel <[email protected]> Gerrit-Attention: plaisthos <[email protected]> Gerrit-Attention: cron2 <[email protected]> Gerrit-Attention: flichtenheld <[email protected]> Gerrit-Attention: stipa <[email protected]>
_______________________________________________ Openvpn-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/openvpn-devel
