From b8ee8c43fd81988a58343da466999d2e30ae6221 Mon Sep 17 00:00:00 2001 From: Selva Nair Date: Wed, 22 Mar 2023 11:15:50 -0400 Subject: Make error in setting metric for IPv6 interface non-fatal - Unfortunately there are still users out there who disable IPv6 on tun/tap/dco interfaces or even system-wide. Github: fixes OpenVPN/openvpn#294 Signed-off-by: Selva Nair Acked-by: Gert Doering Message-Id: <20230322151550.1596669-1-selva.nair@gmail.com> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg26477.html Signed-off-by: Gert Doering --- src/openvpnserv/interactive.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'src/openvpnserv/interactive.c') diff --git a/src/openvpnserv/interactive.c b/src/openvpnserv/interactive.c index a3d4375..ec19627 100644 --- a/src/openvpnserv/interactive.c +++ b/src/openvpnserv/interactive.c @@ -847,8 +847,13 @@ AddBlockDNS(const block_dns_message_t *msg, undo_lists_t *lists) BLOCK_DNS_IFACE_METRIC); if (!err) { - err = set_interface_metric(msg->iface.index, AF_INET6, - BLOCK_DNS_IFACE_METRIC); + /* for IPv6, we intentionally ignore errors, because + * otherwise block-dns activation will fail if a user or + * admin has disabled IPv6 on the tun/tap/dco interface + * (if OpenVPN wants IPv6 ifconfig, we'll fail there) + */ + set_interface_metric(msg->iface.index, AF_INET6, + BLOCK_DNS_IFACE_METRIC); } if (err) { -- cgit v1.1