diff options
Diffstat (limited to 'pkg/vpn/openvpn.go')
-rw-r--r-- | pkg/vpn/openvpn.go | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/pkg/vpn/openvpn.go b/pkg/vpn/openvpn.go index a114980..ee0e2f7 100644 --- a/pkg/vpn/openvpn.go +++ b/pkg/vpn/openvpn.go @@ -265,7 +265,17 @@ func (b *Bitmask) StopVPN() error { b.obfsvpnProxy.Stop() b.obfsvpnProxy = nil } - return b.launch.openvpnStop() + b.stopFromManagement() + b.launch.openvpnStop() + return nil +} + +func (b *Bitmask) stopFromManagement() error { + if b.managementClient == nil { + return fmt.Errorf("No management connected") + } + b.managementClient.SendSignal("SIGTERM") + return nil } // Reconnect to the VPN |