From ee040b94c97f27e7b632a52637e9bad16b74f069 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Erik=20Hedenstr=C3=B6m?= <erik@hedenstroem.com>
Date: Fri, 4 Feb 2022 01:06:14 +0100
Subject: [PATCH] Made sure program exits if ssh fails

---
 ssh/tunnel.go | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/ssh/tunnel.go b/ssh/tunnel.go
index f5f363f..6f2e02e 100644
--- a/ssh/tunnel.go
+++ b/ssh/tunnel.go
@@ -4,6 +4,7 @@ import (
 	"io"
 	"log"
 	"net"
+	"os"
 
 	"golang.org/x/crypto/ssh"
 )
@@ -44,14 +45,14 @@ func (tunnel *SSHTunnel) Start() error {
 func (tunnel *SSHTunnel) forward(localConn net.Conn) {
 	serverConn, err := ssh.Dial("tcp", tunnel.Server.String(), tunnel.Config)
 	if err != nil {
-		tunnel.logf("server dial error: %s", err)
-		return
+		tunnel.logf("server dial %s error: %s", tunnel.Server, err)
+		os.Exit(-1)
 	}
 	tunnel.logf("connected to %s (1 of 2)\n", tunnel.Server.String())
 	remoteConn, err := serverConn.Dial("tcp", tunnel.Remote.String())
 	if err != nil {
-		tunnel.logf("remote dial error: %s", err)
-		return
+		tunnel.logf("remote dial %s error: %s", tunnel.Remote, err)
+		os.Exit(-1)
 	}
 	tunnel.logf("connected to %s (2 of 2)\n", tunnel.Remote.String())
 	copyConn := func(writer, reader net.Conn) {
-- 
GitLab