From fd23d0c28ff069a5e60ed9c10139f4babf15a1b4 Mon Sep 17 00:00:00 2001 From: Viktor Liu Date: Thu, 28 Mar 2024 18:12:25 +0100 Subject: [PATCH] Don't block on failed routing setup (#1768) --- client/internal/engine.go | 3 +-- client/internal/routemanager/systemops_linux.go | 8 ++++---- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/client/internal/engine.go b/client/internal/engine.go index 7f7b5ef55..046a6c944 100644 --- a/client/internal/engine.go +++ b/client/internal/engine.go @@ -261,8 +261,7 @@ func (e *Engine) Start() error { e.routeManager = routemanager.NewManager(e.ctx, e.config.WgPrivateKey.PublicKey().String(), e.wgInterface, e.statusRecorder, initialRoutes) if err := e.routeManager.Init(); err != nil { - e.close() - return fmt.Errorf("init route manager: %w", err) + log.Errorf("Failed to initialize route manager: %s", err) } e.routeManager.SetRouteChangeListener(e.mobileDep.NetworkChangeListener) diff --git a/client/internal/routemanager/systemops_linux.go b/client/internal/routemanager/systemops_linux.go index 3510f9553..83af5008a 100644 --- a/client/internal/routemanager/systemops_linux.go +++ b/client/internal/routemanager/systemops_linux.go @@ -45,10 +45,10 @@ type ruleParams struct { func getSetupRules() []ruleParams { return []ruleParams{ - {nbnet.NetbirdFwmark, NetbirdVPNTableID, netlink.FAMILY_V4, -1, true, -1, "add rule v4 netbird"}, - {nbnet.NetbirdFwmark, NetbirdVPNTableID, netlink.FAMILY_V6, -1, true, -1, "add rule v6 netbird"}, - {-1, syscall.RT_TABLE_MAIN, netlink.FAMILY_V4, -1, false, 0, "add rule with suppress prefixlen v4"}, - {-1, syscall.RT_TABLE_MAIN, netlink.FAMILY_V6, -1, false, 0, "add rule with suppress prefixlen v6"}, + {nbnet.NetbirdFwmark, NetbirdVPNTableID, netlink.FAMILY_V4, -1, true, -1, "rule v4 netbird"}, + {nbnet.NetbirdFwmark, NetbirdVPNTableID, netlink.FAMILY_V6, -1, true, -1, "rule v6 netbird"}, + {-1, syscall.RT_TABLE_MAIN, netlink.FAMILY_V4, -1, false, 0, "rule with suppress prefixlen v4"}, + {-1, syscall.RT_TABLE_MAIN, netlink.FAMILY_V6, -1, false, 0, "rule with suppress prefixlen v6"}, } }