public
Description: Pure Ruby implementation of an SSH (protocol 2) client
Homepage: http://rubyforge.org/projects/net-ssh
Clone URL: git://github.com/jamis/net-ssh.git
Search Repo:
only check for pending_writes if the IO responds to pending_write?. Don't 
let a shutdown or close failure cause an error on shutting down a 
forwarded port.
jamis (author)
Sun Mar 23 19:26:07 -0700 2008
commit  ee9a1bca32aa5eef6179ff5120930020359f66e6
tree    b2a48d4da58971f97e967823ef80f3e03450d917
parent  2230d8c6ca9cf78928f9bf4e336d029079471be3
...
152
153
154
155
 
156
157
158
...
152
153
154
 
155
156
157
158
0
@@ -152,7 +152,7 @@ module Net; module SSH; module Connection
0
       return false if block_given? && !yield(self)
0
 
0
       r = listeners.keys
0
- w = r.select { |w| w.pending_write? }
0
+ w = r.select { |w| w.respond_to?(:pending_write?) && w.pending_write? }
0
       ready_readers, ready_writers, = IO.select(r, w, nil, wait)
0
 
0
       (ready_readers || []).each do |reader|
...
83
84
85
86
87
 
 
88
89
90
...
83
84
85
 
 
86
87
88
89
90
0
@@ -83,8 +83,8 @@ module Net; module SSH; module Service
0
     # ssh.forward.cancel_local(1234, "0.0.0.0")
0
     def cancel_local(port, bind_address="127.0.0.1")
0
       socket = @local_forwarded_ports.delete([port, bind_address])
0
- socket.shutdown
0
- socket.close
0
+ socket.shutdown rescue nil
0
+ socket.close rescue nil
0
       session.stop_listening_to(socket)
0
     end
0
 

Comments

    No one has commented yet.