summaryrefslogtreecommitdiffstats
path: root/src/openvpn/tun.c
diff options
context:
space:
mode:
authorGert Doering <gert@greenie.muc.de>2012-06-10 17:41:27 +0200
committerDavid Sommerseth <davids@redhat.com>2012-06-13 12:20:01 +0200
commitc37d9135a27b05ff9088ca6c349fca06de89444b (patch)
treece89162649f0b9d6aaff0f7e0ad770409e269efc /src/openvpn/tun.c
parentfe8a7f0cc25e6b9492bf0613025873c7a5f46ca5 (diff)
downloadopenvpn-c37d9135a27b05ff9088ca6c349fca06de89444b.tar.gz
openvpn-c37d9135a27b05ff9088ca6c349fca06de89444b.tar.xz
openvpn-c37d9135a27b05ff9088ca6c349fca06de89444b.zip
cleanup and redefine metric handling for IPv6 routes
"no metric set" is now stored as "-1" "metric 0" means "on-link route" (what the BSDs do) properly initialize metric value to "0" for on-link IPv6 net on BSDs Signed-off-by: Gert Doering <gert@greenie.muc.de> Acked-by: David Sommerseth <davids@redhat.com> Message-Id: 1339342891-28443-2-git-send-email-gert@greenie.muc.de URL: http://article.gmane.org/gmane.network.openvpn.devel/6710 Signed-off-by: David Sommerseth <davids@redhat.com>
Diffstat (limited to 'src/openvpn/tun.c')
-rw-r--r--src/openvpn/tun.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/openvpn/tun.c b/src/openvpn/tun.c
index c9edbb8..6cef942 100644
--- a/src/openvpn/tun.c
+++ b/src/openvpn/tun.c
@@ -600,6 +600,8 @@ void add_route_connected_v6_net(struct tuntap * tt,
r6.network = tt->local_ipv6;
r6.netbits = tt->netbits_ipv6;
r6.gateway = tt->local_ipv6;
+ r6.metric = 0; /* connected route */
+ r6.metric_defined = true;
add_route_ipv6 (&r6, tt, 0, es);
}
@@ -612,6 +614,8 @@ void delete_route_connected_v6_net(struct tuntap * tt,
r6.network = tt->local_ipv6;
r6.netbits = tt->netbits_ipv6;
r6.gateway = tt->local_ipv6;
+ r6.metric = 0; /* connected route */
+ r6.metric_defined = true;
delete_route_ipv6 (&r6, tt, 0, es);
}
#endif