]> git.ipfire.org Git - thirdparty/openvpn.git/commit
Use lowest metric interface when multiple interfaces match a route
authorSelva Nair <selva.nair@gmail.com>
Wed, 24 Jan 2018 17:31:45 +0000 (12:31 -0500)
committerGert Doering <gert@greenie.muc.de>
Tue, 20 Feb 2018 12:37:51 +0000 (13:37 +0100)
commit3854d4040e0d6fd2a58292e8bb1c1fbae5c17bb1
tree306a586c163f3d5a21de6d738955476b54695e54
parentdb04bca6729e9fe1ea60f0b3bd0329244a6ed611
Use lowest metric interface when multiple interfaces match a route

Currently a route addition using IPAPI or service is skipped if the
route gateway is reachable by multiple interfaces. This changes that
to use the interface with lowest metric. Implemented by

(i)  Do not over-write the return value with TUN_ADAPTER_INDEX_INVALID in
     windows_route_find_if_index() if multiple interfaces match a route.
(ii) Select the interface with lowest metric in adapter_index_of_ip()
     instead of the first one found when multiple interfaces match.

Reported by Jan Just Keijser <janjust@nikhef.nl>

Signed-off-by: Selva Nair <selva.nair@gmail.com>
Tested-by: Jan Just Keijser <janjust@nikhef.nl>
Acked-by: Gert Doering <gert@greenie.muc.de>
Message-Id: <1516815105-17882-1-git-send-email-selva.nair@gmail.com>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg16347.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
src/openvpn/route.c
src/openvpn/tun.c