summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiklós Fazekas <mfazekas@szemafor.com>2021-03-15 12:03:09 +0100
committerMiklós Fazekas <mfazekas@szemafor.com>2021-08-04 08:06:19 +0200
commit15032fd3d4fdb7786b681f0622af96a36db13b2e (patch)
tree4e6806fc6c182792f1d736674bf703aee72cce0f
parent2aee307c7feadebc96c8baf5652fbc0bdd6edf1e (diff)
downloadnet-ssh-15032fd3d4fdb7786b681f0622af96a36db13b2e.tar.gz
Some debugging
-rw-r--r--.github/workflows/ci.yml4
-rw-r--r--lib/net/ssh/service/forward.rb1
-rw-r--r--test/integration/common.rb4
-rw-r--r--test/integration/test_forward.rb19
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? }