summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorMatt Delaney <matthew.l.delaney@gmail.com>2015-05-26 10:21:06 -0600
committerMatt Delaney <delaney@tubularlabs.com>2016-09-10 17:17:10 -0700
commit21d971a74d674aaa6cfd64454061d957dfccecc7 (patch)
treedb9e76de4ecf8a96bfe9b7efed80a3d7d941aeed /lib
parent5b668d5ef34102c9ac159a8f21c889fdc7f99f1b (diff)
downloadnet-ssh-multi-21d971a74d674aaa6cfd64454061d957dfccecc7.tar.gz
Fixed host parsing to work with ipv6 addresses
can now put [ ] around the ip address, without this ipv6 addresses that are like 2605:fd00:4:1000:f816:3eff:fe33:4679 would be have '4679' be interpreted as a port number.
Diffstat (limited to 'lib')
-rw-r--r--lib/net/ssh/multi/server.rb2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/net/ssh/multi/server.rb b/lib/net/ssh/multi/server.rb
index f8fa552..77c5948 100644
--- a/lib/net/ssh/multi/server.rb
+++ b/lib/net/ssh/multi/server.rb
@@ -44,7 +44,7 @@ module Net; module SSH; module Multi
@master = master
@options = options.dup
- @user, @host, port = host.match(/^(?:([^;,:=]+)@|)(.*?)(?::(\d+)|)$/)[1,3]
+ @user, @host, port = host.match(/^(?:([^;,:=]+)@|)\[?(.*?)\]?(?::(\d+)|)$/)[1,3]
user_opt, port_opt = @options.delete(:user), @options.delete(:port)