whois 1.3.10 → 1.3.11
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.rdoc +48 -0
- data/lib/whois/answer/parser/base.rb +2 -0
- data/lib/whois/answer/parser/jobswhois.verisign-grs.com.rb +2 -2
- data/lib/whois/answer/parser/whois.adamsnames.tc.rb +2 -2
- data/lib/whois/answer/parser/whois.aeda.net.ae.rb +11 -3
- data/lib/whois/answer/parser/whois.aero.rb +13 -7
- data/lib/whois/answer/parser/whois.afilias-grs.info.rb +2 -2
- data/lib/whois/answer/parser/whois.afilias.info.rb +3 -3
- data/lib/whois/answer/parser/whois.ai.rb +3 -3
- data/lib/whois/answer/parser/whois.audns.net.au.rb +10 -4
- data/lib/whois/answer/parser/whois.biz.rb +2 -2
- data/lib/whois/answer/parser/whois.cat.rb +8 -2
- data/lib/whois/answer/parser/whois.cctld.uz.rb +8 -2
- data/lib/whois/answer/parser/whois.cnnic.cn.rb +2 -2
- data/lib/whois/answer/parser/whois.co.ug.rb +9 -1
- data/lib/whois/answer/parser/whois.crsnic.net.rb +3 -3
- data/lib/whois/answer/parser/whois.denic.de.rb +15 -1
- data/lib/whois/answer/parser/whois.dk-hostmaster.dk.rb +10 -4
- data/lib/whois/answer/parser/whois.dns.be.rb +10 -3
- data/lib/whois/answer/parser/whois.dns.lu.rb +8 -2
- data/lib/whois/answer/parser/whois.dns.pt.rb +8 -2
- data/lib/whois/answer/parser/whois.domainregistry.ie.rb +6 -2
- data/lib/whois/answer/parser/whois.dot.tk.rb +2 -2
- data/lib/whois/answer/parser/whois.dotmobiregistry.net.rb +2 -2
- data/lib/whois/answer/parser/whois.educause.edu.rb +3 -3
- data/lib/whois/answer/parser/whois.eu.org.rb +3 -3
- data/lib/whois/answer/parser/whois.eu.rb +3 -3
- data/lib/whois/answer/parser/whois.ficora.fi.rb +2 -2
- data/lib/whois/answer/parser/whois.gg.rb +2 -2
- data/lib/whois/answer/parser/whois.hkirc.hk.rb +2 -2
- data/lib/whois/answer/parser/whois.in.ua.rb +8 -2
- data/lib/whois/answer/parser/whois.isnic.is.rb +3 -3
- data/lib/whois/answer/parser/whois.je.rb +2 -2
- data/lib/whois/answer/parser/whois.jprs.jp.rb +11 -4
- data/lib/whois/answer/parser/whois.museum.rb +2 -2
- data/lib/whois/answer/parser/whois.net.ua.rb +8 -2
- data/lib/whois/answer/parser/whois.nic-se.se.rb +11 -5
- data/lib/whois/answer/parser/whois.nic.ac.rb +4 -2
- data/lib/whois/answer/parser/whois.nic.ag.rb +2 -2
- data/lib/whois/answer/parser/whois.nic.am.rb +10 -4
- data/lib/whois/answer/parser/whois.nic.as.rb +2 -2
- data/lib/whois/answer/parser/whois.nic.asia.rb +10 -4
- data/lib/whois/answer/parser/whois.nic.at.rb +2 -2
- data/lib/whois/answer/parser/whois.nic.cc.rb +4 -4
- data/lib/whois/answer/parser/whois.nic.cd.rb +3 -3
- data/lib/whois/answer/parser/whois.nic.coop.rb +10 -4
- data/lib/whois/answer/parser/whois.nic.dz.rb +2 -2
- data/lib/whois/answer/parser/whois.nic.fr.rb +8 -4
- data/lib/whois/answer/parser/whois.nic.gs.rb +1 -1
- data/lib/whois/answer/parser/whois.nic.ht.rb +10 -3
- data/lib/whois/answer/parser/whois.nic.hu.rb +2 -0
- data/lib/whois/answer/parser/whois.nic.im.rb +2 -2
- data/lib/whois/answer/parser/whois.nic.io.rb +2 -2
- data/lib/whois/answer/parser/whois.nic.kz.rb +7 -1
- data/lib/whois/answer/parser/whois.nic.la.rb +8 -2
- data/lib/whois/answer/parser/whois.nic.ly.rb +3 -3
- data/lib/whois/answer/parser/whois.nic.mu.rb +8 -6
- data/lib/whois/answer/parser/whois.nic.nu.rb +9 -3
- data/lib/whois/answer/parser/whois.nic.org.uy.rb +8 -2
- data/lib/whois/answer/parser/whois.nic.sn.rb +2 -1
- data/lib/whois/answer/parser/whois.nic.st.rb +2 -2
- data/lib/whois/answer/parser/whois.nic.tel.rb +2 -2
- data/lib/whois/answer/parser/whois.nic.tl.rb +2 -2
- data/lib/whois/answer/parser/whois.nic.travel.rb +11 -3
- data/lib/whois/answer/parser/whois.nic.tv.rb +2 -2
- data/lib/whois/answer/parser/whois.nic.uk.rb +20 -6
- data/lib/whois/answer/parser/whois.nic.us.rb +2 -2
- data/lib/whois/answer/parser/whois.nic.ve.rb +8 -2
- data/lib/whois/answer/parser/whois.norid.no.rb +3 -3
- data/lib/whois/answer/parser/whois.publicinterestregistry.net.rb +5 -2
- data/lib/whois/answer/parser/whois.register.bg.rb +10 -4
- data/lib/whois/answer/parser/whois.registry.in.rb +11 -3
- data/lib/whois/answer/parser/whois.registrypro.pro.rb +2 -2
- data/lib/whois/answer/parser/whois.ripe.net.rb +2 -2
- data/lib/whois/answer/parser/whois.ripn.net.rb +3 -3
- data/lib/whois/answer/parser/whois.rotld.ro.rb +10 -4
- data/lib/whois/answer/parser/whois.samoanic.ws.rb +2 -2
- data/lib/whois/answer/parser/whois.srs.net.nz.rb +13 -6
- data/lib/whois/answer/parser/whois.tonic.to.rb +8 -6
- data/lib/whois/answer/parser/whois.usp.ac.fj.rb +2 -2
- data/lib/whois/answer/parser/whois.za.net.rb +3 -3
- data/lib/whois/answer/parser/whois.za.org.rb +4 -4
- data/lib/whois/version.rb +1 -1
- data/whois.gemspec +3 -3
- metadata +4 -4
@@ -35,8 +35,14 @@ module Whois
|
|
35
35
|
class WhoisDnsPt < Base
|
36
36
|
|
37
37
|
property_supported :status do
|
38
|
-
@status ||= if content_for_scanner =~ / Status:\s+(
|
39
|
-
$1
|
38
|
+
@status ||= if content_for_scanner =~ / Status:\s+(.+)\n/
|
39
|
+
case $1.downcase
|
40
|
+
when "active" then :registered
|
41
|
+
else
|
42
|
+
Whois.bug!(ParserError, "Unknown status `#{$1}'.")
|
43
|
+
end
|
44
|
+
else
|
45
|
+
:available
|
40
46
|
end
|
41
47
|
end
|
42
48
|
|
@@ -35,8 +35,12 @@ module Whois
|
|
35
35
|
class WhoisDomainregistryIe < Base
|
36
36
|
|
37
37
|
property_supported :status do
|
38
|
-
@status ||= if content_for_scanner =~ /status:\s+(
|
39
|
-
$1.downcase
|
38
|
+
@status ||= if content_for_scanner =~ /status:\s+(.+)\n/
|
39
|
+
case $1.downcase
|
40
|
+
when "active" then :registered
|
41
|
+
else
|
42
|
+
Whois.bug!(ParserError, "Unknown status `#{$1}'.")
|
43
|
+
end
|
40
44
|
else
|
41
45
|
:available
|
42
46
|
end
|
@@ -43,11 +43,11 @@ module Whois
|
|
43
43
|
end
|
44
44
|
|
45
45
|
property_supported :available? do
|
46
|
-
@available
|
46
|
+
@available ||= !!(content_for_scanner =~ /domain name not known/)
|
47
47
|
end
|
48
48
|
|
49
49
|
property_supported :registered? do
|
50
|
-
!available?
|
50
|
+
@registered ||= !available?
|
51
51
|
end
|
52
52
|
|
53
53
|
|
@@ -39,11 +39,11 @@ module Whois
|
|
39
39
|
end
|
40
40
|
|
41
41
|
property_supported :available? do
|
42
|
-
@available
|
42
|
+
@available ||= !!(content_for_scanner =~ /Not found:/)
|
43
43
|
end
|
44
44
|
|
45
45
|
property_supported :registered? do
|
46
|
-
!available?
|
46
|
+
@registered ||= !available?
|
47
47
|
end
|
48
48
|
|
49
49
|
|
@@ -35,7 +35,7 @@ module Whois
|
|
35
35
|
class WhoisEducauseEdu < Base
|
36
36
|
|
37
37
|
property_supported :status do
|
38
|
-
if available?
|
38
|
+
@status ||= if available?
|
39
39
|
:available
|
40
40
|
else
|
41
41
|
:registered
|
@@ -43,11 +43,11 @@ module Whois
|
|
43
43
|
end
|
44
44
|
|
45
45
|
property_supported :available? do
|
46
|
-
@available
|
46
|
+
@available ||= !!(content_for_scanner =~ /No Match/)
|
47
47
|
end
|
48
48
|
|
49
49
|
property_supported :registered? do
|
50
|
-
!available?
|
50
|
+
@registered ||= !available?
|
51
51
|
end
|
52
52
|
|
53
53
|
|
@@ -35,7 +35,7 @@ module Whois
|
|
35
35
|
class WhoisEuOrg < Base
|
36
36
|
|
37
37
|
property_supported :status do
|
38
|
-
if available?
|
38
|
+
@status ||= if available?
|
39
39
|
:available
|
40
40
|
else
|
41
41
|
:registered
|
@@ -43,11 +43,11 @@ module Whois
|
|
43
43
|
end
|
44
44
|
|
45
45
|
property_supported :available? do
|
46
|
-
@available
|
46
|
+
@available ||= !!(content_for_scanner =~ /Key not found/)
|
47
47
|
end
|
48
48
|
|
49
49
|
property_supported :registered? do
|
50
|
-
!available?
|
50
|
+
@registered ||= !available?
|
51
51
|
end
|
52
52
|
|
53
53
|
|
@@ -35,7 +35,7 @@ module Whois
|
|
35
35
|
class WhoisEu < Base
|
36
36
|
|
37
37
|
property_supported :status do
|
38
|
-
if available?
|
38
|
+
@status ||= if available?
|
39
39
|
:available
|
40
40
|
else
|
41
41
|
:registered
|
@@ -43,11 +43,11 @@ module Whois
|
|
43
43
|
end
|
44
44
|
|
45
45
|
property_supported :available? do
|
46
|
-
@available
|
46
|
+
@available ||= !!(content_for_scanner =~ /Status:\s+AVAILABLE/)
|
47
47
|
end
|
48
48
|
|
49
49
|
property_supported :registered? do
|
50
|
-
!available?
|
50
|
+
@registered ||= !available?
|
51
51
|
end
|
52
52
|
|
53
53
|
|
@@ -35,9 +35,9 @@ module Whois
|
|
35
35
|
class WhoisFicoraFi < Base
|
36
36
|
|
37
37
|
property_supported :status do
|
38
|
-
@status ||= if content_for_scanner =~ /status:\s+(
|
38
|
+
@status ||= if content_for_scanner =~ /status:\s+(.+?)\n/
|
39
39
|
case $1.downcase
|
40
|
-
when "granted"
|
40
|
+
when "granted" then :registered
|
41
41
|
else
|
42
42
|
Whois.bug!(ParserError, "Unknown status `#{$1}'.")
|
43
43
|
end
|
@@ -37,8 +37,8 @@ module Whois
|
|
37
37
|
property_supported :status do
|
38
38
|
@status ||= if content_for_scanner =~ /status:(.+?)\n/
|
39
39
|
case $1.downcase
|
40
|
-
when "0"
|
41
|
-
when "1"
|
40
|
+
when "0" then :available
|
41
|
+
when "1" then :registered
|
42
42
|
else
|
43
43
|
Whois.bug!(ParserError, "Unknown status `#{$1}'.")
|
44
44
|
end
|
@@ -43,11 +43,11 @@ module Whois
|
|
43
43
|
end
|
44
44
|
|
45
45
|
property_supported :available? do
|
46
|
-
@available
|
46
|
+
@available ||= (content_for_scanner.strip == "Domain Not Found")
|
47
47
|
end
|
48
48
|
|
49
49
|
property_supported :registered? do
|
50
|
-
!available?
|
50
|
+
@registered ||= !available?
|
51
51
|
end
|
52
52
|
|
53
53
|
|
@@ -35,8 +35,14 @@ module Whois
|
|
35
35
|
class WhoisInUa < Base
|
36
36
|
|
37
37
|
property_supported :status do
|
38
|
-
@status ||= if content_for_scanner =~ /status:\s+(
|
39
|
-
$1.split("-").first
|
38
|
+
@status ||= if content_for_scanner =~ /status:\s+(.+?)\n/
|
39
|
+
case $1.split("-").first.downcase
|
40
|
+
when "ok" then :registered
|
41
|
+
else
|
42
|
+
Whois.bug!(ParserError, "Unknown status `#{$1}'.")
|
43
|
+
end
|
44
|
+
else
|
45
|
+
:available
|
40
46
|
end
|
41
47
|
end
|
42
48
|
|
@@ -35,7 +35,7 @@ module Whois
|
|
35
35
|
class WhoisIsnicIs < Base
|
36
36
|
|
37
37
|
property_supported :status do
|
38
|
-
if available?
|
38
|
+
@status ||= if available?
|
39
39
|
:available
|
40
40
|
else
|
41
41
|
:registered
|
@@ -43,11 +43,11 @@ module Whois
|
|
43
43
|
end
|
44
44
|
|
45
45
|
property_supported :available? do
|
46
|
-
@available
|
46
|
+
@available ||= !!(content_for_scanner =~ /No entries found for query/)
|
47
47
|
end
|
48
48
|
|
49
49
|
property_supported :registered? do
|
50
|
-
!available?
|
50
|
+
@registered ||= !available?
|
51
51
|
end
|
52
52
|
|
53
53
|
|
@@ -37,8 +37,8 @@ module Whois
|
|
37
37
|
property_supported :status do
|
38
38
|
@status ||= if content_for_scanner =~ /status:(.+?)\n/
|
39
39
|
case $1.downcase
|
40
|
-
when "0"
|
41
|
-
when "1"
|
40
|
+
when "0" then :available
|
41
|
+
when "1" then :registered
|
42
42
|
else
|
43
43
|
Whois.bug!(ParserError, "Unknown status `#{$1}'.")
|
44
44
|
end
|
@@ -36,16 +36,23 @@ module Whois
|
|
36
36
|
|
37
37
|
property_supported :status do
|
38
38
|
@status ||= if content_for_scanner =~ /\[Stat(?:us|e)\]\s+(.*)\n/
|
39
|
-
$1
|
39
|
+
case $1.split(" ").first.downcase
|
40
|
+
when "active" then :registered
|
41
|
+
when "connected" then :registered
|
42
|
+
else
|
43
|
+
Whois.bug!(ParserError, "Unknown status `#{$1}'.")
|
44
|
+
end
|
45
|
+
else
|
46
|
+
:available
|
40
47
|
end
|
41
48
|
end
|
42
49
|
|
43
50
|
property_supported :available? do
|
44
|
-
@available
|
51
|
+
@available ||= !!(content_for_scanner =~ /No match!!/)
|
45
52
|
end
|
46
53
|
|
47
54
|
property_supported :registered? do
|
48
|
-
!available?
|
55
|
+
@registered ||= !available?
|
49
56
|
end
|
50
57
|
|
51
58
|
|
@@ -58,7 +65,7 @@ module Whois
|
|
58
65
|
|
59
66
|
# TODO: timezone ('Asia/Tokyo')
|
60
67
|
property_supported :updated_on do
|
61
|
-
@updated_on ||= if content_for_scanner =~ /\[Last Updated?\]\s+(.*)\n/
|
68
|
+
@updated_on ||= if content_for_scanner =~ /\[Last Updated?\]\s+(.*)\n/
|
62
69
|
Time.parse($1)
|
63
70
|
end
|
64
71
|
end
|
@@ -43,11 +43,11 @@ module Whois
|
|
43
43
|
end
|
44
44
|
|
45
45
|
property_supported :available? do
|
46
|
-
@available
|
46
|
+
@available ||= !!(content_for_scanner =~ /NOT FOUND/)
|
47
47
|
end
|
48
48
|
|
49
49
|
property_supported :registered? do
|
50
|
-
!available?
|
50
|
+
@registered ||= !available?
|
51
51
|
end
|
52
52
|
|
53
53
|
|
@@ -35,8 +35,14 @@ module Whois
|
|
35
35
|
class WhoisNetUa < Base
|
36
36
|
|
37
37
|
property_supported :status do
|
38
|
-
@status ||= if content_for_scanner =~ /status:\s+(
|
39
|
-
$1.
|
38
|
+
@status ||= if content_for_scanner =~ /status:\s+(.+?)\n/
|
39
|
+
case $1.downcase
|
40
|
+
when /^ok-until/ then :registered
|
41
|
+
else
|
42
|
+
Whois.bug!(ParserError, "Unknown status `#{$1}'.")
|
43
|
+
end
|
44
|
+
else
|
45
|
+
:available
|
40
46
|
end
|
41
47
|
end
|
42
48
|
|
@@ -35,17 +35,23 @@ module Whois
|
|
35
35
|
class WhoisNicSeSe < Base
|
36
36
|
|
37
37
|
property_supported :status do
|
38
|
-
@status ||= if content_for_scanner =~ /state:\s+(
|
39
|
-
$1.downcase
|
38
|
+
@status ||= if content_for_scanner =~ /state:\s+(.+?)\n/
|
39
|
+
case $1.downcase
|
40
|
+
when "active" then :registered
|
41
|
+
else
|
42
|
+
Whois.bug!(ParserError, "Unknown status `#{$1}'.")
|
43
|
+
end
|
44
|
+
else
|
45
|
+
:available
|
40
46
|
end
|
41
47
|
end
|
42
48
|
|
43
49
|
property_supported :available? do
|
44
|
-
@available
|
50
|
+
@available ||= !!(content_for_scanner =~ /" not found./)
|
45
51
|
end
|
46
52
|
|
47
53
|
property_supported :registered? do
|
48
|
-
!available?
|
54
|
+
@registered ||= !available?
|
49
55
|
end
|
50
56
|
|
51
57
|
|
@@ -82,4 +88,4 @@ module Whois
|
|
82
88
|
|
83
89
|
end
|
84
90
|
end
|
85
|
-
end
|
91
|
+
end
|
@@ -49,11 +49,11 @@ module Whois
|
|
49
49
|
end
|
50
50
|
|
51
51
|
property_supported :available? do
|
52
|
-
@available
|
52
|
+
@available ||= !(content_for_scanner =~ /Not available/)
|
53
53
|
end
|
54
54
|
|
55
55
|
property_supported :registered? do
|
56
|
-
!available?
|
56
|
+
@registered ||= !available?
|
57
57
|
end
|
58
58
|
|
59
59
|
|
@@ -83,10 +83,12 @@ module Whois
|
|
83
83
|
property_not_supported :nameservers
|
84
84
|
|
85
85
|
|
86
|
+
# NEWPROPERTY
|
86
87
|
property_supported :changed? do |other|
|
87
88
|
!unchanged?(other)
|
88
89
|
end
|
89
90
|
|
91
|
+
# NEWPROPERTY
|
90
92
|
property_supported :unchanged? do |other|
|
91
93
|
self == other ||
|
92
94
|
self.content_for_scanner == other.content_for_scanner
|
@@ -39,11 +39,11 @@ module Whois
|
|
39
39
|
end
|
40
40
|
|
41
41
|
property_supported :available? do
|
42
|
-
@available
|
42
|
+
@available ||= (content_for_scanner.strip == "NOT FOUND")
|
43
43
|
end
|
44
44
|
|
45
45
|
property_supported :registered? do
|
46
|
-
!available?
|
46
|
+
@registered ||= !available?
|
47
47
|
end
|
48
48
|
|
49
49
|
|
@@ -35,17 +35,23 @@ module Whois
|
|
35
35
|
class WhoisNicAm < Base
|
36
36
|
|
37
37
|
property_supported :status do
|
38
|
-
@status ||= if content_for_scanner =~ /\s+Status:\s+(
|
39
|
-
$1
|
38
|
+
@status ||= if content_for_scanner =~ /\s+Status:\s+(.+)\n/
|
39
|
+
case $1.downcase
|
40
|
+
when "active" then :registered
|
41
|
+
else
|
42
|
+
Whois.bug!(ParserError, "Unknown status `#{$1}'.")
|
43
|
+
end
|
44
|
+
else
|
45
|
+
:available
|
40
46
|
end
|
41
47
|
end
|
42
48
|
|
43
49
|
property_supported :available? do
|
44
|
-
@available
|
50
|
+
@available ||= !!(content_for_scanner =~ /No match/)
|
45
51
|
end
|
46
52
|
|
47
53
|
property_supported :registered? do
|
48
|
-
!available?
|
54
|
+
@registered ||= !available?
|
49
55
|
end
|
50
56
|
|
51
57
|
|
@@ -43,11 +43,11 @@ module Whois
|
|
43
43
|
end
|
44
44
|
|
45
45
|
property_supported :available? do
|
46
|
-
@available
|
46
|
+
@available ||= !!(content_for_scanner =~ /Domain Not Found/)
|
47
47
|
end
|
48
48
|
|
49
49
|
property_supported :registered? do
|
50
|
-
!available?
|
50
|
+
@registered ||= !available?
|
51
51
|
end
|
52
52
|
|
53
53
|
|
@@ -35,17 +35,23 @@ module Whois
|
|
35
35
|
class WhoisNicAsia < Base
|
36
36
|
|
37
37
|
property_supported :status do
|
38
|
-
@status ||= if content_for_scanner =~ /Domain Status:(
|
39
|
-
$1
|
38
|
+
@status ||= if content_for_scanner =~ /Domain Status:(.+?)\n/
|
39
|
+
case $1.downcase
|
40
|
+
when "ok" then :registered
|
41
|
+
else
|
42
|
+
Whois.bug!(ParserError, "Unknown status `#{$1}'.")
|
43
|
+
end
|
44
|
+
else
|
45
|
+
:available
|
40
46
|
end
|
41
47
|
end
|
42
48
|
|
43
49
|
property_supported :available? do
|
44
|
-
@available
|
50
|
+
@available ||= (content_for_scanner.strip == "NOT FOUND")
|
45
51
|
end
|
46
52
|
|
47
53
|
property_supported :registered? do
|
48
|
-
!available?
|
54
|
+
@registered ||= !available?
|
49
55
|
end
|
50
56
|
|
51
57
|
|
@@ -43,11 +43,11 @@ module Whois
|
|
43
43
|
end
|
44
44
|
|
45
45
|
property_supported :available? do
|
46
|
-
@available
|
46
|
+
@available ||= !!(content_for_scanner =~ /% nothing found/)
|
47
47
|
end
|
48
48
|
|
49
49
|
property_supported :registered? do
|
50
|
-
!available?
|
50
|
+
@registered ||= !available?
|
51
51
|
end
|
52
52
|
|
53
53
|
|