whois 1.0.5 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG.rdoc +39 -16
- data/Manifest +6 -1
- data/lib/whois/answer/parser.rb +1 -1
- data/lib/whois/answer/parser/NOTES.txt +11 -2
- data/lib/whois/answer/parser/base.rb +1 -1
- data/lib/whois/answer/parser/jobswhois.verisign-grs.com.rb +7 -3
- data/lib/whois/answer/parser/whois.adamsnames.tc.rb +2 -2
- data/lib/whois/answer/parser/whois.aeda.net.ae.rb +2 -2
- data/lib/whois/answer/parser/whois.aero.rb +9 -4
- data/lib/whois/answer/parser/whois.afilias-grs.info.rb +7 -2
- data/lib/whois/answer/parser/whois.afilias.info.rb +3 -3
- data/lib/whois/answer/parser/whois.biz.rb +7 -2
- data/lib/whois/answer/parser/whois.cat.rb +12 -2
- data/lib/whois/answer/parser/whois.cira.ca.rb +12 -4
- data/lib/whois/answer/parser/whois.crsnic.net.rb +9 -10
- data/lib/whois/answer/parser/whois.denic.de.rb +2 -4
- data/lib/whois/answer/parser/whois.dk-hostmaster.dk.rb +2 -2
- data/lib/whois/answer/parser/whois.domain-registry.nl.rb +10 -2
- data/lib/whois/answer/parser/whois.domainregistry.ie.rb +8 -3
- data/lib/whois/answer/parser/whois.dotmobiregistry.net.rb +7 -2
- data/lib/whois/answer/parser/whois.educause.edu.rb +10 -2
- data/lib/whois/answer/parser/whois.eu.org.rb +5 -2
- data/lib/whois/answer/parser/whois.eu.rb +16 -6
- data/lib/whois/answer/parser/whois.iana.org.rb +9 -4
- data/lib/whois/answer/parser/whois.isnic.is.rb +7 -2
- data/lib/whois/answer/parser/whois.meregistry.net.rb +2 -2
- data/lib/whois/answer/parser/whois.museum.rb +14 -4
- data/lib/whois/answer/parser/whois.nic-se.se.rb +5 -3
- data/lib/whois/answer/parser/whois.nic.ac.rb +2 -2
- data/lib/whois/answer/parser/whois.nic.asia.rb +9 -4
- data/lib/whois/answer/parser/whois.nic.cc.rb +7 -3
- data/lib/whois/answer/parser/whois.nic.cd.rb +10 -2
- data/lib/whois/answer/parser/whois.nic.ch.rb +10 -2
- data/lib/whois/answer/parser/whois.nic.coop.rb +7 -2
- data/lib/whois/answer/parser/whois.nic.fr.rb +7 -2
- data/lib/whois/answer/parser/whois.nic.gl.rb +10 -2
- data/lib/whois/answer/parser/whois.nic.gov.rb +5 -2
- data/lib/whois/answer/parser/whois.nic.hu.rb +26 -40
- data/lib/whois/answer/parser/whois.nic.im.rb +7 -2
- data/lib/whois/answer/parser/whois.nic.io.rb +5 -2
- data/lib/whois/answer/parser/whois.nic.it.rb +2 -4
- data/lib/whois/answer/parser/whois.nic.ly.rb +10 -2
- data/lib/whois/answer/parser/whois.nic.mu.rb +10 -2
- data/lib/whois/answer/parser/whois.nic.name.rb +5 -2
- data/lib/whois/answer/parser/whois.nic.nu.rb +9 -11
- data/lib/whois/answer/parser/whois.nic.tel.rb +2 -2
- data/lib/whois/answer/parser/whois.nic.tl.rb +10 -2
- data/lib/whois/answer/parser/whois.nic.travel.rb +7 -2
- data/lib/whois/answer/parser/whois.nic.tv.rb +4 -4
- data/lib/whois/answer/parser/whois.nic.uk.rb +19 -10
- data/lib/whois/answer/parser/whois.nic.us.rb +7 -2
- data/lib/whois/answer/parser/whois.nic.ve.rb +78 -0
- data/lib/whois/answer/parser/whois.norid.no.rb +2 -2
- data/lib/whois/answer/parser/whois.publicinterestregistry.net.rb +1 -1
- data/lib/whois/answer/parser/whois.register.bg.rb +10 -2
- data/lib/whois/answer/parser/whois.registro.br.rb +5 -2
- data/lib/whois/answer/parser/whois.registrypro.pro.rb +2 -2
- data/lib/whois/answer/parser/whois.ripe.net.rb +13 -2
- data/lib/whois/answer/parser/whois.ripn.net.rb +7 -2
- data/lib/whois/answer/parser/whois.rotld.ro.rb +7 -2
- data/lib/whois/answer/parser/whois.samoanic.ws.rb +10 -2
- data/lib/whois/answer/parser/whois.za.net.rb +10 -2
- data/lib/whois/answer/parser/whois.za.org.rb +10 -2
- data/lib/whois/server/adapters/afilias.rb +1 -1
- data/lib/whois/server/adapters/arpa.rb +1 -1
- data/lib/whois/server/adapters/base.rb +1 -1
- data/lib/whois/server/adapters/formatted.rb +1 -1
- data/lib/whois/server/adapters/none.rb +1 -1
- data/lib/whois/server/adapters/not_implemented.rb +1 -1
- data/lib/whois/server/adapters/standard.rb +1 -1
- data/lib/whois/server/adapters/web.rb +1 -1
- data/lib/whois/version.rb +1 -1
- data/test/answer/parser/jobswhois.verisign-grs.com_test.rb +15 -4
- data/test/answer/parser/whois.aero_test.rb +14 -1
- data/test/answer/parser/whois.afilias-grs.info_test.rb +91 -0
- data/test/answer/parser/whois.biz_test.rb +13 -0
- data/test/answer/parser/whois.cat_test.rb +13 -0
- data/test/answer/parser/whois.cira.ca_test.rb +14 -1
- data/test/answer/parser/whois.crsnic.net_test.rb +5 -5
- data/test/answer/parser/whois.denic.de_test.rb +6 -10
- data/test/answer/parser/whois.domain-registry.nl_test.rb +14 -1
- data/test/answer/parser/whois.domainregistry.ie_test.rb +13 -0
- data/test/answer/parser/whois.dotmobiregistry.net_test.rb +13 -0
- data/test/answer/parser/whois.educause.edu_test.rb +13 -0
- data/test/answer/parser/whois.eu.org_test.rb +7 -1
- data/test/answer/parser/whois.eu_test.rb +8 -1
- data/test/answer/parser/whois.iana.org_test.rb +15 -1
- data/test/answer/parser/whois.isnic.is_test.rb +13 -0
- data/test/answer/parser/whois.museum_test.rb +13 -0
- data/test/answer/parser/whois.nic.ac_test.rb +2 -2
- data/test/answer/parser/whois.nic.asia_test.rb +14 -1
- data/test/answer/parser/whois.nic.cc_test.rb +16 -5
- data/test/answer/parser/whois.nic.cd_test.rb +14 -1
- data/test/answer/parser/whois.nic.ch_test.rb +15 -2
- data/test/answer/parser/whois.nic.coop_test.rb +13 -0
- data/test/answer/parser/whois.nic.fr_test.rb +65 -0
- data/test/answer/parser/whois.nic.gl_test.rb +15 -2
- data/test/answer/parser/whois.nic.gov_test.rb +8 -2
- data/test/answer/parser/whois.nic.hu_test.rb +39 -32
- data/test/answer/parser/whois.nic.im_test.rb +14 -1
- data/test/answer/parser/whois.nic.io_test.rb +7 -1
- data/test/answer/parser/whois.nic.it_test.rb +3 -5
- data/test/answer/parser/whois.nic.ly_test.rb +15 -2
- data/test/answer/parser/whois.nic.mu_test.rb +26 -0
- data/test/answer/parser/whois.nic.name_test.rb +7 -1
- data/test/answer/parser/whois.nic.tl_test.rb +14 -1
- data/test/answer/parser/whois.nic.travel_test.rb +14 -1
- data/test/answer/parser/whois.nic.tv_test.rb +2 -4
- data/test/answer/parser/whois.nic.uk_test.rb +14 -1
- data/test/answer/parser/whois.nic.us_test.rb +14 -1
- data/test/answer/parser/whois.nic.ve_test.rb +72 -0
- data/test/answer/parser/whois.norid.no_test.rb +1 -1
- data/test/answer/parser/whois.publicinterestregistry.net_test.rb +3 -3
- data/test/answer/parser/whois.register.bg_test.rb +15 -2
- data/test/answer/parser/whois.registro.br_test.rb +7 -1
- data/test/answer/parser/whois.ripe.net_test.rb +65 -2
- data/test/answer/parser/whois.ripn.net_test.rb +27 -1
- data/test/answer/parser/whois.rotld.ro_test.rb +15 -2
- data/test/answer/parser/whois.samoanic.ws_test.rb +14 -1
- data/test/answer/parser/whois.za.net_test.rb +15 -2
- data/test/answer/parser/whois.za.org_test.rb +15 -2
- data/test/list_tld +1 -1
- data/test/server/adapters/none_test.rb +1 -1
- data/test/testcases/responses/whois.crsnic.net/{nameservers_with_nonameserver.txt → nameservers_with_no_nameserver.txt} +0 -0
- data/test/testcases/responses/whois.eu/nameservers_with_ip.txt +61 -0
- data/test/testcases/responses/whois.nic.ve/available.txt +10 -0
- data/test/testcases/responses/whois.nic.ve/registered.txt +48 -0
- data/test/testcases/responses/whois.registro.br/registered.txt +1 -1
- data/whois.gemspec +5 -5
- metadata +10 -3
data/CHANGELOG.rdoc
CHANGED
|
@@ -1,6 +1,29 @@
|
|
|
1
1
|
= Changelog
|
|
2
2
|
|
|
3
3
|
|
|
4
|
+
== Release 1.0.6
|
|
5
|
+
|
|
6
|
+
* ADDED: Added simple .ve TLD parser (whois.nic.ve).
|
|
7
|
+
|
|
8
|
+
* ADDED: Added support for 'nameservers' property for all existing parsers.
|
|
9
|
+
|
|
10
|
+
* FIXED: With some .eu domains, whois.eu parser returns invalid values for nameservers.
|
|
11
|
+
|
|
12
|
+
* CHANGED: jobswhois.verisign-grs.com now correctly raises PropertyNotSupported when a property is not supported.
|
|
13
|
+
|
|
14
|
+
* CHANGED: whois.crsnic.net now correctly raises PropertyNotSupported when a property is not supported.
|
|
15
|
+
|
|
16
|
+
* CHANGED: whois.denic.de now correctly raises PropertyNotSupported when a property is not supported.
|
|
17
|
+
|
|
18
|
+
* CHANGED: whois.nic.cc now correctly raises PropertyNotSupported when a property is not supported.
|
|
19
|
+
|
|
20
|
+
* CHANGED: whois.nic.hu now correctly raises PropertyNotSupported when a property is not supported.
|
|
21
|
+
|
|
22
|
+
* CHANGED: whois.nic.it now correctly raises PropertyNotSupported when a property is not supported.
|
|
23
|
+
|
|
24
|
+
* CHANGED: whois.nic.tv now correctly raises PropertyNotSupported when a property is not supported.
|
|
25
|
+
|
|
26
|
+
|
|
4
27
|
== Release 1.0.5
|
|
5
28
|
|
|
6
29
|
* SERVER: Sync definitions with Debian whois 5.0.1.
|
|
@@ -24,10 +47,10 @@
|
|
|
24
47
|
|
|
25
48
|
== Release 1.0.4
|
|
26
49
|
|
|
27
|
-
* FIXED: Normalize 'nameservers' property return value. Always return an Array even if there's no nameserver.
|
|
28
|
-
|
|
29
50
|
* ADDED: Added Symbol.to_proc core extension to ensure compatibility with Ruby 1.8.6.
|
|
30
51
|
|
|
52
|
+
* FIXED: Normalize 'nameservers' property return value. Always return an Array even if there's no nameserver.
|
|
53
|
+
|
|
31
54
|
* CHANGED: Suppress Japanese output for the .js TLD [axic]
|
|
32
55
|
|
|
33
56
|
|
|
@@ -39,18 +62,18 @@
|
|
|
39
62
|
|
|
40
63
|
* SERVER: Updated web address for the .co TLD (closes #13)
|
|
41
64
|
|
|
42
|
-
* FIXED: The whois.nic.it parser extracts the wrong Contact country_code property [axic]
|
|
43
|
-
|
|
44
|
-
* FIXED: With some .de domains, whois.denic.de parser returns invalid values for nameservers (closes #14)
|
|
45
|
-
|
|
46
|
-
* FIXED: whois.crsnic.net crashes with reserved IANA domains (ex y.com)
|
|
47
|
-
|
|
48
65
|
* ADDED: Support for 'Contact#zip' property for the whois.nic.it parser [axic]
|
|
49
66
|
|
|
50
67
|
* ADDED: Support for 'nameservers' property for the whois.adamsnames.tc parser.
|
|
51
68
|
|
|
52
69
|
* ADDED: Compatibility with semver.org
|
|
53
70
|
|
|
71
|
+
* FIXED: The whois.nic.it parser extracts the wrong Contact country_code property [axic]
|
|
72
|
+
|
|
73
|
+
* FIXED: With some .de domains, whois.denic.de parser returns invalid values for nameservers (closes #14)
|
|
74
|
+
|
|
75
|
+
* FIXED: whois.crsnic.net crashes with reserved IANA domains (ex y.com)
|
|
76
|
+
|
|
54
77
|
|
|
55
78
|
== Release 1.0.2
|
|
56
79
|
|
|
@@ -80,14 +103,6 @@
|
|
|
80
103
|
|
|
81
104
|
* SERVER: .dk TLD server requires --show-handles option (closes REDMINE-426)
|
|
82
105
|
|
|
83
|
-
* FIXED: Whois hosts containing a - are not correctly converted into a Ruby class, ex. whois.domain-registry.nl (closes REDMINE-389)
|
|
84
|
-
|
|
85
|
-
* FIXED: In case of exception, the CLI doesn't exit nicely (closes REDMINE-333)
|
|
86
|
-
|
|
87
|
-
* FIXED: Some tests are not compatible with Ruby 1.9
|
|
88
|
-
|
|
89
|
-
* FIXED: Flagged created_on and expires_on properties as not supported for .de TLD.
|
|
90
|
-
|
|
91
106
|
* ADDED: Simple .at TLD parser.
|
|
92
107
|
|
|
93
108
|
* ADDED: Simple .be TLD parser.
|
|
@@ -180,6 +195,14 @@
|
|
|
180
195
|
|
|
181
196
|
* ADDED: Whois::WebInterfaceError now exposes #url attribute.
|
|
182
197
|
|
|
198
|
+
* FIXED: Whois hosts containing a - are not correctly converted into a Ruby class, ex. whois.domain-registry.nl (closes REDMINE-389)
|
|
199
|
+
|
|
200
|
+
* FIXED: In case of exception, the CLI doesn't exit nicely (closes REDMINE-333)
|
|
201
|
+
|
|
202
|
+
* FIXED: Some tests are not compatible with Ruby 1.9
|
|
203
|
+
|
|
204
|
+
* FIXED: Flagged created_on and expires_on properties as not supported for .de TLD.
|
|
205
|
+
|
|
183
206
|
* CHANGED: All not supported properties now raise a PropertyNotSupported error instead of returning nil.
|
|
184
207
|
|
|
185
208
|
* CHANGED: Depending on where you ask for a property, the library now returns the most expected value according to property status.
|
data/Manifest
CHANGED
|
@@ -68,6 +68,7 @@ lib/whois/answer/parser/whois.nic.travel.rb
|
|
|
68
68
|
lib/whois/answer/parser/whois.nic.tv.rb
|
|
69
69
|
lib/whois/answer/parser/whois.nic.uk.rb
|
|
70
70
|
lib/whois/answer/parser/whois.nic.us.rb
|
|
71
|
+
lib/whois/answer/parser/whois.nic.ve.rb
|
|
71
72
|
lib/whois/answer/parser/whois.norid.no.rb
|
|
72
73
|
lib/whois/answer/parser/whois.publicinterestregistry.net.rb
|
|
73
74
|
lib/whois/answer/parser/whois.register.bg.rb
|
|
@@ -149,6 +150,7 @@ test/answer/parser/whois.nic.travel_test.rb
|
|
|
149
150
|
test/answer/parser/whois.nic.tv_test.rb
|
|
150
151
|
test/answer/parser/whois.nic.uk_test.rb
|
|
151
152
|
test/answer/parser/whois.nic.us_test.rb
|
|
153
|
+
test/answer/parser/whois.nic.ve_test.rb
|
|
152
154
|
test/answer/parser/whois.norid.no_test.rb
|
|
153
155
|
test/answer/parser/whois.publicinterestregistry.net_test.rb
|
|
154
156
|
test/answer/parser/whois.register.bg_test.rb
|
|
@@ -221,7 +223,7 @@ test/testcases/responses/whois.cira.ca/available.txt
|
|
|
221
223
|
test/testcases/responses/whois.cira.ca/registered.txt
|
|
222
224
|
test/testcases/responses/whois.crsnic.net/MULTIPLE.txt
|
|
223
225
|
test/testcases/responses/whois.crsnic.net/available.txt
|
|
224
|
-
test/testcases/responses/whois.crsnic.net/
|
|
226
|
+
test/testcases/responses/whois.crsnic.net/nameservers_with_no_nameserver.txt
|
|
225
227
|
test/testcases/responses/whois.crsnic.net/registered.txt
|
|
226
228
|
test/testcases/responses/whois.denic.de/1-10-0_available.txt
|
|
227
229
|
test/testcases/responses/whois.denic.de/1-10-0_registered.txt
|
|
@@ -242,6 +244,7 @@ test/testcases/responses/whois.educause.edu/registered.txt
|
|
|
242
244
|
test/testcases/responses/whois.eu.org/available.txt
|
|
243
245
|
test/testcases/responses/whois.eu.org/registered.txt
|
|
244
246
|
test/testcases/responses/whois.eu/available.txt
|
|
247
|
+
test/testcases/responses/whois.eu/nameservers_with_ip.txt
|
|
245
248
|
test/testcases/responses/whois.eu/registered.txt
|
|
246
249
|
test/testcases/responses/whois.iana.org/MULTIPLE.txt
|
|
247
250
|
test/testcases/responses/whois.iana.org/available.txt
|
|
@@ -317,6 +320,8 @@ test/testcases/responses/whois.nic.uk/invalid.txt
|
|
|
317
320
|
test/testcases/responses/whois.nic.uk/registered.txt
|
|
318
321
|
test/testcases/responses/whois.nic.us/available.txt
|
|
319
322
|
test/testcases/responses/whois.nic.us/registered.txt
|
|
323
|
+
test/testcases/responses/whois.nic.ve/available.txt
|
|
324
|
+
test/testcases/responses/whois.nic.ve/registered.txt
|
|
320
325
|
test/testcases/responses/whois.norid.no/available.txt
|
|
321
326
|
test/testcases/responses/whois.norid.no/registered.txt
|
|
322
327
|
test/testcases/responses/whois.publicinterestregistry.net/available.txt
|
data/lib/whois/answer/parser.rb
CHANGED
|
@@ -26,7 +26,7 @@ module Whois
|
|
|
26
26
|
:disclaimer,
|
|
27
27
|
:domain, :domain_id,
|
|
28
28
|
:referral_whois, :referral_url,
|
|
29
|
-
:status, :
|
|
29
|
+
:status, :available?, :registered?,
|
|
30
30
|
:created_on, :updated_on, :expires_on,
|
|
31
31
|
:registrar, :registrant, :admin, :technical,
|
|
32
32
|
:nameservers,
|
|
@@ -1,3 +1,12 @@
|
|
|
1
1
|
.us == .biz == .travel
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
|
|
3
|
+
== afilias
|
|
4
|
+
|
|
5
|
+
whois.dotmobyregistry.net (.mobi)
|
|
6
|
+
whois.afilias.info (.info)
|
|
7
|
+
whois.afilias-grs.info (.bz, .gi, .hn, .lc, .mn, .sc, .vc)
|
|
8
|
+
whois.aero (.aero)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
whois.museum (.museum)
|
|
12
|
+
whois.cat (.cat)
|
|
@@ -39,9 +39,7 @@ module Whois
|
|
|
39
39
|
node("Domain Name") { |raw| raw.downcase }
|
|
40
40
|
end
|
|
41
41
|
|
|
42
|
-
|
|
43
|
-
nil
|
|
44
|
-
end
|
|
42
|
+
property_not_supported :domain_id
|
|
45
43
|
|
|
46
44
|
|
|
47
45
|
property_supported :referral_whois do
|
|
@@ -86,6 +84,12 @@ module Whois
|
|
|
86
84
|
end
|
|
87
85
|
|
|
88
86
|
|
|
87
|
+
property_supported :nameservers do
|
|
88
|
+
@nameservers ||= node("Name Server") { |values| [*values].map(&:downcase) }
|
|
89
|
+
@nameservers ||= []
|
|
90
|
+
end
|
|
91
|
+
|
|
92
|
+
|
|
89
93
|
protected
|
|
90
94
|
|
|
91
95
|
def parse
|
|
@@ -54,21 +54,26 @@ module Whois
|
|
|
54
54
|
Time.parse($1)
|
|
55
55
|
end
|
|
56
56
|
end
|
|
57
|
-
|
|
57
|
+
|
|
58
58
|
property_supported :updated_on do
|
|
59
59
|
@updated_on ||= if content_for_scanner =~ /Updated On:(.*?)\n+/
|
|
60
60
|
Time.parse($1)
|
|
61
61
|
end
|
|
62
62
|
end
|
|
63
|
-
|
|
63
|
+
|
|
64
64
|
property_supported :expires_on do
|
|
65
65
|
@expires_on ||= if content_for_scanner =~ /Expires On:(.*?)\n+/
|
|
66
66
|
Time.parse($1)
|
|
67
67
|
end
|
|
68
68
|
end
|
|
69
69
|
|
|
70
|
+
|
|
71
|
+
property_supported :nameservers do
|
|
72
|
+
@nameservers ||= content_for_scanner.scan(/Name Server:([^\s]*)\n/).flatten.map(&:downcase)
|
|
73
|
+
end
|
|
74
|
+
|
|
70
75
|
end
|
|
71
|
-
|
|
76
|
+
|
|
72
77
|
end
|
|
73
78
|
end
|
|
74
|
-
end
|
|
79
|
+
end
|
|
@@ -67,11 +67,11 @@ module Whois
|
|
|
67
67
|
|
|
68
68
|
|
|
69
69
|
property_supported :nameservers do
|
|
70
|
-
@nameservers ||= content_for_scanner.scan(/Name Server:([
|
|
70
|
+
@nameservers ||= content_for_scanner.scan(/Name Server:([^\s]*)\n/).flatten.map(&:downcase)
|
|
71
71
|
end
|
|
72
72
|
|
|
73
73
|
end
|
|
74
|
-
|
|
74
|
+
|
|
75
75
|
end
|
|
76
76
|
end
|
|
77
|
-
end
|
|
77
|
+
end
|
|
@@ -67,8 +67,18 @@ module Whois
|
|
|
67
67
|
end
|
|
68
68
|
end
|
|
69
69
|
|
|
70
|
+
# Nameservers are listed in the following formats:
|
|
71
|
+
#
|
|
72
|
+
# Name Server: dns2.gencat.cat 83.247.132.4
|
|
73
|
+
# Name Server: dns.gencat.net
|
|
74
|
+
#
|
|
75
|
+
# In both cases, always return only the name.
|
|
76
|
+
property_supported :nameservers do
|
|
77
|
+
@nameservers ||= content_for_scanner.scan(/Name Server:\s+(.*)\n/).flatten.map { |value| value.split(" ").first }
|
|
78
|
+
end
|
|
79
|
+
|
|
70
80
|
end
|
|
71
|
-
|
|
81
|
+
|
|
72
82
|
end
|
|
73
83
|
end
|
|
74
|
-
end
|
|
84
|
+
end
|
|
@@ -57,21 +57,29 @@ module Whois
|
|
|
57
57
|
Time.parse($1)
|
|
58
58
|
end
|
|
59
59
|
end
|
|
60
|
-
|
|
60
|
+
|
|
61
61
|
property_supported :updated_on do
|
|
62
62
|
@updated_on ||= if content_for_scanner =~ /Updated date:\s+(.*?)\n/
|
|
63
63
|
Time.parse($1)
|
|
64
64
|
end
|
|
65
65
|
end
|
|
66
|
-
|
|
66
|
+
|
|
67
67
|
property_supported :expires_on do
|
|
68
68
|
@expires_on ||= if content_for_scanner =~ /Renewal date:\s+(.*?)\n/
|
|
69
69
|
Time.parse($1)
|
|
70
70
|
end
|
|
71
71
|
end
|
|
72
72
|
|
|
73
|
+
|
|
74
|
+
property_supported :nameservers do
|
|
75
|
+
@nameservers ||= if content_for_scanner =~ /Name servers:\n((?:\s+([^\s]+)\s+([^\s]+)\n)+)/
|
|
76
|
+
$1.split("\n").map { |value| value.split(" ").first }
|
|
77
|
+
end
|
|
78
|
+
@nameservers ||= []
|
|
79
|
+
end
|
|
80
|
+
|
|
73
81
|
end
|
|
74
|
-
|
|
82
|
+
|
|
75
83
|
end
|
|
76
84
|
end
|
|
77
|
-
end
|
|
85
|
+
end
|
|
@@ -39,9 +39,8 @@ module Whois
|
|
|
39
39
|
node("Domain Name") { |raw| raw.downcase }
|
|
40
40
|
end
|
|
41
41
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
end
|
|
42
|
+
property_not_supported :domain_id
|
|
43
|
+
|
|
45
44
|
|
|
46
45
|
|
|
47
46
|
property_supported :referral_whois do
|
|
@@ -79,6 +78,13 @@ module Whois
|
|
|
79
78
|
end
|
|
80
79
|
|
|
81
80
|
|
|
81
|
+
property_supported :registrar do
|
|
82
|
+
# Return nil because when the response contains more than one registrar section
|
|
83
|
+
# the response can be messy. See, for instance, the Verisign response for google.com.
|
|
84
|
+
nil
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
|
|
82
88
|
property_supported :nameservers do
|
|
83
89
|
@nameservers ||= node("Name Server") do |values|
|
|
84
90
|
[*values].map do |value|
|
|
@@ -89,13 +95,6 @@ module Whois
|
|
|
89
95
|
end
|
|
90
96
|
|
|
91
97
|
|
|
92
|
-
property_supported :registrar do
|
|
93
|
-
# Return nil because when the response contains more than one registrar section
|
|
94
|
-
# the response can be messy. See, for instance, the Verisign response for google.com.
|
|
95
|
-
nil
|
|
96
|
-
end
|
|
97
|
-
|
|
98
|
-
|
|
99
98
|
protected
|
|
100
99
|
|
|
101
100
|
def parse
|
|
@@ -32,9 +32,7 @@ module Whois
|
|
|
32
32
|
node("Domain")
|
|
33
33
|
end
|
|
34
34
|
|
|
35
|
-
|
|
36
|
-
nil
|
|
37
|
-
end
|
|
35
|
+
property_not_supported :domain_id
|
|
38
36
|
|
|
39
37
|
|
|
40
38
|
property_supported :status do
|
|
@@ -98,7 +96,7 @@ module Whois
|
|
|
98
96
|
@nameservers ||= []
|
|
99
97
|
end
|
|
100
98
|
|
|
101
|
-
|
|
99
|
+
|
|
102
100
|
protected
|
|
103
101
|
|
|
104
102
|
def parse
|
|
@@ -65,8 +65,16 @@ module Whois
|
|
|
65
65
|
|
|
66
66
|
property_not_supported :expires_on
|
|
67
67
|
|
|
68
|
+
|
|
69
|
+
property_supported :nameservers do
|
|
70
|
+
@nameservers ||= if content_for_scanner =~ /Domain nameservers:\n((.+\n)+)\n/
|
|
71
|
+
$1.split("\n").map(&:strip)
|
|
72
|
+
end
|
|
73
|
+
@nameservers ||= []
|
|
74
|
+
end
|
|
75
|
+
|
|
68
76
|
end
|
|
69
|
-
|
|
77
|
+
|
|
70
78
|
end
|
|
71
79
|
end
|
|
72
|
-
end
|
|
80
|
+
end
|