whois 3.5.3 → 3.5.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7d5c6ffa3241d09e0db42ed99141e09a43aaac41
4
- data.tar.gz: 9b8d460fe7f15f665910899009c3020c976ca918
3
+ metadata.gz: d13d589dc72c41ce59b3a1efddf28d37c1ceb407
4
+ data.tar.gz: ad650564c13834a800b3c36a879415da5d7ee29e
5
5
  SHA512:
6
- metadata.gz: d13a916c2f92203bef3b254c6f72510ff17bbe38992bd1b1f4fe1515fa249b80f06a4da9bbd7c4b61a99191a31bf3d32c2d842d03f60eceae51f3735fba61abd
7
- data.tar.gz: 190702fb53ec5b73a0934762484fd1dd588993bb02c5e2f4a28dc7a6701097546ac4d43b9ad83cb36cd075e2a326ead173e701679eeaa3076fce7cd56e8afd08
6
+ metadata.gz: b5e27e531a9153c8201e2f36d2484c3e22b384383b93f21317e4e870f11bfef3ce99b19c0c2f217b0989a1b8627137b535eec9a8bd97ccc687e64dcf802b7d60
7
+ data.tar.gz: 7c429d5a1785ff03fec3924044a4f63eb4338e737c1d79cdb0079bc8b80e33e1f7cca7db7fda243ce1271ab0f6578c86b96ca347f674582e90945760f006ef72
data/CHANGELOG.md CHANGED
@@ -1,6 +1,27 @@
1
1
  # Changelog
2
2
 
3
3
 
4
+ #### master
5
+
6
+ - SERVER: Created .QUEBEC, .COLLEGE, .DESI, .FEEDBACK, .ROCKS, .XN, .ASSOCIATES, .CAPITAL, .CAREER, .ENGINEERING, .EUS, .GAL, .GRIPE, .LEASE, .MEDIA, .PICTURES, .REISEN, .SERVICES, .TOWN, .TOYS, .UNIVERSITY, .XN, .FOO, .FROGANS, .PARIS, .SOY, .BLACKFRIDAY, .CLINIC, .FITNESS, .SCHULE, .CARE, .CASH, .DENTAL, .DISCOUNT, .EXCHANGE, .FAIL, .FINANCIAL, .FUND, .FURNITURE, .GRATIS, .INVESTMENTS, .LIMITED, .SURGERY, .TAX, .WTF, .MOSCOW, .XN, .CREDITCARD, .FINANCE, .INSURE, .WTC, .AIRFORCE, .BAYERN, .GLOBO, .ACCOUNTANTS, .CLAIMS, .CREDIT, .DIGITAL
7
+
8
+ - SERVER: Updated .CEO, .CLUB, .VG
9
+
10
+ - FIXED: whois.enom.com and whois.yoursrs.com parsers crash when trying to access an empty update date (GH-327). [Thanks @alexaitken]
11
+
12
+ - NEW: whois.markmonitor.com parser now recognizes throttled responses.
13
+
14
+ - CHANGED: Updated ccwhois.ksregistry.net to the new response format.
15
+
16
+ - CHANGED: Updated whois.gg to the new response format.
17
+
18
+ - CHANGED: Updated whois.arnesi.si to the new response format.
19
+
20
+ - CHANGED: Updated whois.dreamhost.com to the new response format (GH-326). [Thanks @shingonoide]
21
+
22
+ - CHANGED: whois.cctld.uz now supports updated_on (GH-315). [Thanks @huyphan]
23
+
24
+
4
25
  #### Release 3.5.3
5
26
 
6
27
  - CHANGED: Updated whois.pir.org to the new response format.
data/data/ipv4.json CHANGED
@@ -39,7 +39,9 @@
39
39
  "host": "whois.apnic.net"
40
40
  },
41
41
  "43.0.0.0/8": {
42
- "host": "whois.nic.ad.jp"
42
+ "host": "whois.nic.ad.jp",
43
+ "adapter": "formatted",
44
+ "format": "%s/e"
43
45
  },
44
46
  "46.0.0.0/8": {
45
47
  "host": "whois.ripe.net"
@@ -66,13 +68,19 @@
66
68
  "host": "whois.nic.or.kr"
67
69
  },
68
70
  "61.112.0.0/12": {
69
- "host": "whois.nic.ad.jp"
71
+ "host": "whois.nic.ad.jp",
72
+ "adapter": "formatted",
73
+ "format": "%s/e"
70
74
  },
71
75
  "61.192.0.0/12": {
72
- "host": "whois.nic.ad.jp"
76
+ "host": "whois.nic.ad.jp",
77
+ "adapter": "formatted",
78
+ "format": "%s/e"
73
79
  },
74
80
  "61.208.0.0/13": {
75
- "host": "whois.nic.ad.jp"
81
+ "host": "whois.nic.ad.jp",
82
+ "adapter": "formatted",
83
+ "format": "%s/e"
76
84
  },
77
85
  "60.0.0.0/7": {
78
86
  "host": "whois.apnic.net"
@@ -148,7 +156,9 @@
148
156
  "adapter": "arin"
149
157
  },
150
158
  "133.0.0.0/8": {
151
- "host": "whois.nic.ad.jp"
159
+ "host": "whois.nic.ad.jp",
160
+ "adapter": "formatted",
161
+ "format": "%s/e"
152
162
  },
153
163
  "139.20.0.0/14": {
154
164
  "host": "whois.ripe.net"
@@ -224,7 +234,9 @@
224
234
  "host": "whois.ripe.net"
225
235
  },
226
236
  "153.128.0.0/9": {
227
- "host": "whois.nic.ad.jp"
237
+ "host": "whois.nic.ad.jp",
238
+ "adapter": "formatted",
239
+ "format": "%s/e"
228
240
  },
229
241
  "153.0.0.0/8": {
230
242
  "host": "whois.apnic.net"
@@ -436,46 +448,68 @@
436
448
  "host": "whois.lacnic.net"
437
449
  },
438
450
  "202.11.0.0/16": {
439
- "host": "whois.nic.ad.jp"
451
+ "host": "whois.nic.ad.jp",
452
+ "adapter": "formatted",
453
+ "format": "%s/e"
440
454
  },
441
455
  "202.13.0.0/16": {
442
- "host": "whois.nic.ad.jp"
456
+ "host": "whois.nic.ad.jp",
457
+ "adapter": "formatted",
458
+ "format": "%s/e"
443
459
  },
444
460
  "202.15.0.0/16": {
445
- "host": "whois.nic.ad.jp"
461
+ "host": "whois.nic.ad.jp",
462
+ "adapter": "formatted",
463
+ "format": "%s/e"
446
464
  },
447
465
  "202.16.0.0/14": {
448
- "host": "whois.nic.ad.jp"
466
+ "host": "whois.nic.ad.jp",
467
+ "adapter": "formatted",
468
+ "format": "%s/e"
449
469
  },
450
470
  "202.20.128.0/17": {
451
471
  "host": "whois.nic.or.kr"
452
472
  },
453
473
  "202.23.0.0/16": {
454
- "host": "whois.nic.ad.jp"
474
+ "host": "whois.nic.ad.jp",
475
+ "adapter": "formatted",
476
+ "format": "%s/e"
455
477
  },
456
478
  "202.24.0.0/15": {
457
- "host": "whois.nic.ad.jp"
479
+ "host": "whois.nic.ad.jp",
480
+ "adapter": "formatted",
481
+ "format": "%s/e"
458
482
  },
459
483
  "202.26.0.0/16": {
460
- "host": "whois.nic.ad.jp"
484
+ "host": "whois.nic.ad.jp",
485
+ "adapter": "formatted",
486
+ "format": "%s/e"
461
487
  },
462
488
  "202.30.0.0/15": {
463
489
  "host": "whois.nic.or.kr"
464
490
  },
465
491
  "202.32.0.0/14": {
466
- "host": "whois.nic.ad.jp"
492
+ "host": "whois.nic.ad.jp",
493
+ "adapter": "formatted",
494
+ "format": "%s/e"
467
495
  },
468
496
  "202.48.0.0/16": {
469
- "host": "whois.nic.ad.jp"
497
+ "host": "whois.nic.ad.jp",
498
+ "adapter": "formatted",
499
+ "format": "%s/e"
470
500
  },
471
501
  "202.39.128.0/17": {
472
502
  "host": "whois.twnic.net"
473
503
  },
474
504
  "202.208.0.0/12": {
475
- "host": "whois.nic.ad.jp"
505
+ "host": "whois.nic.ad.jp",
506
+ "adapter": "formatted",
507
+ "format": "%s/e"
476
508
  },
477
509
  "202.224.0.0/11": {
478
- "host": "whois.nic.ad.jp"
510
+ "host": "whois.nic.ad.jp",
511
+ "adapter": "formatted",
512
+ "format": "%s/e"
479
513
  },
480
514
  "203.0.0.0/10": {
481
515
  "host": "whois.apnic.net"
@@ -490,16 +524,24 @@
490
524
  "host": "whois.twnic.net"
491
525
  },
492
526
  "203.136.0.0/14": {
493
- "host": "whois.nic.ad.jp"
527
+ "host": "whois.nic.ad.jp",
528
+ "adapter": "formatted",
529
+ "format": "%s/e"
494
530
  },
495
531
  "203.140.0.0/15": {
496
- "host": "whois.nic.ad.jp"
532
+ "host": "whois.nic.ad.jp",
533
+ "adapter": "formatted",
534
+ "format": "%s/e"
497
535
  },
498
536
  "203.178.0.0/15": {
499
- "host": "whois.nic.ad.jp"
537
+ "host": "whois.nic.ad.jp",
538
+ "adapter": "formatted",
539
+ "format": "%s/e"
500
540
  },
501
541
  "203.180.0.0/14": {
502
- "host": "whois.nic.ad.jp"
542
+ "host": "whois.nic.ad.jp",
543
+ "adapter": "formatted",
544
+ "format": "%s/e"
503
545
  },
504
546
  "203.224.0.0/11": {
505
547
  "host": "whois.nic.or.kr"
@@ -546,10 +588,14 @@
546
588
  "host": "whois.nic.or.kr"
547
589
  },
548
590
  "210.128.0.0/11": {
549
- "host": "whois.nic.ad.jp"
591
+ "host": "whois.nic.ad.jp",
592
+ "adapter": "formatted",
593
+ "format": "%s/e"
550
594
  },
551
595
  "210.160.0.0/12": {
552
- "host": "whois.nic.ad.jp"
596
+ "host": "whois.nic.ad.jp",
597
+ "adapter": "formatted",
598
+ "format": "%s/e"
553
599
  },
554
600
  "210.178.0.0/15": {
555
601
  "host": "whois.nic.or.kr"
@@ -558,10 +604,14 @@
558
604
  "host": "whois.nic.or.kr"
559
605
  },
560
606
  "210.188.0.0/14": {
561
- "host": "whois.nic.ad.jp"
607
+ "host": "whois.nic.ad.jp",
608
+ "adapter": "formatted",
609
+ "format": "%s/e"
562
610
  },
563
611
  "210.196.0.0/14": {
564
- "host": "whois.nic.ad.jp"
612
+ "host": "whois.nic.ad.jp",
613
+ "adapter": "formatted",
614
+ "format": "%s/e"
565
615
  },
566
616
  "210.204.0.0/14": {
567
617
  "host": "whois.nic.or.kr"
@@ -570,7 +620,9 @@
570
620
  "host": "whois.nic.or.kr"
571
621
  },
572
622
  "210.224.0.0/12": {
573
- "host": "whois.nic.ad.jp"
623
+ "host": "whois.nic.ad.jp",
624
+ "adapter": "formatted",
625
+ "format": "%s/e"
574
626
  },
575
627
  "210.240.0.0/16": {
576
628
  "host": "whois.twnic.net"
@@ -585,13 +637,19 @@
585
637
  "host": "whois.twnic.net"
586
638
  },
587
639
  "210.248.0.0/13": {
588
- "host": "whois.nic.ad.jp"
640
+ "host": "whois.nic.ad.jp",
641
+ "adapter": "formatted",
642
+ "format": "%s/e"
589
643
  },
590
644
  "211.0.0.0/12": {
591
- "host": "whois.nic.ad.jp"
645
+ "host": "whois.nic.ad.jp",
646
+ "adapter": "formatted",
647
+ "format": "%s/e"
592
648
  },
593
649
  "211.16.0.0/14": {
594
- "host": "whois.nic.ad.jp"
650
+ "host": "whois.nic.ad.jp",
651
+ "adapter": "formatted",
652
+ "format": "%s/e"
595
653
  },
596
654
  "211.20.0.0/15": {
597
655
  "host": "whois.twnic.net"
@@ -615,10 +673,14 @@
615
673
  "host": "whois.nic.or.kr"
616
674
  },
617
675
  "211.120.0.0/13": {
618
- "host": "whois.nic.ad.jp"
676
+ "host": "whois.nic.ad.jp",
677
+ "adapter": "formatted",
678
+ "format": "%s/e"
619
679
  },
620
680
  "211.128.0.0/13": {
621
- "host": "whois.nic.ad.jp"
681
+ "host": "whois.nic.ad.jp",
682
+ "adapter": "formatted",
683
+ "format": "%s/e"
622
684
  },
623
685
  "211.168.0.0/13": {
624
686
  "host": "whois.nic.or.kr"
@@ -656,13 +718,17 @@
656
718
  "host": "whois.nic.or.kr"
657
719
  },
658
720
  "218.40.0.0/13": {
659
- "host": "whois.nic.ad.jp"
721
+ "host": "whois.nic.ad.jp",
722
+ "adapter": "formatted",
723
+ "format": "%s/e"
660
724
  },
661
725
  "218.48.0.0/13": {
662
726
  "host": "whois.nic.or.kr"
663
727
  },
664
728
  "219.96.0.0/11": {
665
- "host": "whois.nic.ad.jp"
729
+ "host": "whois.nic.ad.jp",
730
+ "adapter": "formatted",
731
+ "format": "%s/e"
666
732
  },
667
733
  "218.144.0.0/12": {
668
734
  "host": "whois.nic.or.kr"
@@ -671,10 +737,14 @@
671
737
  "host": "whois.twnic.net"
672
738
  },
673
739
  "218.216.0.0/13": {
674
- "host": "whois.nic.ad.jp"
740
+ "host": "whois.nic.ad.jp",
741
+ "adapter": "formatted",
742
+ "format": "%s/e"
675
743
  },
676
744
  "218.224.0.0/13": {
677
- "host": "whois.nic.ad.jp"
745
+ "host": "whois.nic.ad.jp",
746
+ "adapter": "formatted",
747
+ "format": "%s/e"
678
748
  },
679
749
  "218.232.0.0/13": {
680
750
  "host": "whois.nic.or.kr"
@@ -692,13 +762,17 @@
692
762
  "host": "whois.nic.or.kr"
693
763
  },
694
764
  "220.96.0.0/14": {
695
- "host": "whois.nic.ad.jp"
765
+ "host": "whois.nic.ad.jp",
766
+ "adapter": "formatted",
767
+ "format": "%s/e"
696
768
  },
697
769
  "220.103.0.0/16": {
698
770
  "host": "whois.nic.or.kr"
699
771
  },
700
772
  "220.104.0.0/13": {
701
- "host": "whois.nic.ad.jp"
773
+ "host": "whois.nic.ad.jp",
774
+ "adapter": "formatted",
775
+ "format": "%s/e"
702
776
  },
703
777
  "220.149.0.0/16": {
704
778
  "host": "whois.nic.or.kr"
data/data/tld.json CHANGED
@@ -1131,7 +1131,7 @@
1131
1131
  "host": "whois.nic.ve"
1132
1132
  },
1133
1133
  ".vg": {
1134
- "host": "whois.adamsnames.tc"
1134
+ "host": "ccwhois.ksregistry.net"
1135
1135
  },
1136
1136
  ".vi": {
1137
1137
  "host": null,
@@ -1254,7 +1254,7 @@
1254
1254
  "host": "whois.donuts.co"
1255
1255
  },
1256
1256
  ".ceo": {
1257
- "adapter": "none"
1257
+ "host": "whois.nic.ceo"
1258
1258
  },
1259
1259
  ".cheap": {
1260
1260
  "host": "whois.donuts.co"
@@ -1269,7 +1269,7 @@
1269
1269
  "host": "whois.donuts.co"
1270
1270
  },
1271
1271
  ".club": {
1272
- "adapter": "none"
1272
+ "host": "whois.nic.club"
1273
1273
  },
1274
1274
  ".codes": {
1275
1275
  "host": "whois.donuts.co"
@@ -1784,6 +1784,180 @@
1784
1784
  ".gop": {
1785
1785
  "host": "whois-cl01.mm-registry.com"
1786
1786
  },
1787
+ ".quebec": {
1788
+ "host": "whois.quebec.rs.corenic.net"
1789
+ },
1790
+ ".college": {
1791
+ "host": "whois.centralnic.com"
1792
+ },
1793
+ ".desi": {
1794
+ "host": "whois.ksregistry.net"
1795
+ },
1796
+ ".feedback": {
1797
+ "host": "whois.centralnic.com"
1798
+ },
1799
+ ".rocks": {
1800
+ "host": "whois.unitedtld.com"
1801
+ },
1802
+ ".xn--ses554g": {
1803
+ "adapter": "none"
1804
+ },
1805
+ ".career": {
1806
+ "adapter": "none"
1807
+ },
1808
+ ".associates": {
1809
+ "host": "whois.donuts.co"
1810
+ },
1811
+ ".capital": {
1812
+ "host": "whois.donuts.co"
1813
+ },
1814
+ ".engineering": {
1815
+ "host": "whois.donuts.co"
1816
+ },
1817
+ ".eus": {
1818
+ "host": "whois.eus.coreregistry.net"
1819
+ },
1820
+ ".gal": {
1821
+ "host": "whois.gal.coreregistry.net"
1822
+ },
1823
+ ".gripe": {
1824
+ "host": "whois.donuts.co"
1825
+ },
1826
+ ".lease": {
1827
+ "host": "whois.donuts.co"
1828
+ },
1829
+ ".media": {
1830
+ "host": "whois.donuts.co"
1831
+ },
1832
+ ".pictures": {
1833
+ "host": "whois.donuts.co"
1834
+ },
1835
+ ".reisen": {
1836
+ "host": "whois.donuts.co"
1837
+ },
1838
+ ".services": {
1839
+ "host": "whois.donuts.co"
1840
+ },
1841
+ ".town": {
1842
+ "host": "whois.donuts.co"
1843
+ },
1844
+ ".toys": {
1845
+ "host": "whois.donuts.co"
1846
+ },
1847
+ ".university": {
1848
+ "host": "whois.donuts.co"
1849
+ },
1850
+ ".xn--cg4bki": {
1851
+ "host": "whois.kr"
1852
+ },
1853
+ ".foo": {
1854
+ "host": "domain-registry-whois.l.google.com"
1855
+ },
1856
+ ".soy": {
1857
+ "host": "domain-registry-whois.l.google.com"
1858
+ },
1859
+ ".frogans": {
1860
+ "host": "whois-frogans.nic.fr"
1861
+ },
1862
+ ".paris": {
1863
+ "host": "whois-paris.nic.fr"
1864
+ },
1865
+ ".blackfriday": {
1866
+ "host": "whois.uniregistry.net"
1867
+ },
1868
+ ".clinic": {
1869
+ "host": "whois.donuts.co"
1870
+ },
1871
+ ".fitness": {
1872
+ "host": "whois.donuts.co"
1873
+ },
1874
+ ".schule": {
1875
+ "host": "whois.donuts.co"
1876
+ },
1877
+ ".care": {
1878
+ "host": "whois.donuts.co"
1879
+ },
1880
+ ".cash": {
1881
+ "host": "whois.donuts.co"
1882
+ },
1883
+ ".dental": {
1884
+ "host": "whois.donuts.co"
1885
+ },
1886
+ ".discount": {
1887
+ "host": "whois.donuts.co"
1888
+ },
1889
+ ".exchange": {
1890
+ "host": "whois.donuts.co"
1891
+ },
1892
+ ".fail": {
1893
+ "host": "whois.donuts.co"
1894
+ },
1895
+ ".financial": {
1896
+ "host": "whois.donuts.co"
1897
+ },
1898
+ ".fund": {
1899
+ "host": "whois.donuts.co"
1900
+ },
1901
+ ".furniture": {
1902
+ "host": "whois.donuts.co"
1903
+ },
1904
+ ".gratis": {
1905
+ "host": "whois.donuts.co"
1906
+ },
1907
+ ".investments": {
1908
+ "host": "whois.donuts.co"
1909
+ },
1910
+ ".limited": {
1911
+ "host": "whois.donuts.co"
1912
+ },
1913
+ ".surgery": {
1914
+ "host": "whois.donuts.co"
1915
+ },
1916
+ ".tax": {
1917
+ "host": "whois.donuts.co"
1918
+ },
1919
+ ".wtf": {
1920
+ "host": "whois.donuts.co"
1921
+ },
1922
+ ".moscow": {
1923
+ "host": "whois.nic.moscow"
1924
+ },
1925
+ ".xn--80adxhks": {
1926
+ "host": "whois.nic.xn--80adxhks"
1927
+ },
1928
+ ".creditcard": {
1929
+ "host": "whois.donuts.co"
1930
+ },
1931
+ ".finance": {
1932
+ "host": "whois.donuts.co"
1933
+ },
1934
+ ".insure": {
1935
+ "host": "whois.donuts.co"
1936
+ },
1937
+ ".wtc": {
1938
+ "host": "whois.nic.wtc"
1939
+ },
1940
+ ".airforce": {
1941
+ "host": "whois.unitedtld.com"
1942
+ },
1943
+ ".bayern": {
1944
+ "host": "whois-dub.mm-registry.com"
1945
+ },
1946
+ ".globo": {
1947
+ "host": "whois.gtlds.nic.br"
1948
+ },
1949
+ ".accountants": {
1950
+ "host": "whois.donuts.co"
1951
+ },
1952
+ ".claims": {
1953
+ "host": "whois.donuts.co"
1954
+ },
1955
+ ".credit": {
1956
+ "host": "whois.donuts.co"
1957
+ },
1958
+ ".digital": {
1959
+ "host": "whois.donuts.co"
1960
+ },
1787
1961
 
1788
1962
 
1789
1963
  ".xn--3e0b707e": {
@@ -0,0 +1,28 @@
1
+ #--
2
+ # Ruby Whois
3
+ #
4
+ # An intelligent pure Ruby WHOIS client and parser.
5
+ #
6
+ # Copyright (c) 2009-2014 Simone Carletti <weppos@weppos.net>
7
+ #++
8
+
9
+
10
+ require 'whois/record/parser/base_shared3'
11
+
12
+
13
+ module Whois
14
+ class Record
15
+ class Parser
16
+
17
+
18
+ # Parser for the ccwhois.ksregistry.net server.
19
+ #
20
+ # @see Whois::Record::Parser::Example
21
+ # The Example parser for the list of all available methods.
22
+ #
23
+ class CcwhoisKsregistryNet < BaseShared3
24
+ end
25
+
26
+ end
27
+ end
28
+ end
@@ -14,25 +14,26 @@ module Whois
14
14
  class Record
15
15
  class Parser
16
16
 
17
+ # Parser for the whois.arnesi.si server.
17
18
  #
18
- # = whois.arnes.si parser
19
+ # @note This parser is just a stub and provides only a few basic methods
20
+ # to check for domain availability and get domain status.
21
+ # Please consider to contribute implementing missing methods.
19
22
  #
20
- # Parser for the whois.arnes.si server.
21
- #
22
- # NOTE: This parser is just a stub and provides only a few basic methods
23
- # to check for domain availability and get domain status.
24
- # Please consider to contribute implementing missing methods.
25
- # See WhoisNicIt parser for an explanation of all available methods
26
- # and examples.
23
+ # @see Whois::Record::Parser::Example
24
+ # The Example parser for the list of all available methods.
27
25
  #
28
26
  class WhoisArnesSi < Base
29
27
 
30
28
  property_supported :status do
31
29
  if content_for_scanner =~ /status:\s+(.+)\n/
32
- case $1.downcase
33
- when "ok" then :registered
34
- else
35
- Whois.bug!(ParserError, "Unknown status `#{$1}'.")
30
+ statuses = $1.strip.downcase.split(",")
31
+ if statuses.include?("ok")
32
+ :registered
33
+ elsif statuses.include?("serverupdateprohibited")
34
+ :registered
35
+ else
36
+ Whois.bug!(ParserError, "Unknown status `#{$1}'.")
36
37
  end
37
38
  else
38
39
  :available
@@ -65,7 +66,7 @@ module Whois
65
66
 
66
67
  property_supported :nameservers do
67
68
  content_for_scanner.scan(/nameserver:\s+(.+)\n/).flatten.map do |name|
68
- Record::Nameserver.new(:name => name)
69
+ Record::Nameserver.new(name: name.strip)
69
70
  end
70
71
  end
71
72
 
@@ -50,15 +50,19 @@ module Whois
50
50
 
51
51
 
52
52
  property_supported :created_on do
53
- if content_for_scanner =~ /^Creation Date:(.*)\n/
53
+ if content_for_scanner =~ /Creation Date:(.+)\n/
54
54
  Time.parse($1)
55
55
  end
56
56
  end
57
57
 
58
- property_not_supported :updated_on
58
+ property_supported :updated_on do
59
+ if content_for_scanner =~ /Updated Date:(.+)\n/
60
+ Time.parse($1)
61
+ end
62
+ end
59
63
 
60
64
  property_supported :expires_on do
61
- if content_for_scanner =~ /^Expiration Date:\s+(.*)\n/
65
+ if content_for_scanner =~ /Expiration Date:\s+(.+)\n/
62
66
  Time.parse($1) unless $1 == '-'
63
67
  end
64
68
  end
@@ -6,9 +6,7 @@
6
6
  # Copyright (c) 2009-2014 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
-
10
- require 'whois/record/parser/base'
11
-
9
+ require 'whois/record/parser/base_icann_compliant'
12
10
 
13
11
  module Whois
14
12
  class Record
@@ -19,99 +17,7 @@ module Whois
19
17
  # @see Whois::Record::Parser::Example
20
18
  # The Example parser for the list of all available methods.
21
19
  #
22
- class WhoisDreamhostCom < Base
23
-
24
- property_not_supported :status
25
-
26
- # The server is contacted only in case of a registered domain.
27
- property_supported :available? do
28
- false
29
- end
30
-
31
- property_supported :registered? do
32
- !available?
33
- end
34
-
35
-
36
- property_supported :created_on do
37
- if content_for_scanner =~ /Record created on (.+)\.\n/
38
- Time.parse($1)
39
- end
40
- end
41
-
42
- property_not_supported :updated_on
43
-
44
- property_supported :expires_on do
45
- if content_for_scanner =~ /Record expires on (.+)\.\n/
46
- Time.parse($1)
47
- end
48
- end
49
-
50
-
51
- property_supported :registrar do
52
- Record::Registrar.new(
53
- :name => "DreamHost",
54
- :organization => "New Dream Network, LLC.",
55
- :url => "http://www.dreamhost.com/"
56
- )
57
- end
58
-
59
- property_supported :registrant_contacts do
60
- build_contact('Registrant Contact:', Record::Contact::TYPE_REGISTRANT)
61
- end
62
-
63
- property_supported :admin_contacts do
64
- build_contact('Administrative Contact:', Record::Contact::TYPE_ADMINISTRATIVE)
65
- end
66
-
67
- property_supported :technical_contacts do
68
- build_contact('Technical Contact:', Record::Contact::TYPE_TECHNICAL)
69
- end
70
-
71
-
72
- property_supported :nameservers do
73
- if content_for_scanner =~ /Domain servers in listed order:\n\n((?:\s*[^\s\n]+\n)+)/
74
- $1.split("\n").map do |line|
75
- Record::Nameserver.new(:name => line.strip)
76
- end
77
- end
78
- end
79
-
80
-
81
- private
82
-
83
- def build_contact(element, type)
84
- match = content_for_scanner.slice(/#{element}\n((.+\n)+)\n/, 1)
85
- return unless match
86
-
87
- lines = match.split("\n").map(&:strip)
88
-
89
- # 0 Name Email
90
- # 1 Company
91
- # 2 Address
92
- # ? Address
93
- # 3 City, State Zip
94
- # 4 CountryCode
95
- # 5 Phone
96
-
97
- name, email = lines[0].split(/\s{5,}/)
98
- address = lines[2..-4].join("\n")
99
- city, state, zip = lines[-3].scan(/^(.+), ([A-Z]{2}) ([0-9]+)$/).first
100
- Record::Contact.new(
101
- :type => type,
102
- :name => name,
103
- :organization => lines[1],
104
- :address => address,
105
- :city => city,
106
- :state => state,
107
- :zip => zip,
108
- :country_code => lines[-2],
109
- :email => email,
110
- :phone => lines[-1],
111
- :fax => nil
112
- )
113
- end
114
-
20
+ class WhoisDreamhostCom < BaseIcannCompliant
115
21
  end
116
22
 
117
23
  end
@@ -23,6 +23,12 @@ module Whois
23
23
  self.scanner = Scanners::BaseIcannCompliant, {
24
24
  pattern_available: /^Domain not found\.\n/
25
25
  }
26
+
27
+ property_supported :updated_on do
28
+ node('Updated Date') do |value|
29
+ parse_time(value) unless value.empty?
30
+ end
31
+ end
26
32
  end
27
33
 
28
34
  end
@@ -7,7 +7,7 @@
7
7
  #++
8
8
 
9
9
 
10
- require 'whois/record/parser/base_cocca'
10
+ require 'whois/record/parser/base_cocca2'
11
11
 
12
12
 
13
13
  module Whois
@@ -19,7 +19,13 @@ module Whois
19
19
  # @see Whois::Record::Parser::Example
20
20
  # The Example parser for the list of all available methods.
21
21
  #
22
- class WhoisGg < BaseCocca
22
+ class WhoisGg < BaseCocca2
23
+
24
+ property_supported :status do
25
+ list = Array.wrap(node("Domain Status")).map(&:downcase)
26
+ list.include?("available") ? :available : super()
27
+ end
28
+
23
29
  end
24
30
 
25
31
  end
@@ -21,8 +21,15 @@ module Whois
21
21
  #
22
22
  class WhoisMarkmonitorCom < BaseIcannCompliant
23
23
  self.scanner = Scanners::BaseIcannCompliant, {
24
- pattern_available: /^No match for/
24
+ pattern_available: /^No match for/,
25
+ pattern_throttled: /^You have exceeded your quota of queries\./,
25
26
  }
27
+
28
+
29
+ def response_throttled?
30
+ !!node("response:throttled")
31
+ end
32
+
26
33
  end
27
34
 
28
35
  end
@@ -105,6 +105,17 @@ module Whois
105
105
  end
106
106
 
107
107
 
108
+ # Checks whether the response has been throttled.
109
+ #
110
+ # @return [Boolean]
111
+ #
112
+ # @example
113
+ # -1: Please go away for 90 Seconds
114
+ #
115
+ def response_throttled?
116
+ !!(content_for_scanner =~ /Please go away for \d+ Seconds/)
117
+ end
118
+
108
119
  private
109
120
 
110
121
  def build_contact(node)
@@ -54,7 +54,7 @@ module Whois
54
54
 
55
55
  property_supported :updated_on do
56
56
  node("Last Updated On") do |value|
57
- Time.parse(value)
57
+ Time.parse(value) unless value.empty?
58
58
  end
59
59
  end
60
60
 
@@ -29,6 +29,7 @@ module Whois
29
29
  "TERMS OF USE:", # global
30
30
  "Terminos de Uso:", # whois.nic.hn
31
31
  "The data in the WHOIS database of Meridian", # whois.meridiantld.net
32
+ "This information is provided", # whois.gg
32
33
  ]
33
34
 
34
35
  tokenizer :scan_disclaimer do
@@ -20,6 +20,7 @@ module Whois
20
20
  self.tokenizers += [
21
21
  :skip_head,
22
22
  :scan_available,
23
+ :scan_throttled,
23
24
  :skip_empty_line,
24
25
  :skip_blank_line,
25
26
  :scan_keyvalue,
@@ -32,6 +33,12 @@ module Whois
32
33
  end
33
34
  end
34
35
 
36
+ tokenizer :scan_throttled do
37
+ if settings[:pattern_throttled] && @input.skip_until(settings[:pattern_throttled])
38
+ @ast['response:throttled'] = true
39
+ end
40
+ end
41
+
35
42
  tokenizer :skip_head do
36
43
  if @input.skip_until(/Domain Name:/)
37
44
  @input.scan(/\s?(.+)\n/)
data/lib/whois/version.rb CHANGED
@@ -13,7 +13,7 @@ module Whois
13
13
  module Version
14
14
  MAJOR = 3
15
15
  MINOR = 5
16
- PATCH = 3
16
+ PATCH = 4
17
17
  BUILD = nil
18
18
 
19
19
  STRING = [MAJOR, MINOR, PATCH, BUILD].compact.join(".")
data/whois.gemspec CHANGED
@@ -1,18 +1,18 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # stub: whois 3.5.2 ruby lib
2
+ # stub: whois 3.5.3 ruby lib
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "whois"
6
- s.version = "3.5.2"
6
+ s.version = "3.5.3"
7
7
 
8
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
9
9
  s.require_paths = ["lib"]
10
10
  s.authors = ["Simone Carletti"]
11
- s.date = "2014-04-07"
11
+ s.date = "2014-06-04"
12
12
  s.description = "Whois is an intelligent WHOIS client and parser written in pure Ruby. It can query registry data for IPv4, IPv6 and top level domains, parse and convert responses into easy-to-use Ruby objects."
13
13
  s.email = ["weppos@weppos.net"]
14
14
  s.executables = ["ruby-whois"]
15
- s.files = [".yardopts", "CHANGELOG.md", "LICENSE.txt", "README.md", "bin/ruby-whois", "data/asn16.json", "data/asn32.json", "data/ipv4.json", "data/ipv6.json", "data/tld.json", "lib/whois.rb", "lib/whois/client.rb", "lib/whois/errors.rb", "lib/whois/record.rb", "lib/whois/record/contact.rb", "lib/whois/record/nameserver.rb", "lib/whois/record/parser.rb", "lib/whois/record/parser/base.rb", "lib/whois/record/parser/base_afilias.rb", "lib/whois/record/parser/base_afilias2.rb", "lib/whois/record/parser/base_cocca.rb", "lib/whois/record/parser/base_cocca2.rb", "lib/whois/record/parser/base_icann_compliant.rb", "lib/whois/record/parser/base_icb.rb", "lib/whois/record/parser/base_iisse.rb", "lib/whois/record/parser/base_shared1.rb", "lib/whois/record/parser/base_shared2.rb", "lib/whois/record/parser/base_shared3.rb", "lib/whois/record/parser/base_verisign.rb", "lib/whois/record/parser/base_whoisd.rb", "lib/whois/record/parser/blank.rb", "lib/whois/record/parser/ccwhois.verisign-grs.com.rb", "lib/whois/record/parser/example.rb", "lib/whois/record/parser/jobswhois.verisign-grs.com.rb", "lib/whois/record/parser/kero.yachay.pe.rb", "lib/whois/record/parser/whois.1und1.info.rb", "lib/whois/record/parser/whois.adamsnames.tc.rb", "lib/whois/record/parser/whois.aeda.net.ae.rb", "lib/whois/record/parser/whois.aero.rb", "lib/whois/record/parser/whois.afilias-grs.info.rb", "lib/whois/record/parser/whois.afilias.info.rb", "lib/whois/record/parser/whois.ai.rb", "lib/whois/record/parser/whois.arnes.si.rb", "lib/whois/record/parser/whois.ascio.com.rb", "lib/whois/record/parser/whois.ati.tn.rb", "lib/whois/record/parser/whois.audns.net.au.rb", "lib/whois/record/parser/whois.ax.rb", "lib/whois/record/parser/whois.biz.rb", "lib/whois/record/parser/whois.bn.rb", "lib/whois/record/parser/whois.cat.rb", "lib/whois/record/parser/whois.cctld.by.rb", "lib/whois/record/parser/whois.cctld.uz.rb", "lib/whois/record/parser/whois.centralnic.com.rb", "lib/whois/record/parser/whois.cira.ca.rb", "lib/whois/record/parser/whois.cmc.iq.rb", "lib/whois/record/parser/whois.cnnic.cn.rb", "lib/whois/record/parser/whois.co.ca.rb", "lib/whois/record/parser/whois.co.pl.rb", "lib/whois/record/parser/whois.co.ug.rb", "lib/whois/record/parser/whois.comlaude.com.rb", "lib/whois/record/parser/whois.corporatedomains.com.rb", "lib/whois/record/parser/whois.denic.de.rb", "lib/whois/record/parser/whois.dk-hostmaster.dk.rb", "lib/whois/record/parser/whois.dns.be.rb", "lib/whois/record/parser/whois.dns.hr.rb", "lib/whois/record/parser/whois.dns.lu.rb", "lib/whois/record/parser/whois.dns.pl.rb", "lib/whois/record/parser/whois.dns.pt.rb", "lib/whois/record/parser/whois.domain-registry.nl.rb", "lib/whois/record/parser/whois.domain.kg.rb", "lib/whois/record/parser/whois.domainregistry.ie.rb", "lib/whois/record/parser/whois.domainregistry.my.rb", "lib/whois/record/parser/whois.domreg.lt.rb", "lib/whois/record/parser/whois.donuts.co.rb", "lib/whois/record/parser/whois.dot.cf.rb", "lib/whois/record/parser/whois.dot.tk.rb", "lib/whois/record/parser/whois.dotmobiregistry.net.rb", "lib/whois/record/parser/whois.dotpostregistry.net.rb", "lib/whois/record/parser/whois.dreamhost.com.rb", "lib/whois/record/parser/whois.educause.edu.rb", "lib/whois/record/parser/whois.eenet.ee.rb", "lib/whois/record/parser/whois.enom.com.rb", "lib/whois/record/parser/whois.eu.org.rb", "lib/whois/record/parser/whois.eu.rb", "lib/whois/record/parser/whois.fi.rb", "lib/whois/record/parser/whois.gandi.net.rb", "lib/whois/record/parser/whois.gg.rb", "lib/whois/record/parser/whois.godaddy.com.rb", "lib/whois/record/parser/whois.gov.za.rb", "lib/whois/record/parser/whois.hkirc.hk.rb", "lib/whois/record/parser/whois.iam.net.ma.rb", "lib/whois/record/parser/whois.iana.org.rb", "lib/whois/record/parser/whois.iis.nu.rb", "lib/whois/record/parser/whois.iis.se.rb", "lib/whois/record/parser/whois.in.ua.rb", "lib/whois/record/parser/whois.isnic.is.rb", "lib/whois/record/parser/whois.isoc.org.il.rb", "lib/whois/record/parser/whois.ja.net.rb", "lib/whois/record/parser/whois.je.rb", "lib/whois/record/parser/whois.jprs.jp.rb", "lib/whois/record/parser/whois.kenic.or.ke.rb", "lib/whois/record/parser/whois.kr.rb", "lib/whois/record/parser/whois.markmonitor.com.rb", "lib/whois/record/parser/whois.meridiantld.net.rb", "lib/whois/record/parser/whois.monic.mo.rb", "lib/whois/record/parser/whois.museum.rb", "lib/whois/record/parser/whois.na-nic.com.na.rb", "lib/whois/record/parser/whois.nc.rb", "lib/whois/record/parser/whois.netcom.cm.rb", "lib/whois/record/parser/whois.networksolutions.com.rb", "lib/whois/record/parser/whois.nic.ac.rb", "lib/whois/record/parser/whois.nic.af.rb", "lib/whois/record/parser/whois.nic.ag.rb", "lib/whois/record/parser/whois.nic.am.rb", "lib/whois/record/parser/whois.nic.as.rb", "lib/whois/record/parser/whois.nic.asia.rb", "lib/whois/record/parser/whois.nic.at.rb", "lib/whois/record/parser/whois.nic.bj.rb", "lib/whois/record/parser/whois.nic.bo.rb", "lib/whois/record/parser/whois.nic.cd.rb", "lib/whois/record/parser/whois.nic.ch.rb", "lib/whois/record/parser/whois.nic.ci.rb", "lib/whois/record/parser/whois.nic.ck.rb", "lib/whois/record/parser/whois.nic.cl.rb", "lib/whois/record/parser/whois.nic.co.rb", "lib/whois/record/parser/whois.nic.coop.rb", "lib/whois/record/parser/whois.nic.cx.rb", "lib/whois/record/parser/whois.nic.cz.rb", "lib/whois/record/parser/whois.nic.dm.rb", "lib/whois/record/parser/whois.nic.dz.rb", "lib/whois/record/parser/whois.nic.ec.rb", "lib/whois/record/parser/whois.nic.es.rb", "lib/whois/record/parser/whois.nic.fo.rb", "lib/whois/record/parser/whois.nic.fr.rb", "lib/whois/record/parser/whois.nic.gd.rb", "lib/whois/record/parser/whois.nic.gl.rb", "lib/whois/record/parser/whois.nic.gov.rb", "lib/whois/record/parser/whois.nic.gs.rb", "lib/whois/record/parser/whois.nic.hn.rb", "lib/whois/record/parser/whois.nic.ht.rb", "lib/whois/record/parser/whois.nic.hu.rb", "lib/whois/record/parser/whois.nic.im.rb", "lib/whois/record/parser/whois.nic.io.rb", "lib/whois/record/parser/whois.nic.ir.rb", "lib/whois/record/parser/whois.nic.it.rb", "lib/whois/record/parser/whois.nic.ki.rb", "lib/whois/record/parser/whois.nic.kz.rb", "lib/whois/record/parser/whois.nic.la.rb", "lib/whois/record/parser/whois.nic.li.rb", "lib/whois/record/parser/whois.nic.lk.rb", "lib/whois/record/parser/whois.nic.lv.rb", "lib/whois/record/parser/whois.nic.ly.rb", "lib/whois/record/parser/whois.nic.md.rb", "lib/whois/record/parser/whois.nic.me.rb", "lib/whois/record/parser/whois.nic.mg.rb", "lib/whois/record/parser/whois.nic.ms.rb", "lib/whois/record/parser/whois.nic.mu.rb", "lib/whois/record/parser/whois.nic.mx.rb", "lib/whois/record/parser/whois.nic.name.rb", "lib/whois/record/parser/whois.nic.net.ng.rb", "lib/whois/record/parser/whois.nic.net.sa.rb", "lib/whois/record/parser/whois.nic.net.sb.rb", "lib/whois/record/parser/whois.nic.nf.rb", "lib/whois/record/parser/whois.nic.org.uy.rb", "lib/whois/record/parser/whois.nic.pr.rb", "lib/whois/record/parser/whois.nic.priv.at.rb", "lib/whois/record/parser/whois.nic.pw.rb", "lib/whois/record/parser/whois.nic.sh.rb", "lib/whois/record/parser/whois.nic.sl.rb", "lib/whois/record/parser/whois.nic.sm.rb", "lib/whois/record/parser/whois.nic.sn.rb", "lib/whois/record/parser/whois.nic.so.rb", "lib/whois/record/parser/whois.nic.st.rb", "lib/whois/record/parser/whois.nic.tel.rb", "lib/whois/record/parser/whois.nic.tl.rb", "lib/whois/record/parser/whois.nic.tm.rb", "lib/whois/record/parser/whois.nic.tr.rb", "lib/whois/record/parser/whois.nic.travel.rb", "lib/whois/record/parser/whois.nic.tv.rb", "lib/whois/record/parser/whois.nic.uk.rb", "lib/whois/record/parser/whois.nic.us.rb", "lib/whois/record/parser/whois.nic.ve.rb", "lib/whois/record/parser/whois.nic.xxx.rb", "lib/whois/record/parser/whois.norid.no.rb", "lib/whois/record/parser/whois.org.za.rb", "lib/whois/record/parser/whois.pairnic.com.rb", "lib/whois/record/parser/whois.pandi.or.id.rb", "lib/whois/record/parser/whois.pir.org.rb", "lib/whois/record/parser/whois.pnina.ps.rb", "lib/whois/record/parser/whois.register.bg.rb", "lib/whois/record/parser/whois.register.com.rb", "lib/whois/record/parser/whois.registro.br.rb", "lib/whois/record/parser/whois.registry.gy.rb", "lib/whois/record/parser/whois.registry.hm.rb", "lib/whois/record/parser/whois.registry.in.rb", "lib/whois/record/parser/whois.registry.net.za.rb", "lib/whois/record/parser/whois.registry.om.rb", "lib/whois/record/parser/whois.registry.qa.rb", "lib/whois/record/parser/whois.registrypro.pro.rb", "lib/whois/record/parser/whois.ripe.net.rb", "lib/whois/record/parser/whois.rnids.rs.rb", "lib/whois/record/parser/whois.rotld.ro.rb", "lib/whois/record/parser/whois.rrpproxy.net.rb", "lib/whois/record/parser/whois.schlund.info.rb", "lib/whois/record/parser/whois.sgnic.sg.rb", "lib/whois/record/parser/whois.sk-nic.sk.rb", "lib/whois/record/parser/whois.smallregistry.net.rb", "lib/whois/record/parser/whois.srs.net.nz.rb", "lib/whois/record/parser/whois.sx.rb", "lib/whois/record/parser/whois.tcinet.ru.rb", "lib/whois/record/parser/whois.thnic.co.th.rb", "lib/whois/record/parser/whois.tld.ee.rb", "lib/whois/record/parser/whois.tld.sy.rb", "lib/whois/record/parser/whois.tonic.to.rb", "lib/whois/record/parser/whois.tucows.com.rb", "lib/whois/record/parser/whois.twnic.net.tw.rb", "lib/whois/record/parser/whois.tznic.or.tz.rb", "lib/whois/record/parser/whois.ua.rb", "lib/whois/record/parser/whois.udag.net.rb", "lib/whois/record/parser/whois.uniregistry.net.rb", "lib/whois/record/parser/whois.usp.ac.fj.rb", "lib/whois/record/parser/whois.verisign-grs.com.rb", "lib/whois/record/parser/whois.website.ws.rb", "lib/whois/record/parser/whois.wildwestdomains.com.rb", "lib/whois/record/parser/whois.yoursrs.com.rb", "lib/whois/record/parser/whois.za.net.rb", "lib/whois/record/parser/whois.za.org.rb", "lib/whois/record/parser/whois1.nic.bi.rb", "lib/whois/record/part.rb", "lib/whois/record/registrar.rb", "lib/whois/record/scanners/base.rb", "lib/whois/record/scanners/base_afilias.rb", "lib/whois/record/scanners/base_cocca2.rb", "lib/whois/record/scanners/base_icann_compliant.rb", "lib/whois/record/scanners/base_iisse.rb", "lib/whois/record/scanners/base_shared1.rb", "lib/whois/record/scanners/base_shared2.rb", "lib/whois/record/scanners/base_shared3.rb", "lib/whois/record/scanners/base_whoisd.rb", "lib/whois/record/scanners/iana.rb", "lib/whois/record/scanners/scannable.rb", "lib/whois/record/scanners/verisign.rb", "lib/whois/record/scanners/whois.ati.tn.rb", "lib/whois/record/scanners/whois.audns.net.au.rb", "lib/whois/record/scanners/whois.cctld.by.rb", "lib/whois/record/scanners/whois.centralnic.com.rb", "lib/whois/record/scanners/whois.cira.ca.rb", "lib/whois/record/scanners/whois.cnnic.cn.rb", "lib/whois/record/scanners/whois.denic.de.rb", "lib/whois/record/scanners/whois.dns.hr.rb", "lib/whois/record/scanners/whois.domainregistry.ie.rb", "lib/whois/record/scanners/whois.fi.rb", "lib/whois/record/scanners/whois.nc.rb", "lib/whois/record/scanners/whois.nic.cz.rb", "lib/whois/record/scanners/whois.nic.it.rb", "lib/whois/record/scanners/whois.pir.org.rb", "lib/whois/record/scanners/whois.registry.net.za.rb", "lib/whois/record/scanners/whois.rnids.rs.rb", "lib/whois/record/scanners/whois.smallregistry.net.rb", "lib/whois/record/scanners/whois.srs.net.nz.rb", "lib/whois/record/scanners/whois.sx.rb", "lib/whois/record/scanners/whois.tucows.com.rb", "lib/whois/record/scanners/whois.yoursrs.com.rb", "lib/whois/record/super_struct.rb", "lib/whois/server.rb", "lib/whois/server/adapters/afilias.rb", "lib/whois/server/adapters/arin.rb", "lib/whois/server/adapters/arpa.rb", "lib/whois/server/adapters/base.rb", "lib/whois/server/adapters/formatted.rb", "lib/whois/server/adapters/none.rb", "lib/whois/server/adapters/not_implemented.rb", "lib/whois/server/adapters/standard.rb", "lib/whois/server/adapters/verisign.rb", "lib/whois/server/adapters/web.rb", "lib/whois/server/socket_handler.rb", "lib/whois/version.rb", "whois.gemspec"]
15
+ s.files = [".yardopts", "CHANGELOG.md", "LICENSE.txt", "README.md", "bin/ruby-whois", "data/asn16.json", "data/asn32.json", "data/ipv4.json", "data/ipv6.json", "data/tld.json", "lib/whois", "lib/whois.rb", "lib/whois/client.rb", "lib/whois/errors.rb", "lib/whois/record", "lib/whois/record.rb", "lib/whois/record/contact.rb", "lib/whois/record/nameserver.rb", "lib/whois/record/parser", "lib/whois/record/parser.rb", "lib/whois/record/parser/base.rb", "lib/whois/record/parser/base_afilias.rb", "lib/whois/record/parser/base_afilias2.rb", "lib/whois/record/parser/base_cocca.rb", "lib/whois/record/parser/base_cocca2.rb", "lib/whois/record/parser/base_icann_compliant.rb", "lib/whois/record/parser/base_icb.rb", "lib/whois/record/parser/base_iisse.rb", "lib/whois/record/parser/base_shared1.rb", "lib/whois/record/parser/base_shared2.rb", "lib/whois/record/parser/base_shared3.rb", "lib/whois/record/parser/base_verisign.rb", "lib/whois/record/parser/base_whoisd.rb", "lib/whois/record/parser/blank.rb", "lib/whois/record/parser/ccwhois.ksregistry.net.rb", "lib/whois/record/parser/ccwhois.verisign-grs.com.rb", "lib/whois/record/parser/example.rb", "lib/whois/record/parser/jobswhois.verisign-grs.com.rb", "lib/whois/record/parser/kero.yachay.pe.rb", "lib/whois/record/parser/whois.1und1.info.rb", "lib/whois/record/parser/whois.aeda.net.ae.rb", "lib/whois/record/parser/whois.aero.rb", "lib/whois/record/parser/whois.afilias-grs.info.rb", "lib/whois/record/parser/whois.afilias.info.rb", "lib/whois/record/parser/whois.ai.rb", "lib/whois/record/parser/whois.arnes.si.rb", "lib/whois/record/parser/whois.ascio.com.rb", "lib/whois/record/parser/whois.ati.tn.rb", "lib/whois/record/parser/whois.audns.net.au.rb", "lib/whois/record/parser/whois.ax.rb", "lib/whois/record/parser/whois.biz.rb", "lib/whois/record/parser/whois.bn.rb", "lib/whois/record/parser/whois.cat.rb", "lib/whois/record/parser/whois.cctld.by.rb", "lib/whois/record/parser/whois.cctld.uz.rb", "lib/whois/record/parser/whois.centralnic.com.rb", "lib/whois/record/parser/whois.cira.ca.rb", "lib/whois/record/parser/whois.cmc.iq.rb", "lib/whois/record/parser/whois.cnnic.cn.rb", "lib/whois/record/parser/whois.co.ca.rb", "lib/whois/record/parser/whois.co.pl.rb", "lib/whois/record/parser/whois.co.ug.rb", "lib/whois/record/parser/whois.comlaude.com.rb", "lib/whois/record/parser/whois.corporatedomains.com.rb", "lib/whois/record/parser/whois.denic.de.rb", "lib/whois/record/parser/whois.dk-hostmaster.dk.rb", "lib/whois/record/parser/whois.dns.be.rb", "lib/whois/record/parser/whois.dns.hr.rb", "lib/whois/record/parser/whois.dns.lu.rb", "lib/whois/record/parser/whois.dns.pl.rb", "lib/whois/record/parser/whois.dns.pt.rb", "lib/whois/record/parser/whois.domain-registry.nl.rb", "lib/whois/record/parser/whois.domain.kg.rb", "lib/whois/record/parser/whois.domainregistry.ie.rb", "lib/whois/record/parser/whois.domainregistry.my.rb", "lib/whois/record/parser/whois.domreg.lt.rb", "lib/whois/record/parser/whois.donuts.co.rb", "lib/whois/record/parser/whois.dot.cf.rb", "lib/whois/record/parser/whois.dot.tk.rb", "lib/whois/record/parser/whois.dotmobiregistry.net.rb", "lib/whois/record/parser/whois.dotpostregistry.net.rb", "lib/whois/record/parser/whois.dreamhost.com.rb", "lib/whois/record/parser/whois.educause.edu.rb", "lib/whois/record/parser/whois.eenet.ee.rb", "lib/whois/record/parser/whois.enom.com.rb", "lib/whois/record/parser/whois.eu.org.rb", "lib/whois/record/parser/whois.eu.rb", "lib/whois/record/parser/whois.fi.rb", "lib/whois/record/parser/whois.gandi.net.rb", "lib/whois/record/parser/whois.gg.rb", "lib/whois/record/parser/whois.godaddy.com.rb", "lib/whois/record/parser/whois.gov.za.rb", "lib/whois/record/parser/whois.hkirc.hk.rb", "lib/whois/record/parser/whois.iam.net.ma.rb", "lib/whois/record/parser/whois.iana.org.rb", "lib/whois/record/parser/whois.iis.nu.rb", "lib/whois/record/parser/whois.iis.se.rb", "lib/whois/record/parser/whois.in.ua.rb", "lib/whois/record/parser/whois.isnic.is.rb", "lib/whois/record/parser/whois.isoc.org.il.rb", "lib/whois/record/parser/whois.ja.net.rb", "lib/whois/record/parser/whois.je.rb", "lib/whois/record/parser/whois.jprs.jp.rb", "lib/whois/record/parser/whois.kenic.or.ke.rb", "lib/whois/record/parser/whois.kr.rb", "lib/whois/record/parser/whois.markmonitor.com.rb", "lib/whois/record/parser/whois.meridiantld.net.rb", "lib/whois/record/parser/whois.monic.mo.rb", "lib/whois/record/parser/whois.museum.rb", "lib/whois/record/parser/whois.na-nic.com.na.rb", "lib/whois/record/parser/whois.nc.rb", "lib/whois/record/parser/whois.netcom.cm.rb", "lib/whois/record/parser/whois.networksolutions.com.rb", "lib/whois/record/parser/whois.nic.ac.rb", "lib/whois/record/parser/whois.nic.af.rb", "lib/whois/record/parser/whois.nic.ag.rb", "lib/whois/record/parser/whois.nic.am.rb", "lib/whois/record/parser/whois.nic.as.rb", "lib/whois/record/parser/whois.nic.asia.rb", "lib/whois/record/parser/whois.nic.at.rb", "lib/whois/record/parser/whois.nic.bj.rb", "lib/whois/record/parser/whois.nic.bo.rb", "lib/whois/record/parser/whois.nic.cd.rb", "lib/whois/record/parser/whois.nic.ch.rb", "lib/whois/record/parser/whois.nic.ci.rb", "lib/whois/record/parser/whois.nic.ck.rb", "lib/whois/record/parser/whois.nic.cl.rb", "lib/whois/record/parser/whois.nic.co.rb", "lib/whois/record/parser/whois.nic.coop.rb", "lib/whois/record/parser/whois.nic.cx.rb", "lib/whois/record/parser/whois.nic.cz.rb", "lib/whois/record/parser/whois.nic.dm.rb", "lib/whois/record/parser/whois.nic.dz.rb", "lib/whois/record/parser/whois.nic.ec.rb", "lib/whois/record/parser/whois.nic.es.rb", "lib/whois/record/parser/whois.nic.fo.rb", "lib/whois/record/parser/whois.nic.fr.rb", "lib/whois/record/parser/whois.nic.gd.rb", "lib/whois/record/parser/whois.nic.gl.rb", "lib/whois/record/parser/whois.nic.gov.rb", "lib/whois/record/parser/whois.nic.gs.rb", "lib/whois/record/parser/whois.nic.hn.rb", "lib/whois/record/parser/whois.nic.ht.rb", "lib/whois/record/parser/whois.nic.hu.rb", "lib/whois/record/parser/whois.nic.im.rb", "lib/whois/record/parser/whois.nic.io.rb", "lib/whois/record/parser/whois.nic.ir.rb", "lib/whois/record/parser/whois.nic.it.rb", "lib/whois/record/parser/whois.nic.ki.rb", "lib/whois/record/parser/whois.nic.kz.rb", "lib/whois/record/parser/whois.nic.la.rb", "lib/whois/record/parser/whois.nic.li.rb", "lib/whois/record/parser/whois.nic.lk.rb", "lib/whois/record/parser/whois.nic.lv.rb", "lib/whois/record/parser/whois.nic.ly.rb", "lib/whois/record/parser/whois.nic.md.rb", "lib/whois/record/parser/whois.nic.me.rb", "lib/whois/record/parser/whois.nic.mg.rb", "lib/whois/record/parser/whois.nic.ms.rb", "lib/whois/record/parser/whois.nic.mu.rb", "lib/whois/record/parser/whois.nic.mx.rb", "lib/whois/record/parser/whois.nic.name.rb", "lib/whois/record/parser/whois.nic.net.ng.rb", "lib/whois/record/parser/whois.nic.net.sa.rb", "lib/whois/record/parser/whois.nic.net.sb.rb", "lib/whois/record/parser/whois.nic.nf.rb", "lib/whois/record/parser/whois.nic.org.uy.rb", "lib/whois/record/parser/whois.nic.pr.rb", "lib/whois/record/parser/whois.nic.priv.at.rb", "lib/whois/record/parser/whois.nic.pw.rb", "lib/whois/record/parser/whois.nic.sh.rb", "lib/whois/record/parser/whois.nic.sl.rb", "lib/whois/record/parser/whois.nic.sm.rb", "lib/whois/record/parser/whois.nic.sn.rb", "lib/whois/record/parser/whois.nic.so.rb", "lib/whois/record/parser/whois.nic.st.rb", "lib/whois/record/parser/whois.nic.tel.rb", "lib/whois/record/parser/whois.nic.tl.rb", "lib/whois/record/parser/whois.nic.tm.rb", "lib/whois/record/parser/whois.nic.tr.rb", "lib/whois/record/parser/whois.nic.travel.rb", "lib/whois/record/parser/whois.nic.tv.rb", "lib/whois/record/parser/whois.nic.uk.rb", "lib/whois/record/parser/whois.nic.us.rb", "lib/whois/record/parser/whois.nic.ve.rb", "lib/whois/record/parser/whois.nic.xxx.rb", "lib/whois/record/parser/whois.norid.no.rb", "lib/whois/record/parser/whois.org.za.rb", "lib/whois/record/parser/whois.pairnic.com.rb", "lib/whois/record/parser/whois.pandi.or.id.rb", "lib/whois/record/parser/whois.pir.org.rb", "lib/whois/record/parser/whois.pnina.ps.rb", "lib/whois/record/parser/whois.register.bg.rb", "lib/whois/record/parser/whois.register.com.rb", "lib/whois/record/parser/whois.registro.br.rb", "lib/whois/record/parser/whois.registry.gy.rb", "lib/whois/record/parser/whois.registry.hm.rb", "lib/whois/record/parser/whois.registry.in.rb", "lib/whois/record/parser/whois.registry.net.za.rb", "lib/whois/record/parser/whois.registry.om.rb", "lib/whois/record/parser/whois.registry.qa.rb", "lib/whois/record/parser/whois.registrypro.pro.rb", "lib/whois/record/parser/whois.ripe.net.rb", "lib/whois/record/parser/whois.rnids.rs.rb", "lib/whois/record/parser/whois.rotld.ro.rb", "lib/whois/record/parser/whois.rrpproxy.net.rb", "lib/whois/record/parser/whois.schlund.info.rb", "lib/whois/record/parser/whois.sgnic.sg.rb", "lib/whois/record/parser/whois.sk-nic.sk.rb", "lib/whois/record/parser/whois.smallregistry.net.rb", "lib/whois/record/parser/whois.srs.net.nz.rb", "lib/whois/record/parser/whois.sx.rb", "lib/whois/record/parser/whois.tcinet.ru.rb", "lib/whois/record/parser/whois.thnic.co.th.rb", "lib/whois/record/parser/whois.tld.ee.rb", "lib/whois/record/parser/whois.tld.sy.rb", "lib/whois/record/parser/whois.tonic.to.rb", "lib/whois/record/parser/whois.tucows.com.rb", "lib/whois/record/parser/whois.twnic.net.tw.rb", "lib/whois/record/parser/whois.tznic.or.tz.rb", "lib/whois/record/parser/whois.ua.rb", "lib/whois/record/parser/whois.udag.net.rb", "lib/whois/record/parser/whois.uniregistry.net.rb", "lib/whois/record/parser/whois.usp.ac.fj.rb", "lib/whois/record/parser/whois.verisign-grs.com.rb", "lib/whois/record/parser/whois.website.ws.rb", "lib/whois/record/parser/whois.wildwestdomains.com.rb", "lib/whois/record/parser/whois.yoursrs.com.rb", "lib/whois/record/parser/whois.za.net.rb", "lib/whois/record/parser/whois.za.org.rb", "lib/whois/record/parser/whois1.nic.bi.rb", "lib/whois/record/part.rb", "lib/whois/record/registrar.rb", "lib/whois/record/scanners", "lib/whois/record/scanners/base.rb", "lib/whois/record/scanners/base_afilias.rb", "lib/whois/record/scanners/base_cocca2.rb", "lib/whois/record/scanners/base_icann_compliant.rb", "lib/whois/record/scanners/base_iisse.rb", "lib/whois/record/scanners/base_shared1.rb", "lib/whois/record/scanners/base_shared2.rb", "lib/whois/record/scanners/base_shared3.rb", "lib/whois/record/scanners/base_whoisd.rb", "lib/whois/record/scanners/iana.rb", "lib/whois/record/scanners/scannable.rb", "lib/whois/record/scanners/verisign.rb", "lib/whois/record/scanners/whois.ati.tn.rb", "lib/whois/record/scanners/whois.audns.net.au.rb", "lib/whois/record/scanners/whois.cctld.by.rb", "lib/whois/record/scanners/whois.centralnic.com.rb", "lib/whois/record/scanners/whois.cira.ca.rb", "lib/whois/record/scanners/whois.cnnic.cn.rb", "lib/whois/record/scanners/whois.denic.de.rb", "lib/whois/record/scanners/whois.dns.hr.rb", "lib/whois/record/scanners/whois.domainregistry.ie.rb", "lib/whois/record/scanners/whois.fi.rb", "lib/whois/record/scanners/whois.nc.rb", "lib/whois/record/scanners/whois.nic.cz.rb", "lib/whois/record/scanners/whois.nic.it.rb", "lib/whois/record/scanners/whois.pir.org.rb", "lib/whois/record/scanners/whois.registry.net.za.rb", "lib/whois/record/scanners/whois.rnids.rs.rb", "lib/whois/record/scanners/whois.smallregistry.net.rb", "lib/whois/record/scanners/whois.srs.net.nz.rb", "lib/whois/record/scanners/whois.sx.rb", "lib/whois/record/scanners/whois.tucows.com.rb", "lib/whois/record/scanners/whois.yoursrs.com.rb", "lib/whois/record/super_struct.rb", "lib/whois/server", "lib/whois/server.rb", "lib/whois/server/adapters", "lib/whois/server/adapters/afilias.rb", "lib/whois/server/adapters/arin.rb", "lib/whois/server/adapters/arpa.rb", "lib/whois/server/adapters/base.rb", "lib/whois/server/adapters/formatted.rb", "lib/whois/server/adapters/none.rb", "lib/whois/server/adapters/not_implemented.rb", "lib/whois/server/adapters/standard.rb", "lib/whois/server/adapters/verisign.rb", "lib/whois/server/adapters/web.rb", "lib/whois/server/socket_handler.rb", "lib/whois/version.rb", "whois.gemspec"]
16
16
  s.homepage = "http://www.ruby-whois.org/"
17
17
  s.licenses = ["MIT"]
18
18
  s.post_install_message = "********************************************************************************\n\n Thank you for installing the whois gem!\n\n If you like this gem, please support the project.\n http://pledgie.com/campaigns/11383\n\n Does your project or organization use this gem? Add it to the apps wiki.\n https://github.com/weppos/whois/wiki/apps\n\n Are you looking for a quick and convenient way to perform WHOIS queries?\n Check out RoboWhois WHOIS API.\n https://www.robowhois.com/\n\n********************************************************************************\n"
@@ -27,20 +27,20 @@ Gem::Specification.new do |s|
27
27
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
28
28
  s.add_runtime_dependency(%q<activesupport>, [">= 3"])
29
29
  s.add_development_dependency(%q<rake>, [">= 0"])
30
- s.add_development_dependency(%q<rspec>, [">= 0"])
30
+ s.add_development_dependency(%q<rspec>, ["~> 2.0"])
31
31
  s.add_development_dependency(%q<mocha>, [">= 0"])
32
32
  s.add_development_dependency(%q<yard>, [">= 0"])
33
33
  else
34
34
  s.add_dependency(%q<activesupport>, [">= 3"])
35
35
  s.add_dependency(%q<rake>, [">= 0"])
36
- s.add_dependency(%q<rspec>, [">= 0"])
36
+ s.add_dependency(%q<rspec>, ["~> 2.0"])
37
37
  s.add_dependency(%q<mocha>, [">= 0"])
38
38
  s.add_dependency(%q<yard>, [">= 0"])
39
39
  end
40
40
  else
41
41
  s.add_dependency(%q<activesupport>, [">= 3"])
42
42
  s.add_dependency(%q<rake>, [">= 0"])
43
- s.add_dependency(%q<rspec>, [">= 0"])
43
+ s.add_dependency(%q<rspec>, ["~> 2.0"])
44
44
  s.add_dependency(%q<mocha>, [">= 0"])
45
45
  s.add_dependency(%q<yard>, [">= 0"])
46
46
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: whois
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.5.3
4
+ version: 3.5.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Simone Carletti
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-04-25 00:00:00.000000000 Z
11
+ date: 2014-06-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -42,16 +42,16 @@ dependencies:
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - ~>
46
46
  - !ruby/object:Gem::Version
47
- version: '0'
47
+ version: '2.0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '>='
52
+ - - ~>
53
53
  - !ruby/object:Gem::Version
54
- version: '0'
54
+ version: '2.0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: mocha
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -121,12 +121,12 @@ files:
121
121
  - lib/whois/record/parser/base_verisign.rb
122
122
  - lib/whois/record/parser/base_whoisd.rb
123
123
  - lib/whois/record/parser/blank.rb
124
+ - lib/whois/record/parser/ccwhois.ksregistry.net.rb
124
125
  - lib/whois/record/parser/ccwhois.verisign-grs.com.rb
125
126
  - lib/whois/record/parser/example.rb
126
127
  - lib/whois/record/parser/jobswhois.verisign-grs.com.rb
127
128
  - lib/whois/record/parser/kero.yachay.pe.rb
128
129
  - lib/whois/record/parser/whois.1und1.info.rb
129
- - lib/whois/record/parser/whois.adamsnames.tc.rb
130
130
  - lib/whois/record/parser/whois.aeda.net.ae.rb
131
131
  - lib/whois/record/parser/whois.aero.rb
132
132
  - lib/whois/record/parser/whois.afilias-grs.info.rb
@@ -1,64 +0,0 @@
1
- #--
2
- # Ruby Whois
3
- #
4
- # An intelligent pure Ruby WHOIS client and parser.
5
- #
6
- # Copyright (c) 2009-2014 Simone Carletti <weppos@weppos.net>
7
- #++
8
-
9
-
10
- require 'whois/record/parser/base'
11
-
12
-
13
- module Whois
14
- class Record
15
- class Parser
16
-
17
- #
18
- # = whois.adamsnames.tc
19
- #
20
- # Parser for the whois.adamsnames.tc server.
21
- #
22
- # NOTE: This parser is just a stub and provides only a few basic methods
23
- # to check for domain availability and get domain status.
24
- # Please consider to contribute implementing missing methods.
25
- # See WhoisNicIt parser for an explanation of all available methods
26
- # and examples.
27
- #
28
- class WhoisAdamsnamesTc < Base
29
-
30
- property_supported :status do
31
- if available?
32
- :available
33
- else
34
- :registered
35
- end
36
- end
37
-
38
- property_supported :available? do
39
- !!(content_for_scanner =~ /is not registered/)
40
- end
41
-
42
- property_supported :registered? do
43
- !available?
44
- end
45
-
46
-
47
- property_not_supported :created_on
48
-
49
- property_not_supported :updated_on
50
-
51
- property_not_supported :expires_on
52
-
53
-
54
- property_supported :nameservers do
55
- content_for_scanner.scan(/\s+ns\s+(.+?)\s+\n/).flatten.map do |name|
56
- Record::Nameserver.new(:name => name)
57
- end
58
- end
59
-
60
- end
61
-
62
- end
63
- end
64
- end