summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-01-14 06:55:00 +0000
committerusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-01-14 06:55:00 +0000
commite6a5f817d613dbd40cf2d19cd0705a1b4c377538 (patch)
tree0e38c2d393104777c836c80036c0e9945098fb09
parentdd7f1cdfbd8215ee46c11175bfd2f4fd3569f34a (diff)
merge revision(s) 48534: [Backport #10412]
* lib/resolv.rb: fall back if canonicalization fails. Thanks Vit Ondruch for the patch! [ruby-core:65836] * test/resolv/test_dns.rb: test for patch git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@49245 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog7
-rw-r--r--lib/resolv.rb4
-rw-r--r--test/resolv/test_dns.rb14
-rw-r--r--version.h10
-rw-r--r--win32/win32.c2
5 files changed, 32 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index 1aea7c0968..8ea42388cd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Wed Jan 14 15:54:18 2015 Aaron Patterson <aaron@tenderlovemaking.com>
+
+ * lib/resolv.rb: fall back if canonicalization fails.
+ Thanks Vit Ondruch for the patch! [ruby-core:65836]
+
+ * test/resolv/test_dns.rb: test for patch
+
Fri Nov 28 16:43:20 2014 Eric Hodel <drbrain@segment7.net>
* lib/net/http.rb: Do not attempt SSL session resumption when the
diff --git a/lib/resolv.rb b/lib/resolv.rb
index 53bfd54a11..a302d8a6af 100644
--- a/lib/resolv.rb
+++ b/lib/resolv.rb
@@ -1039,6 +1039,10 @@ class Resolv
candidates = []
end
candidates.concat(@search.map {|domain| Name.new(name.to_a + domain)})
+ fname = Name.create("#{name}.")
+ if !candidates.include?(fname)
+ candidates << fname
+ end
end
return candidates
end
diff --git a/test/resolv/test_dns.rb b/test/resolv/test_dns.rb
index 07396fb177..4d83d88a17 100644
--- a/test/resolv/test_dns.rb
+++ b/test/resolv/test_dns.rb
@@ -23,6 +23,20 @@ class TestResolvDNS < Test::Unit::TestCase
end
end
+ # [ruby-core:65836]
+ def test_resolve_with_2_ndots
+ conf = Resolv::DNS::Config.new :nameserver => ['127.0.0.1'], :ndots => 2
+ assert conf.single?
+
+ candidates = []
+ conf.resolv('example.com') { |candidate, *args|
+ candidates << candidate
+ raise Resolv::DNS::Config::NXDomain
+ }
+ n = Resolv::DNS::Name.create 'example.com.'
+ assert_equal n, candidates.last
+ end
+
def test_query_ipv4_address
begin
OpenSSL
diff --git a/version.h b/version.h
index b1fc13278d..eeeee540c2 100644
--- a/version.h
+++ b/version.h
@@ -1,10 +1,10 @@
#define RUBY_VERSION "2.0.0"
-#define RUBY_RELEASE_DATE "2014-11-28"
-#define RUBY_PATCHLEVEL 606
+#define RUBY_RELEASE_DATE "2015-01-14"
+#define RUBY_PATCHLEVEL 607
-#define RUBY_RELEASE_YEAR 2014
-#define RUBY_RELEASE_MONTH 11
-#define RUBY_RELEASE_DAY 28
+#define RUBY_RELEASE_YEAR 2015
+#define RUBY_RELEASE_MONTH 1
+#define RUBY_RELEASE_DAY 14
#include "ruby/version.h"
diff --git a/win32/win32.c b/win32/win32.c
index f85d4ec9d1..a7cbbbb377 100644
--- a/win32/win32.c
+++ b/win32/win32.c
@@ -1399,6 +1399,8 @@ insert(const char *path, VALUE vinfo, void *enc)
return 0;
}
+/* License: RubArtistic or GPL */
+
/* License: Artistic or GPL */
static NtCmdLineElement **
cmdglob(NtCmdLineElement *patt, NtCmdLineElement **tail)