From 15032fd3d4fdb7786b681f0622af96a36db13b2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikl=C3=B3s=20Fazekas?= Date: Mon, 15 Mar 2021 12:03:09 +0100 Subject: Some debugging --- .github/workflows/ci.yml | 4 ++-- lib/net/ssh/service/forward.rb | 1 + test/integration/common.rb | 4 ---- test/integration/test_forward.rb | 19 ++++++++++++------- 4 files changed, 15 insertions(+), 13 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 60b1486..fde69ea 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -64,12 +64,12 @@ jobs: who am i ansible-playbook ./test/integration/playbook.yml -i "localhost," --become -c local -e 'no_rvm=true' -e 'myuser=runner' -e 'mygroup=runner' -e 'homedir=/home/runner' - name: Run Tests - run: bundle exec rake test + run: bundle exec ruby test/integration/test_forward.rb -n test_server_eof_should_be_handled_remote env: NET_SSH_RUN_INTEGRATION_TESTS: 1 CI: 1 - name: Run Tests (without ed25519) - run: bundle exec rake test + run: bundle exec ruby test/integration/test_forward.rb -n test_server_eof_should_be_handled_remote env: BUNDLE_GEMFILE: ./Gemfile.noed25519 NET_SSH_RUN_INTEGRATION_TESTS: 1 diff --git a/lib/net/ssh/service/forward.rb b/lib/net/ssh/service/forward.rb index bcffc67..382a10d 100644 --- a/lib/net/ssh/service/forward.rb +++ b/lib/net/ssh/service/forward.rb @@ -394,6 +394,7 @@ module Net raise Net::SSH::ChannelOpenFailed.new(1, "unknown request from remote forwarded connection on #{connected_address}:#{connected_port}") end + puts "REMOTE: #{remote.host} #{remote.port}" client = TCPSocket.new(remote.host, remote.port) info { "connected #{connected_address}:#{connected_port} originator #{originator_address}:#{originator_port}" } diff --git a/test/integration/common.rb b/test/integration/common.rb index 4741ede..684726a 100644 --- a/test/integration/common.rb +++ b/test/integration/common.rb @@ -113,10 +113,6 @@ module IntegrationTestHelpers with_lines_as_tempfile(config) do |path, pidpath| # puts "DEBUG - SSH LOG: #{path}-log.txt" raise "A leftover sshd is already running" if port_open?(port) -<<<<<<< HEAD - -======= ->>>>>>> 40c25c0d (Fix int test) pid = spawn('sudo', '/opt/net-ssh-openssh/sbin/sshd', '-D', '-f', path, '-p', port) # '-E', "#{path}-log.txt") sshpidfile = pidpath yield pid, port diff --git a/test/integration/test_forward.rb b/test/integration/test_forward.rb index 75ce62f..c7f38fc 100644 --- a/test/integration/test_forward.rb +++ b/test/integration/test_forward.rb @@ -418,7 +418,7 @@ class TestForward < ForwardTestBase def test_server_eof_should_be_handled_remote setup_ssh_env do message = "This is a small message!" - session = Net::SSH.start(*ssh_start_params) + session = Net::SSH.start(*ssh_start_params(verbose: :debug)) server = start_server do |client| client.write message client.close @@ -426,18 +426,23 @@ class TestForward < ForwardTestBase client_done = Queue.new got_remote_port = Queue.new local_port = server.addr[1] + puts "LOCAL PORT: #{local_port}" session.forward.remote(0, localhost, local_port, localhost) do |actual_remote_port| got_remote_port << actual_remote_port end session.loop(0.1) { got_remote_port.empty? } remote_port = got_remote_port.pop + puts "Remote port:#{remote_port}" Thread.start do - client = TCPSocket.new(localhost, remote_port) - data = client.read(4096) - client.close - client_done << data - rescue StandardError - client_done << $! + begin + client = TCPSocket.new(localhost, remote_port) + data = client.read(4096) + client.close + client_done << data + puts "Received: #{data}" + rescue StandardError + client_done << $! + end end Timeout.timeout(5) do session.loop(0.1) { client_done.empty? } -- cgit v1.2.1