From 8fdcbdc6af75e2644e61fe8e619c01573ee3a1f9 Mon Sep 17 00:00:00 2001 From: mariusSincovici Date: Tue, 6 Feb 2024 10:50:03 +0100 Subject: [PATCH] Check for nil inside the Tun function and return nil when needed (#254) Signed-off-by: Marius Sincovici --- daemon/vpn/nordlynx/libtelio/libtelio.go | 6 +++++- daemon/vpn/openvpn/openvpn.go | 5 ++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/daemon/vpn/nordlynx/libtelio/libtelio.go b/daemon/vpn/nordlynx/libtelio/libtelio.go index 14c01b56..53c29a33 100644 --- a/daemon/vpn/nordlynx/libtelio/libtelio.go +++ b/daemon/vpn/nordlynx/libtelio/libtelio.go @@ -331,7 +331,11 @@ func (l *Libtelio) State() vpn.State { func (l *Libtelio) Tun() tunnel.T { l.mu.Lock() defer l.mu.Unlock() - return l.tun + if l.tun != nil { + return l.tun + } + + return nil } // Enable initiates the tunnel if it is not initiated yet. It can be diff --git a/daemon/vpn/openvpn/openvpn.go b/daemon/vpn/openvpn/openvpn.go index 73a49caa..ff862a1a 100644 --- a/daemon/vpn/openvpn/openvpn.go +++ b/daemon/vpn/openvpn/openvpn.go @@ -291,7 +291,10 @@ func (ovpn *OpenVPN) setTun(tun tunnel.Tunnel) { func (ovpn *OpenVPN) Tun() tunnel.T { ovpn.Lock() defer ovpn.Unlock() - return ovpn.tun + if ovpn.tun != nil { + return ovpn.tun + } + return nil } func (ovpn *OpenVPN) setState(arg string) {