Skip to content
Snippets Groups Projects
Unverified Commit 17405e70 authored by john-metabase's avatar john-metabase Committed by GitHub
Browse files

Adds logic and test for default SSH tunnel port (#32235)

parent a5a944c4
Branches
Tags
No related merge requests found
......@@ -31,6 +31,10 @@
(set! *warn-on-reflection* true)
(def default-ssh-tunnel-port
"The default port for SSH tunnels (22) used if no port is specified"
22)
(def ^:private ^Long default-ssh-timeout 30000)
(def ^:private ^SshClient client
......@@ -63,7 +67,8 @@
[{:keys [^String tunnel-host ^Integer tunnel-port ^String tunnel-user tunnel-pass tunnel-private-key
tunnel-private-key-passphrase host port]}]
{:pre [(integer? port)]}
(let [^ConnectFuture conn-future (.connect client tunnel-user tunnel-host tunnel-port)
(let [^Integer tunnel-port (or tunnel-port default-ssh-tunnel-port)
^ConnectFuture conn-future (.connect client tunnel-user tunnel-host tunnel-port)
^SessionHolder conn-status (.verify conn-future default-ssh-timeout)
hb-sec (ssh-heartbeat-interval-sec)
session (doto ^ClientSession (.getSession conn-status)
......
......@@ -190,6 +190,15 @@
:host "127.0.0.1"
:port 1234}))))
(deftest connects-with-default-tunnel-port-test
(with-redefs [ssh/default-ssh-tunnel-port ssh-mock-server-with-password-port]
(#'ssh/start-ssh-tunnel!
{:tunnel-user ssh-username
:tunnel-host "127.0.0.1"
:tunnel-pass ssh-password
:host "127.0.0.1"
:port 1234})))
(deftest ssh-tunnel-works
(testing "ssh tunnel can properly tunnel"
(with-open [server (doto (ServerSocket. 0) ; 0 -- let ServerSocket pick a random port
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment