nicinfo 1.3.0.pre.alpha1 → 1.5.0
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.
- checksums.yaml +5 -5
- data/lib/nicinfo/autnum.rb +7 -7
- data/lib/nicinfo/cache.rb +0 -30
- data/lib/nicinfo/common_json.rb +34 -14
- data/lib/nicinfo/config.rb +19 -7
- data/lib/nicinfo/constants.rb +18 -2
- data/lib/nicinfo/data_tree.rb +3 -3
- data/lib/nicinfo/demo/domain-dnr.json +2 -2
- data/lib/nicinfo/demo/entities.json +4 -4
- data/lib/nicinfo/demo/entity-dnr.json +2 -2
- data/lib/nicinfo/demo/entity-rir.json +2 -2
- data/lib/nicinfo/demo/error-code.json +30 -1
- data/lib/nicinfo/demo/nameservers.json +8 -7
- data/lib/nicinfo/demo/ns-simple.json +2 -2
- data/lib/nicinfo/demo/ns-very-simple.json +2 -2
- data/lib/nicinfo/demo/ns.json +5 -5
- data/lib/nicinfo/domain.rb +7 -7
- data/lib/nicinfo/entity.rb +98 -87
- data/lib/nicinfo/error_code.rb +15 -18
- data/lib/nicinfo/factory.rb +56 -0
- data/lib/nicinfo/ip.rb +14 -6
- data/lib/nicinfo/jcr/rdap.jcr +807 -0
- data/lib/nicinfo/jcr/strict.jcr +238 -0
- data/lib/nicinfo/nicinfo_logger.rb +145 -46
- data/lib/nicinfo/nicinfo_main.rb +154 -45
- data/lib/nicinfo/notices.rb +30 -37
- data/lib/nicinfo/ns.rb +8 -8
- data/lib/nicinfo/utils.rb +8 -2
- metadata +36 -12
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 7ecaa53b9df142ebd216e7dc88de56ab2f811c4339e9f075c4088f26d5cecd83
|
4
|
+
data.tar.gz: af818b3b4a62989a1a4b4f8379601ca184461ad6483361070ac22a021ad83b18
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 035ad570ca83474c8a2256ca0107507322aacdd7987cdde9c63332158e2cb59f1c2e100d30e384648b711a2e73e77a3d3a36a1e6e65789de74a4154557e23610
|
7
|
+
data.tar.gz: 3d10ed8e6f05f03b7d6b2124e831e30e7684a7b505791265db4170ad117f574e4a53977aa8e0ed1abd97fef7f33cdee8f819ac620eaba06e1d4e3adb6a908047
|
data/lib/nicinfo/autnum.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Copyright (C) 2011
|
1
|
+
# Copyright (C) 2011-2017 American Registry for Internet Numbers
|
2
2
|
#
|
3
3
|
# Permission to use, copy, modify, and/or distribute this software for any
|
4
4
|
# purpose with or without fee is hereby granted, provided that the above
|
@@ -22,7 +22,7 @@ require 'nicinfo/data_tree'
|
|
22
22
|
module NicInfo
|
23
23
|
|
24
24
|
def NicInfo.display_autnum json_data, config, data_tree
|
25
|
-
autnum =
|
25
|
+
autnum = config.factory.new_autnum.process( json_data )
|
26
26
|
NicInfo::display_object_with_entities( autnum, config, data_tree )
|
27
27
|
end
|
28
28
|
|
@@ -47,15 +47,15 @@ module NicInfo
|
|
47
47
|
def display
|
48
48
|
@config.logger.start_data_item
|
49
49
|
@config.logger.data_title "[ AS NUMBER ]"
|
50
|
-
@config.logger.terse "Handle", NicInfo::get_handle( @objectclass )
|
51
|
-
@config.logger.extra "Object Class Name", NicInfo::get_object_class_name( @objectclass )
|
50
|
+
@config.logger.terse "Handle", NicInfo::get_handle( @objectclass ), NicInfo::AttentionType::SUCCESS
|
51
|
+
@config.logger.extra "Object Class Name", NicInfo::get_object_class_name( @objectclass, "autnum", @config )
|
52
52
|
endNum = NicInfo.get_endAutnum @objectclass
|
53
53
|
startNum = NicInfo.get_startAutnum @objectclass
|
54
54
|
if endNum
|
55
|
-
@config.logger.terse "Start AS Number", startNum
|
56
|
-
@config.logger.terse "End AS Number", endNum
|
55
|
+
@config.logger.terse "Start AS Number", startNum, NicInfo::AttentionType::SUCCESS
|
56
|
+
@config.logger.terse "End AS Number", endNum, NicInfo::AttentionType::SUCCESS
|
57
57
|
else
|
58
|
-
@config.logger.terse "AS Number", startNum
|
58
|
+
@config.logger.terse "AS Number", startNum, NicInfo::AttentionType::SUCCESS
|
59
59
|
end
|
60
60
|
@config.logger.extra "Name", NicInfo.get_name( @objectclass )
|
61
61
|
@config.logger.terse "Country", NicInfo.get_country( @objectclass )
|
data/lib/nicinfo/cache.rb
CHANGED
@@ -106,36 +106,6 @@ module NicInfo
|
|
106
106
|
return count
|
107
107
|
end
|
108
108
|
|
109
|
-
def get_last
|
110
|
-
cache_files = Dir::entries(@config.rdap_cache_dir)
|
111
|
-
last_file = nil
|
112
|
-
last_file_mtime = nil
|
113
|
-
cache_files.each do |file|
|
114
|
-
full_file_name = File.join(@config.rdap_cache_dir, file)
|
115
|
-
if !file.start_with?(".")
|
116
|
-
mtime = File.mtime(full_file_name)
|
117
|
-
if last_file == nil
|
118
|
-
last_file = full_file_name
|
119
|
-
last_file_mtime = mtime
|
120
|
-
elsif mtime > last_file_mtime
|
121
|
-
last_file = full_file_name
|
122
|
-
last_file_mtime = mtime
|
123
|
-
end
|
124
|
-
end
|
125
|
-
end
|
126
|
-
if last_file
|
127
|
-
f = File.open(last_file, "r")
|
128
|
-
data = ''
|
129
|
-
f.each_line do |line|
|
130
|
-
data += line
|
131
|
-
end
|
132
|
-
f.close
|
133
|
-
return [last_file, last_file_mtime, data]
|
134
|
-
end
|
135
|
-
#else
|
136
|
-
return nil
|
137
|
-
end
|
138
|
-
|
139
109
|
end
|
140
110
|
|
141
111
|
end
|
data/lib/nicinfo/common_json.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Copyright (C) 2011
|
1
|
+
# Copyright (C) 2011-2017 American Registry for Internet Numbers
|
2
2
|
#
|
3
3
|
# Permission to use, copy, modify, and/or distribute this software for any
|
4
4
|
# purpose with or without fee is hereby granted, provided that the above
|
@@ -67,7 +67,7 @@ module NicInfo
|
|
67
67
|
entities = Array.new
|
68
68
|
json_entities = NicInfo::get_entitites( objectclass )
|
69
69
|
json_entities.each do |json_entity|
|
70
|
-
entity =
|
70
|
+
entity = @config.factory.new_entity
|
71
71
|
entity.process( json_entity )
|
72
72
|
entities << entity
|
73
73
|
end if json_entities
|
@@ -76,14 +76,15 @@ module NicInfo
|
|
76
76
|
|
77
77
|
def display_remarks objectclass
|
78
78
|
remarks = objectclass[ "remarks" ]
|
79
|
-
if
|
80
|
-
@config.
|
81
|
-
|
82
|
-
|
83
|
-
|
79
|
+
if remarks
|
80
|
+
excessive_notice = @config.factory.new_notices.is_excessive_notice(remarks)
|
81
|
+
if (excessive_notice && (@config.logger.data_amount != NicInfo::DataAmount::EXTRA_DATA))
|
82
|
+
@config.logger.datum "Excessive Remarks", "Use \"-V\" or \"--data extra\" to see them."
|
83
|
+
else
|
84
|
+
if remarks.instance_of?(Array)
|
84
85
|
remarks.each do |remark|
|
85
|
-
if remark.instance_of?(
|
86
|
-
title = remark[
|
86
|
+
if remark.instance_of?(Hash)
|
87
|
+
title = remark["title"]
|
87
88
|
@config.logger.datum "Remarks", "-- #{title} --" if title
|
88
89
|
descriptions = NicInfo::get_descriptions remark, @config
|
89
90
|
i = 1
|
@@ -97,11 +98,11 @@ module NicInfo
|
|
97
98
|
end if descriptions
|
98
99
|
links = NicInfo::get_links remark, @config
|
99
100
|
if links
|
100
|
-
@config.logger.datum "More", NicInfo::get_alternate_link(
|
101
|
-
@config.logger.datum "About", NicInfo::get_about_link(
|
102
|
-
@config.logger.datum "TOS", NicInfo::get_tos_link(
|
103
|
-
@config.logger.datum "(C)", NicInfo::get_copyright_link(
|
104
|
-
@config.logger.datum "License", NicInfo::get_license_link(
|
101
|
+
@config.logger.datum "More", NicInfo::get_alternate_link(links)
|
102
|
+
@config.logger.datum "About", NicInfo::get_about_link(links)
|
103
|
+
@config.logger.datum "TOS", NicInfo::get_tos_link(links)
|
104
|
+
@config.logger.datum "(C)", NicInfo::get_copyright_link(links)
|
105
|
+
@config.logger.datum "License", NicInfo::get_license_link(links)
|
105
106
|
end
|
106
107
|
else
|
107
108
|
@config.conf_msgs << "remark is not an object."
|
@@ -203,6 +204,25 @@ module NicInfo
|
|
203
204
|
end
|
204
205
|
end
|
205
206
|
|
207
|
+
def display_simple_links links
|
208
|
+
if links
|
209
|
+
if links.instance_of?( Array )
|
210
|
+
alternate = NicInfo.get_alternate_link links
|
211
|
+
@config.logger.prose NicInfo::DataAmount::NORMAL_DATA, "More", alternate, NicInfo::AttentionType::SECONDARY if alternate
|
212
|
+
about = NicInfo.get_about_link links
|
213
|
+
@config.logger.prose NicInfo::DataAmount::NORMAL_DATA, "About", about, NicInfo::AttentionType::SECONDARY if about
|
214
|
+
tos = NicInfo.get_tos_link links
|
215
|
+
@config.logger.prose NicInfo::DataAmount::NORMAL_DATA, "TOS", tos, NicInfo::AttentionType::SECONDARY if tos
|
216
|
+
copyright = NicInfo.get_copyright_link links
|
217
|
+
@config.logger.prose NicInfo::DataAmount::NORMAL_DATA, "(C)", copyright, NicInfo::AttentionType::SECONDARY if copyright
|
218
|
+
license = NicInfo.get_license_link links
|
219
|
+
@config.logger.prose NicInfo::DataAmount::NORMAL_DATA, "License", license, NicInfo::AttentionType::SECONDARY if license
|
220
|
+
else
|
221
|
+
@config.conf_msgs << "'links' is not an array."
|
222
|
+
end
|
223
|
+
end
|
224
|
+
end
|
225
|
+
|
206
226
|
end
|
207
227
|
|
208
228
|
class EventActor
|
data/lib/nicinfo/config.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Copyright (C) 2011
|
1
|
+
# Copyright (C) 2011-2017 American Registry for Internet Numbers
|
2
2
|
#
|
3
3
|
# Permission to use, copy, modify, and/or distribute this software for any
|
4
4
|
# purpose with or without fee is hereby granted, provided that the above
|
@@ -15,9 +15,10 @@
|
|
15
15
|
|
16
16
|
require 'fileutils'
|
17
17
|
require 'time'
|
18
|
-
require 'nicinfo/nicinfo_logger'
|
19
18
|
require 'yaml'
|
20
19
|
require 'ostruct'
|
20
|
+
require 'nicinfo/nicinfo_logger'
|
21
|
+
require 'nicinfo/factory'
|
21
22
|
require 'nicinfo/constants'
|
22
23
|
|
23
24
|
module NicInfo
|
@@ -25,7 +26,7 @@ module NicInfo
|
|
25
26
|
# Handles configuration of the application
|
26
27
|
class Config
|
27
28
|
|
28
|
-
attr_accessor :logger, :config, :rdap_cache_dir, :options, :conf_msgs, :rdap_bootstrap_dir
|
29
|
+
attr_accessor :logger, :config, :rdap_cache_dir, :options, :conf_msgs, :rdap_bootstrap_dir, :factory
|
29
30
|
|
30
31
|
# Intializes the configuration with a place to look for the config file
|
31
32
|
# If the file doesn't exist, a default is used.
|
@@ -36,6 +37,7 @@ module NicInfo
|
|
36
37
|
@app_data = app_data
|
37
38
|
@logger = NicInfo::Logger.new
|
38
39
|
@conf_msgs = Array.new
|
40
|
+
@factory = NicInfo::Factory.new( self )
|
39
41
|
|
40
42
|
config_file_name = Config.formulate_config_file_name( @app_data )
|
41
43
|
if File.exist?( config_file_name )
|
@@ -99,7 +101,7 @@ module NicInfo
|
|
99
101
|
if config_version == nil || config_version < NicInfo::CONFIG_VERSION
|
100
102
|
# if a reset hasn't been asked for
|
101
103
|
if !@options.reset_config
|
102
|
-
@logger.mesg( "Your configuration is old. Use --reset to create a new one.")
|
104
|
+
@logger.mesg( "Your configuration is old. Use --reset to create a new one.", NicInfo::AttentionType::ERROR )
|
103
105
|
end
|
104
106
|
end
|
105
107
|
end
|
@@ -222,6 +224,9 @@ module NicInfo
|
|
222
224
|
@logger.auto_wrap=output[ NicInfo::AUTO_WRAP ]
|
223
225
|
@logger.default_width=output[ NicInfo::DEFAULT_WIDTH ]
|
224
226
|
@logger.detect_width=output[ NicInfo::DETECT_WIDTH ]
|
227
|
+
|
228
|
+
@logger.color_scheme = output[ NicInfo::COLOR_SCHEME ]
|
229
|
+
@logger.validate_color_scheme
|
225
230
|
end
|
226
231
|
|
227
232
|
def self.clean
|
@@ -231,7 +236,7 @@ module NicInfo
|
|
231
236
|
end
|
232
237
|
|
233
238
|
def self.formulate_app_data_dir
|
234
|
-
if
|
239
|
+
if Gem.win_platform?
|
235
240
|
data_dir = File.join(ENV['APPDATA'], "NicInfo")
|
236
241
|
elsif RUBY_PLATFORM =~ /linux/
|
237
242
|
data_dir = File.join(ENV['HOME'], ".NicInfo")
|
@@ -282,6 +287,13 @@ output:
|
|
282
287
|
# or cannot be detected
|
283
288
|
default_width: 80
|
284
289
|
|
290
|
+
# The color scheme to use. Possible values are
|
291
|
+
# - DARK for terminals with dark background
|
292
|
+
# - LIGHT for terminals with light background
|
293
|
+
# - NONE for no color
|
294
|
+
# color is turned off automatically if a pager is used and the pager is not 'less'.
|
295
|
+
color_scheme: DARK
|
296
|
+
|
285
297
|
cache:
|
286
298
|
|
287
299
|
# The maximum age an item from the cache will be used.
|
@@ -303,9 +315,9 @@ cache:
|
|
303
315
|
bootstrap:
|
304
316
|
|
305
317
|
# The base or bootstrap URL. Specifying this will bypass all built-in bootstrapping.
|
306
|
-
#base_url: https://rdap.arin.net/bootstrap
|
318
|
+
#base_url: https://rdap-bootstrap.arin.net/bootstrap
|
307
319
|
|
308
|
-
help_root_url: https://rdap.arin.net/bootstrap
|
320
|
+
help_root_url: https://rdap-bootstrap.arin.net/bootstrap
|
309
321
|
|
310
322
|
entity_root_url: https://rdap.arin.net/registry
|
311
323
|
|
data/lib/nicinfo/constants.rb
CHANGED
@@ -18,7 +18,7 @@
|
|
18
18
|
|
19
19
|
module NicInfo
|
20
20
|
|
21
|
-
VERSION = "1.
|
21
|
+
VERSION = "1.5.0"
|
22
22
|
VERSION_LABEL = "NicInfo v." + VERSION
|
23
23
|
COPYRIGHT = "Copyright (c) 2011-2017 American Registry for Internet Numbers (ARIN)"
|
24
24
|
CONFIG_VERSION = 4
|
@@ -43,7 +43,7 @@ module NicInfo
|
|
43
43
|
IPV6_REGEX = /\A(?:[0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}\z/
|
44
44
|
IPV6_HEXCOMPRESS_REGEX = /\A((?:[0-9A-Fa-f]{1,4}(?::[0-9A-Fa-f]{1,4})*)?)::((?:[0-9A-Fa-f]{1,4}(?::[0-9A-Fa-f]{1,4})*)?)\z/
|
45
45
|
|
46
|
-
#File Name Constants
|
46
|
+
# File Name Constants
|
47
47
|
LASTTREE_YAML = "lasttree.yaml"
|
48
48
|
DEMO_DIR = "demo"
|
49
49
|
BOOTSTRAP_FILE_DIR = "bsfiles"
|
@@ -53,6 +53,21 @@ module NicInfo
|
|
53
53
|
IPV4_BOOTSTRAP = "ipv4.json"
|
54
54
|
IPV6_BOOTSTRAP = "ipv6.json"
|
55
55
|
|
56
|
+
# JCR Constants
|
57
|
+
JCR_DIR = "jcr"
|
58
|
+
RDAP_JCR = "rdap.jcr"
|
59
|
+
STRICT_RDAP_JCR = "strict.jcr"
|
60
|
+
JCR_ROOT_ENTITY = "entity_response"
|
61
|
+
JCR_ROOT_NAMESERVER = "nameserver_response"
|
62
|
+
JCR_ROOT_DOMAIN = "domain_response"
|
63
|
+
JCR_ROOT_NETWORK = "network_response"
|
64
|
+
JCR_ROOT_AUTNUM = "autnum_response"
|
65
|
+
JCR_ROOT_ERROR = "error_response"
|
66
|
+
JCR_ROOT_HELP = "help_response"
|
67
|
+
JCR_ROOT_DOMAIN_SEARCH = "domainSearch_response"
|
68
|
+
JCR_ROOT_NAMESERVER_SEARCH = "nameserverSearch_response"
|
69
|
+
JCR_ROOT_ENTITY_SEARCH = "entitySearch_response"
|
70
|
+
|
56
71
|
# Config constants
|
57
72
|
OUTPUT = "output"
|
58
73
|
MESSAGES = "messages"
|
@@ -63,6 +78,7 @@ module NicInfo
|
|
63
78
|
AUTO_WRAP = "auto_wrap"
|
64
79
|
DETECT_WIDTH = "detect_width"
|
65
80
|
DEFAULT_WIDTH = "default_width"
|
81
|
+
COLOR_SCHEME = "color_scheme"
|
66
82
|
CACHE = "cache"
|
67
83
|
CACHE_EXPIRY = "cache_expiry"
|
68
84
|
CACHE_EVICTION = "cache_eviction"
|
data/lib/nicinfo/data_tree.rb
CHANGED
@@ -144,7 +144,7 @@ module NicInfo
|
|
144
144
|
end
|
145
145
|
num_count = 1
|
146
146
|
@logger.start_data_item if print_tree
|
147
|
-
@logger.prose( @data_amount, "[ RESPONSE DATA ]", " ")
|
147
|
+
@logger.prose( @data_amount, "[ RESPONSE DATA ]", " ", NicInfo::AttentionType::SUCCESS )
|
148
148
|
@roots.each do |root|
|
149
149
|
if annotate
|
150
150
|
if root.alert
|
@@ -157,7 +157,7 @@ module NicInfo
|
|
157
157
|
else
|
158
158
|
s = root.to_s
|
159
159
|
end
|
160
|
-
retval = @logger.log_tree_item( @data_amount, s )
|
160
|
+
retval = @logger.log_tree_item( @data_amount, s, NicInfo::AttentionType::SUCCESS )
|
161
161
|
if annotate
|
162
162
|
prefix = " "
|
163
163
|
child_num = 1
|
@@ -193,7 +193,7 @@ module NicInfo
|
|
193
193
|
child_num = 0
|
194
194
|
end
|
195
195
|
prefix = prefix.tr( "`", " ") + spacer + ( node == parent.children.last ? "`" : "|" )
|
196
|
-
@logger.log_tree_item( @data_amount, prefix + num_str + node.to_s )
|
196
|
+
@logger.log_tree_item( @data_amount, prefix + num_str + node.to_s, NicInfo::AttentionType::SUCCESS )
|
197
197
|
node.children.each do |child|
|
198
198
|
rprint( child_num, node, child, prefix )
|
199
199
|
child_num += 1 if child_num > 0
|
@@ -506,9 +506,9 @@
|
|
506
506
|
],
|
507
507
|
"links":[
|
508
508
|
{
|
509
|
-
"value":"https://rdap.arin.net/bootstrap/domain/xn--fo-5ja.example",
|
509
|
+
"value":"https://rdap-bootstrap.arin.net/bootstrap/domain/xn--fo-5ja.example",
|
510
510
|
"rel":"self",
|
511
|
-
"href":"https://rdap.arin.net/bootstrap/domain/xn--fo-5ja.example"
|
511
|
+
"href":"https://rdap-bootstrap.arin.net/bootstrap/domain/xn--fo-5ja.example"
|
512
512
|
}
|
513
513
|
],
|
514
514
|
"port43":"whois.example.net",
|
@@ -147,9 +147,9 @@
|
|
147
147
|
],
|
148
148
|
"links": [
|
149
149
|
{
|
150
|
-
"value": "https://rdap.arin.net/bootstrap/entity/entity-dnr",
|
150
|
+
"value": "https://rdap-bootstrap.arin.net/bootstrap/entity/entity-dnr",
|
151
151
|
"rel": "self",
|
152
|
-
"href": "https://rdap.arin.net/bootstrap/entity/entity-dnr"
|
152
|
+
"href": "https://rdap-bootstrap.arin.net/bootstrap/entity/entity-dnr"
|
153
153
|
}
|
154
154
|
],
|
155
155
|
"port43": "whois.example.net",
|
@@ -286,9 +286,9 @@
|
|
286
286
|
],
|
287
287
|
"links": [
|
288
288
|
{
|
289
|
-
"value": "https://rdap.arin.net/bootstrap/entity/foo1",
|
289
|
+
"value": "https://rdap-bootstrap.arin.net/bootstrap/entity/foo1",
|
290
290
|
"rel": "self",
|
291
|
-
"href": "https://rdap.arin.net/bootstrap/entity/foo1"
|
291
|
+
"href": "https://rdap-bootstrap.arin.net/bootstrap/entity/foo1"
|
292
292
|
}
|
293
293
|
],
|
294
294
|
"events": [
|
@@ -123,9 +123,9 @@
|
|
123
123
|
],
|
124
124
|
"links":[
|
125
125
|
{
|
126
|
-
"value":"https://rdap.arin.net/bootstrap/entity/entity-dnr",
|
126
|
+
"value":"https://rdap-bootstrap.arin.net/bootstrap/entity/entity-dnr",
|
127
127
|
"rel":"self",
|
128
|
-
"href":"https://rdap.arin.net/bootstrap/entity/entity-dnr"
|
128
|
+
"href":"https://rdap-bootstrap.arin.net/bootstrap/entity/entity-dnr"
|
129
129
|
}
|
130
130
|
],
|
131
131
|
"port43":"whois.example.net",
|
@@ -132,9 +132,9 @@
|
|
132
132
|
],
|
133
133
|
"links":[
|
134
134
|
{
|
135
|
-
"value":"https://rdap.arin.net/bootstrap/entity/foo1",
|
135
|
+
"value":"https://rdap-bootstrap.arin.net/bootstrap/entity/foo1",
|
136
136
|
"rel":"self",
|
137
|
-
"href":"https://rdap.arin.net/bootstrap/entity/foo1"
|
137
|
+
"href":"https://rdap-bootstrap.arin.net/bootstrap/entity/foo1"
|
138
138
|
}
|
139
139
|
],
|
140
140
|
"events":[
|
@@ -14,12 +14,41 @@
|
|
14
14
|
],
|
15
15
|
"links":[
|
16
16
|
{
|
17
|
-
"value":"https://rdap.arin.net/bootstrap/entity/restricted",
|
17
|
+
"value":"https://rdap-bootstrap.arin.net/bootstrap/entity/restricted",
|
18
18
|
"rel":"terms-of-service",
|
19
19
|
"type":"text/html",
|
20
20
|
"href":"http://www.example.com/tos.html"
|
21
21
|
}
|
22
22
|
]
|
23
|
+
},
|
24
|
+
{
|
25
|
+
"title":"Copyright",
|
26
|
+
"description":[
|
27
|
+
"This test data is Copyright (C) 2015-2018 ARIN."
|
28
|
+
],
|
29
|
+
"links":[
|
30
|
+
{
|
31
|
+
"value":"https://rdap-bootstrap.arin.net/bootstrap/entity/restricted",
|
32
|
+
"rel":"copyright",
|
33
|
+
"type":"text/html",
|
34
|
+
"href":"http://www.example.com/copyright.html"
|
35
|
+
}
|
36
|
+
]
|
37
|
+
},
|
38
|
+
{
|
39
|
+
"title":"About",
|
40
|
+
"description":[
|
41
|
+
"Questions regarding ARIN's RDAP service should be sent to arin-tech-discuss@arin.net.",
|
42
|
+
"See our mailing list for more info."
|
43
|
+
],
|
44
|
+
"links":[
|
45
|
+
{
|
46
|
+
"value":"https://rdap-bootstrap.arin.net/bootstrap/entity/restricted",
|
47
|
+
"rel":"about",
|
48
|
+
"type":"text/html",
|
49
|
+
"href":"https://lists.arin.net/mailman/listinfo/arin-tech-discuss"
|
50
|
+
}
|
51
|
+
]
|
23
52
|
}
|
24
53
|
],
|
25
54
|
"errorCode":418,
|
@@ -27,8 +27,9 @@
|
|
27
27
|
"nameserverSearchResults": [
|
28
28
|
{
|
29
29
|
"handle":"XXXX",
|
30
|
+
"objectClassName" : "nameserver",
|
30
31
|
"ldhName":"ns1.xn--fo-5ja.example",
|
31
|
-
"unicodeName":"foo.example",
|
32
|
+
"unicodeName":"ns1.foo.example",
|
32
33
|
"status":[ "active" ],
|
33
34
|
"ipAddresses":{
|
34
35
|
"v4":[ "192.0.2.1", "192.0.2.2" ],
|
@@ -44,9 +45,9 @@
|
|
44
45
|
],
|
45
46
|
"links":[
|
46
47
|
{
|
47
|
-
"value":"https://rdap.arin.net/bootstrap/nameserver/ns1.xn--fo-5ja.example",
|
48
|
+
"value":"https://rdap-bootstrap.arin.net/bootstrap/nameserver/ns1.xn--fo-5ja.example",
|
48
49
|
"rel":"self",
|
49
|
-
"href":"https://rdap.arin.net/bootstrap/nameserver/ns1.xn--fo-5ja.example"
|
50
|
+
"href":"https://rdap-bootstrap.arin.net/bootstrap/nameserver/ns1.xn--fo-5ja.example"
|
50
51
|
}
|
51
52
|
],
|
52
53
|
"port43":"whois.example.net",
|
@@ -229,9 +230,9 @@
|
|
229
230
|
},
|
230
231
|
{
|
231
232
|
"handle":"XXXX2",
|
232
|
-
"objectClassName":"
|
233
|
+
"objectClassName":"nameserver",
|
233
234
|
"ldhName":"ns1.xn--fo-5ja.example",
|
234
|
-
"unicodeName":"foo.example",
|
235
|
+
"unicodeName":"ns1.foo.example",
|
235
236
|
"status":[ "active" ],
|
236
237
|
"ipAddresses":{
|
237
238
|
"v4":[ "192.0.2.1", "192.0.2.2" ],
|
@@ -247,9 +248,9 @@
|
|
247
248
|
],
|
248
249
|
"links":[
|
249
250
|
{
|
250
|
-
"value":"https://rdap.arin.net/bootstrap/nameserver/ns1.xn--fo-5ja.example",
|
251
|
+
"value":"https://rdap-bootstrap.arin.net/bootstrap/nameserver/ns1.xn--fo-5ja.example",
|
251
252
|
"rel":"self",
|
252
|
-
"href":"https://rdap.arin.net/bootstrap/nameserver/ns1.xn--fo-5ja.example"
|
253
|
+
"href":"https://rdap-bootstrap.arin.net/bootstrap/nameserver/ns1.xn--fo-5ja.example"
|
253
254
|
}
|
254
255
|
],
|
255
256
|
"port43":"whois.example.net",
|