dnsruby 1.60.0 → 1.60.1
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 +4 -4
- data/RELEASE_NOTES.md +14 -0
- data/lib/dnsruby/bit_mapping.rb +1 -1
- data/lib/dnsruby/code_mapper.rb +3 -3
- data/lib/dnsruby/code_mappers.rb +4 -2
- data/lib/dnsruby/config.rb +1 -1
- data/lib/dnsruby/dnssec.rb +1 -1
- data/lib/dnsruby/packet_sender.rb +8 -5
- data/lib/dnsruby/resolver.rb +6 -6
- data/lib/dnsruby/resource/APL.rb +146 -0
- data/lib/dnsruby/resource/CAA.rb +70 -0
- data/lib/dnsruby/resource/IN.rb +4 -1
- data/lib/dnsruby/resource/MX.rb +3 -0
- data/lib/dnsruby/resource/OPT.rb +1 -1
- data/lib/dnsruby/resource/RRSIG.rb +1 -1
- data/lib/dnsruby/resource/TLSA.rb +149 -0
- data/lib/dnsruby/resource/domain_name.rb +1 -1
- data/lib/dnsruby/resource/generic.rb +1 -0
- data/lib/dnsruby/version.rb +1 -1
- data/lib/dnsruby/zone_transfer.rb +5 -2
- data/test/run-tests-individually +347 -0
- data/test/spec_helper.rb +3 -3
- data/test/tc_caa.rb +49 -0
- data/test/tc_cache.rb +6 -16
- data/test/tc_dlv.rb +3 -2
- data/test/tc_dns.rb +3 -1
- data/test/tc_ds.rb +4 -1
- data/test/tc_escapedchars.rb +3 -1
- data/test/tc_gpos.rb +2 -2
- data/test/tc_header.rb +3 -1
- data/test/tc_hip.rb +3 -1
- data/test/tc_hs.rb +0 -2
- data/test/tc_ipseckey.rb +3 -1
- data/test/tc_message.rb +0 -16
- data/test/tc_name.rb +3 -1
- data/test/tc_naptr.rb +3 -1
- data/test/tc_nsec.rb +3 -3
- data/test/tc_nsec3.rb +3 -1
- data/test/tc_nsec3param.rb +3 -1
- data/test/tc_nxt.rb +2 -2
- data/test/tc_packet.rb +3 -2
- data/test/tc_packet_unique_push.rb +3 -1
- data/test/tc_ptrin.rb +2 -1
- data/test/tc_question.rb +3 -1
- data/test/tc_res_env.rb +3 -1
- data/test/tc_res_opt.rb +3 -1
- data/test/tc_resolv.rb +1 -2
- data/test/tc_resolver.rb +18 -19
- data/test/tc_rr-opt.rb +3 -2
- data/test/tc_rr-txt.rb +3 -1
- data/test/tc_rr-unknown.rb +3 -1
- data/test/tc_rr.rb +15 -1
- data/test/tc_single_resolver.rb +4 -1
- data/test/tc_soak.rb +2 -1
- data/test/tc_soak_base.rb +2 -0
- data/test/tc_sshfp.rb +3 -1
- data/test/tc_tlsa.rb +191 -0
- data/test/tc_tsig.rb +3 -1
- data/test/tc_update.rb +6 -3
- data/test/tc_validator.rb +3 -2
- data/test/tc_zone_reader.rb +4 -2
- data/test/ts_offline.rb +1 -0
- data/test/ts_online.rb +6 -7
- metadata +8 -2
data/lib/dnsruby/resource/MX.rb
CHANGED
@@ -38,6 +38,9 @@ module Dnsruby
|
|
38
38
|
def from_string(input) #:nodoc: all
|
39
39
|
if (input.length > 0)
|
40
40
|
names = input.split(" ")
|
41
|
+
if(names.size != 2)
|
42
|
+
raise DecodeError.new("MX record expects preference and domain")
|
43
|
+
end
|
41
44
|
@preference = names[0].to_i
|
42
45
|
@exchange = Name.create(names[1])
|
43
46
|
end
|
data/lib/dnsruby/resource/OPT.rb
CHANGED
@@ -0,0 +1,149 @@
|
|
1
|
+
require 'openssl'
|
2
|
+
|
3
|
+
module Dnsruby
|
4
|
+
class RR
|
5
|
+
module IN
|
6
|
+
# Class for DNS TLSA server certificate or public key (TLSA) resource records.
|
7
|
+
#
|
8
|
+
# RFC 6698
|
9
|
+
class TLSA < RR
|
10
|
+
ClassHash[[TypeValue = Types::TLSA, ClassValue = ClassValue]] = self #:nodoc: all
|
11
|
+
# sec 2.1.1 ,7,2
|
12
|
+
#
|
13
|
+
# 0 CA constraint
|
14
|
+
# 1 Service certificate constraint
|
15
|
+
# 2 Trust anchor assertion
|
16
|
+
# 3 Domain-issued certificate
|
17
|
+
# 4-254 Unassigned
|
18
|
+
# 255 Private use
|
19
|
+
attr_accessor :usage
|
20
|
+
# sec 2.1.2, 7.3
|
21
|
+
#
|
22
|
+
# 0 Full certificate
|
23
|
+
# 1 SubjectPublicKeyInfo
|
24
|
+
# 2-254 Unassigned
|
25
|
+
# 255 Private use
|
26
|
+
attr_accessor :selector
|
27
|
+
# sec 2.3.1
|
28
|
+
#
|
29
|
+
# 0 Exact match on selected content
|
30
|
+
# 1 SHA-256 hash of selected content
|
31
|
+
# 2 SHA-512 hash of selected content
|
32
|
+
# 3-254 Unassigned
|
33
|
+
# 255 Private use
|
34
|
+
attr_accessor :matching_type
|
35
|
+
# sec 2.1.4
|
36
|
+
attr_accessor :data
|
37
|
+
attr_accessor :databin
|
38
|
+
|
39
|
+
def verify
|
40
|
+
raise ArgumentError, "usage with invalid value: #{@usage}" if @usage < 0 || @usage > 255
|
41
|
+
raise ArgumentError, "selector with invalid value: #{@selector}" if @selector < 0 || @selector > 255
|
42
|
+
raise ArgumentError, "matching_type with invalid value: #{@matching_type}" if @matching_type < 0 || @matching_type > 255
|
43
|
+
raise ArgumentError, "data with invalid value: #{@data}" if (@matching_type == 1 && @databin.bytesize != 32) || (@matching_type == 2 && @databin.bytesize != 64)
|
44
|
+
pkey if @matching_type == 0
|
45
|
+
end
|
46
|
+
|
47
|
+
def from_data(data) #:nodoc: all
|
48
|
+
self.usage = data[0]
|
49
|
+
self.selector = data[1]
|
50
|
+
self.matching_type = data[2]
|
51
|
+
self.databin = data[3]
|
52
|
+
verify
|
53
|
+
end
|
54
|
+
|
55
|
+
# Create the RR from a hash
|
56
|
+
def from_hash(hash)
|
57
|
+
super(hash)
|
58
|
+
verify
|
59
|
+
end
|
60
|
+
|
61
|
+
def data=(data)
|
62
|
+
self.databin = parse_string(data)
|
63
|
+
end
|
64
|
+
|
65
|
+
def databin=(databin)
|
66
|
+
@databin = databin
|
67
|
+
@data = @databin.unpack('H*')[0].each_char.each_slice(57).map(&:join).join(' ')
|
68
|
+
end
|
69
|
+
|
70
|
+
def cert
|
71
|
+
if @matching_type == 0 && @selector == 0 && @databin
|
72
|
+
begin
|
73
|
+
cert = OpenSSL::X509::Certificate.new(@databin)
|
74
|
+
rescue => e
|
75
|
+
raise ArgumentError, 'data is invalid cert '
|
76
|
+
end
|
77
|
+
end
|
78
|
+
cert
|
79
|
+
end
|
80
|
+
|
81
|
+
def pkey
|
82
|
+
pubkey = nil
|
83
|
+
if @matching_type == 0 && @databin
|
84
|
+
if @selector == 0
|
85
|
+
cert = self.cert
|
86
|
+
pubkey = cert.public_key
|
87
|
+
elsif @selector == 1
|
88
|
+
begin
|
89
|
+
pubkey = OpenSSL::PKey.read(@databin)
|
90
|
+
rescue
|
91
|
+
raise ArgumentError, 'data is invalid pkey'
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
95
|
+
pubkey
|
96
|
+
end
|
97
|
+
|
98
|
+
def parse_string(data)
|
99
|
+
buf = ''
|
100
|
+
comment = false
|
101
|
+
multiline = false
|
102
|
+
data.each_char do |ch|
|
103
|
+
case ch
|
104
|
+
when ';' then comment = true
|
105
|
+
when '\n'
|
106
|
+
raise ArgumentError, 'string format error' unless multiline
|
107
|
+
comment = false
|
108
|
+
when '\r' then next
|
109
|
+
when ' ' then next
|
110
|
+
when comment then next
|
111
|
+
when '(' then multiline = true
|
112
|
+
when ')' then multiline = false
|
113
|
+
else
|
114
|
+
buf += ch
|
115
|
+
end
|
116
|
+
end
|
117
|
+
raise ArgumentError, 'string format error' if multiline
|
118
|
+
|
119
|
+
[buf].pack('H*')
|
120
|
+
end
|
121
|
+
|
122
|
+
# Create the RR from a standard string
|
123
|
+
def from_string(input)
|
124
|
+
values = input.split(' ', 4)
|
125
|
+
self.usage = values[0].to_i
|
126
|
+
self.selector = values[1].to_i
|
127
|
+
self.matching_type = values[2].to_i
|
128
|
+
self.data = values[3]
|
129
|
+
verify
|
130
|
+
end
|
131
|
+
|
132
|
+
def rdata_to_string
|
133
|
+
"#{@usage} #{@selector} #{@matching_type} #{@data}"
|
134
|
+
end
|
135
|
+
|
136
|
+
def encode_rdata(msg, _canonical = false) #:nodoc: all
|
137
|
+
msg.put_pack('CCC', @usage, @selector, @matching_type)
|
138
|
+
msg.put_bytes(@databin)
|
139
|
+
end
|
140
|
+
|
141
|
+
def self.decode_rdata(msg) #:nodoc: all
|
142
|
+
usage, selector, matching_type = msg.get_unpack('CCC')
|
143
|
+
databin = msg.get_bytes
|
144
|
+
new([usage, selector, matching_type, databin])
|
145
|
+
end
|
146
|
+
end
|
147
|
+
end
|
148
|
+
end
|
149
|
+
end
|
data/lib/dnsruby/version.rb
CHANGED
@@ -27,6 +27,8 @@ module Dnsruby
|
|
27
27
|
attr_accessor :port
|
28
28
|
# If using IXFR, this is the SOA serial number to start the incrementals from
|
29
29
|
attr_accessor :serial
|
30
|
+
# The source address to connect to
|
31
|
+
attr_accessor :src_address
|
30
32
|
# The TSIG record used to sign the transfer
|
31
33
|
attr_reader :tsig
|
32
34
|
# Returns the tsigstate of the last transfer (nil if no TSIG signed transfer has occurred)
|
@@ -51,6 +53,7 @@ module Dnsruby
|
|
51
53
|
@serial=0
|
52
54
|
@tsig = nil
|
53
55
|
@axfr = nil
|
56
|
+
@src_address = nil
|
54
57
|
end
|
55
58
|
|
56
59
|
# Perform a zone transfer (RFC1995)
|
@@ -104,7 +107,7 @@ module Dnsruby
|
|
104
107
|
def do_transfer(zone, server) #:nodoc: all
|
105
108
|
@transfer_type = Types.new(@transfer_type)
|
106
109
|
@state = :InitialSoa
|
107
|
-
socket = TCPSocket.new(server, @port)
|
110
|
+
socket = TCPSocket.new(server, @port, @src_address)
|
108
111
|
begin
|
109
112
|
# Send an initial query
|
110
113
|
msg = Message.new(zone, @transfer_type, @klass)
|
@@ -375,4 +378,4 @@ module Dnsruby
|
|
375
378
|
return msg
|
376
379
|
end
|
377
380
|
end
|
378
|
-
end
|
381
|
+
end
|
@@ -0,0 +1,347 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
# Runs each test individually in its own Ruby VM,
|
4
|
+
# shows output from those that failed, and outputs separate lists
|
5
|
+
# of the tests that succeeded and those that failed.
|
6
|
+
|
7
|
+
# Suggest you use tee to display while running but save results to a file, e.g.:
|
8
|
+
# test/run-tests-individually | tee run-tests-individually.out.txt
|
9
|
+
|
10
|
+
test_files = Dir[File.join(File.dirname(__FILE__), 'tc_*.rb')]
|
11
|
+
|
12
|
+
def run_file(filespec)
|
13
|
+
output = `ruby #{filespec} 2>&1`
|
14
|
+
return_code = $?
|
15
|
+
if return_code == 0
|
16
|
+
puts "Ok: Test #{filespec} completed successfully"
|
17
|
+
true
|
18
|
+
else
|
19
|
+
puts "Failed: Test #{filespec} failed with the following errors:\n#{output}"
|
20
|
+
false
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
|
25
|
+
successes, failures = test_files.partition { |filespec| run_file(filespec) }
|
26
|
+
|
27
|
+
puts "Successes:\n\n"; puts successes; puts "\n\n"
|
28
|
+
puts "Failures:\n\n"; puts failures
|
29
|
+
|
30
|
+
|
31
|
+
=begin
|
32
|
+
Sample output:
|
33
|
+
Ok: Test test/tc_axfr.rb completed successfully
|
34
|
+
Ok: Test test/tc_cache.rb completed successfully
|
35
|
+
Failed: Test test/tc_dlv.rb failed with the following errors:
|
36
|
+
Run options: --seed 19558
|
37
|
+
|
38
|
+
# Running:
|
39
|
+
|
40
|
+
|
41
|
+
TestDlv | R
|
42
|
+
| 0.00 s
|
43
|
+
Slowest tests:
|
44
|
+
2.04 s TestDlv#test_dlv
|
45
|
+
Slowest suites:
|
46
|
+
2.04 s TestDlv
|
47
|
+
|
48
|
+
|
49
|
+
Finished in 2.040666s, 0.4900 runs/s, 0.4900 assertions/s.
|
50
|
+
|
51
|
+
1) Error:
|
52
|
+
TestDlv#test_dlv:
|
53
|
+
ArgumentError: Can't make sense of nameserver : ns2.nic.se, exception : Dnsruby::NXDomain
|
54
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/config.rb:293:in `rescue in rescue in rescue in resolve_server'
|
55
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/config.rb:256:in `rescue in rescue in resolve_server'
|
56
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/config.rb:252:in `rescue in resolve_server'
|
57
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/config.rb:248:in `resolve_server'
|
58
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/packet_sender.rb:230:in `initialize'
|
59
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/resolver.rb:569:in `new'
|
60
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/resolver.rb:569:in `add_server'
|
61
|
+
test/tc_dlv.rb:42:in `test_dlv'
|
62
|
+
|
63
|
+
1 runs, 1 assertions, 0 failures, 1 errors, 0 skips
|
64
|
+
Ok: Test test/tc_dns.rb completed successfully
|
65
|
+
Ok: Test test/tc_dnskey.rb completed successfully
|
66
|
+
Ok: Test test/tc_ds.rb completed successfully
|
67
|
+
Ok: Test test/tc_escapedchars.rb completed successfully
|
68
|
+
Ok: Test test/tc_gpos.rb completed successfully
|
69
|
+
Ok: Test test/tc_hash.rb completed successfully
|
70
|
+
Ok: Test test/tc_header.rb completed successfully
|
71
|
+
Ok: Test test/tc_hip.rb completed successfully
|
72
|
+
Ok: Test test/tc_hs.rb completed successfully
|
73
|
+
Ok: Test test/tc_ipseckey.rb completed successfully
|
74
|
+
Ok: Test test/tc_message.rb completed successfully
|
75
|
+
Ok: Test test/tc_misc.rb completed successfully
|
76
|
+
Ok: Test test/tc_name.rb completed successfully
|
77
|
+
Ok: Test test/tc_naptr.rb completed successfully
|
78
|
+
Ok: Test test/tc_nsec.rb completed successfully
|
79
|
+
Ok: Test test/tc_nsec3.rb completed successfully
|
80
|
+
Ok: Test test/tc_nsec3param.rb completed successfully
|
81
|
+
Ok: Test test/tc_nxt.rb completed successfully
|
82
|
+
Ok: Test test/tc_packet.rb completed successfully
|
83
|
+
Ok: Test test/tc_packet_unique_push.rb completed successfully
|
84
|
+
Ok: Test test/tc_ptrin.rb completed successfully
|
85
|
+
Ok: Test test/tc_question.rb completed successfully
|
86
|
+
Ok: Test test/tc_queue.rb completed successfully
|
87
|
+
Ok: Test test/tc_recur.rb completed successfully
|
88
|
+
Ok: Test test/tc_res_config.rb completed successfully
|
89
|
+
Failed: Test test/tc_res_env.rb failed with the following errors:
|
90
|
+
Run options: --seed 61787
|
91
|
+
|
92
|
+
# Running:
|
93
|
+
|
94
|
+
|
95
|
+
TestResolverEnv | F
|
96
|
+
| 0.00 s
|
97
|
+
Slowest tests:
|
98
|
+
0.00 s TestResolverEnv#test_res_env
|
99
|
+
Slowest suites:
|
100
|
+
0.00 s TestResolverEnv
|
101
|
+
|
102
|
+
|
103
|
+
Finished in 0.002247s, 445.0378 runs/s, 1335.1135 assertions/s.
|
104
|
+
|
105
|
+
1) Failure:
|
106
|
+
TestResolverEnv#test_res_env [test/tc_res_env.rb:38]:
|
107
|
+
Nameserver set correctly.
|
108
|
+
Expected: "10.128.128.128"
|
109
|
+
Actual: "10.0.1.128"
|
110
|
+
|
111
|
+
1 runs, 3 assertions, 1 failures, 0 errors, 0 skips
|
112
|
+
Ok: Test test/tc_res_file.rb completed successfully
|
113
|
+
Ok: Test test/tc_res_opt.rb completed successfully
|
114
|
+
Ok: Test test/tc_resolv.rb completed successfully
|
115
|
+
Ok: Test test/tc_resolver.rb completed successfully
|
116
|
+
Ok: Test test/tc_rr-opt.rb completed successfully
|
117
|
+
Ok: Test test/tc_rr-txt.rb completed successfully
|
118
|
+
Ok: Test test/tc_rr-unknown.rb completed successfully
|
119
|
+
Ok: Test test/tc_rr.rb completed successfully
|
120
|
+
Ok: Test test/tc_rrset.rb completed successfully
|
121
|
+
Ok: Test test/tc_rrsig.rb completed successfully
|
122
|
+
Ok: Test test/tc_single_resolver.rb completed successfully
|
123
|
+
Failed: Test test/tc_soak.rb failed with the following errors:
|
124
|
+
Run options: --seed 6029
|
125
|
+
|
126
|
+
# Running:
|
127
|
+
|
128
|
+
|
129
|
+
TestSingleResolverSoak | RRRRRRRRtest/tc_soak.rb:283:in `create_default_single_resolver': uninitialized constant TestSingleResolverSoak::SingleResolver (NameError)
|
130
|
+
Did you mean? SingleForwardable
|
131
|
+
from test/tc_soak.rb:243:in `block (2 levels) in test_many_threads_on_many_single_resolvers'
|
132
|
+
Ok: Test test/tc_soak_base.rb completed successfully
|
133
|
+
Ok: Test test/tc_sshfp.rb completed successfully
|
134
|
+
Ok: Test test/tc_tcp.rb completed successfully
|
135
|
+
Ok: Test test/tc_tcp_pipelining.rb completed successfully
|
136
|
+
Ok: Test test/tc_tkey.rb completed successfully
|
137
|
+
Failed: Test test/tc_tsig.rb failed with the following errors:
|
138
|
+
Run options: --seed 20864
|
139
|
+
|
140
|
+
# Running:
|
141
|
+
|
142
|
+
|
143
|
+
TestTSig | R..R
|
144
|
+
| 11.87 s
|
145
|
+
Slowest tests:
|
146
|
+
11.87 s TestTSig#test_signed_update
|
147
|
+
10.74 s TestTSig#test_signed_zone_transfer
|
148
|
+
0.00 s TestTSig#test_bad_tsig
|
149
|
+
0.00 s TestTSig#test_message_signing
|
150
|
+
Slowest suites:
|
151
|
+
22.62 s TestTSig
|
152
|
+
|
153
|
+
|
154
|
+
Finished in 22.616872s, 0.1769 runs/s, 0.3095 assertions/s.
|
155
|
+
|
156
|
+
1) Error:
|
157
|
+
TestTSig#test_signed_zone_transfer:
|
158
|
+
ArgumentError: Can't make sense of nameserver : ns0.validation-test-servers.nominet.org.uk, exception : undefined method `answer' for nil:NilClass
|
159
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/config.rb:293:in `rescue in rescue in rescue in resolve_server'
|
160
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/config.rb:256:in `rescue in rescue in resolve_server'
|
161
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/config.rb:252:in `rescue in resolve_server'
|
162
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/config.rb:248:in `resolve_server'
|
163
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/zone_transfer.rb:94:in `block in transfer'
|
164
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/zone_transfer.rb:92:in `each'
|
165
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/zone_transfer.rb:92:in `transfer'
|
166
|
+
test/tc_tsig.rb:189:in `axfr'
|
167
|
+
test/tc_tsig.rb:180:in `test_signed_zone_transfer'
|
168
|
+
|
169
|
+
|
170
|
+
2) Error:
|
171
|
+
TestTSig#test_signed_update:
|
172
|
+
ArgumentError: Can't make sense of nameserver : , exception : Nameserver invalid!
|
173
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/config.rb:293:in `rescue in rescue in rescue in resolve_server'
|
174
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/config.rb:256:in `rescue in rescue in resolve_server'
|
175
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/config.rb:252:in `rescue in resolve_server'
|
176
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/config.rb:248:in `resolve_server'
|
177
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/packet_sender.rb:230:in `initialize'
|
178
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/resolver.rb:488:in `new'
|
179
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/resolver.rb:488:in `block (2 levels) in add_config_nameservers'
|
180
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/resolver.rb:487:in `each'
|
181
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/resolver.rb:487:in `block in add_config_nameservers'
|
182
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/resolver.rb:485:in `synchronize'
|
183
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/resolver.rb:485:in `add_config_nameservers'
|
184
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/resolver.rb:514:in `set_config_nameserver'
|
185
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/resolver.rb:469:in `initialize'
|
186
|
+
test/tc_tsig.rb:69:in `new'
|
187
|
+
test/tc_tsig.rb:69:in `run_test_client_signs'
|
188
|
+
test/tc_tsig.rb:31:in `test_signed_update'
|
189
|
+
|
190
|
+
4 runs, 7 assertions, 0 failures, 2 errors, 0 skips
|
191
|
+
Ok: Test test/tc_update.rb completed successfully
|
192
|
+
Failed: Test test/tc_validator.rb failed with the following errors:
|
193
|
+
Run options: --seed 12765
|
194
|
+
|
195
|
+
# Running:
|
196
|
+
|
197
|
+
Test EventType API!
|
198
|
+
|
199
|
+
TestValidator | .RRTest validation configuration options!
|
200
|
+
.
|
201
|
+
| 10.05 s
|
202
|
+
Slowest tests:
|
203
|
+
5.05 s TestValidator#test_validation
|
204
|
+
5.01 s TestValidator#test_resolver_cd_validation_fails
|
205
|
+
0.00 s TestValidator#test_eventtype_api
|
206
|
+
0.00 s TestValidator#test_config_api
|
207
|
+
Slowest suites:
|
208
|
+
10.05 s TestValidator
|
209
|
+
|
210
|
+
|
211
|
+
Finished in 10.054978s, 0.3978 runs/s, 0.0000 assertions/s.
|
212
|
+
|
213
|
+
1) Error:
|
214
|
+
TestValidator#test_resolver_cd_validation_fails:
|
215
|
+
Dnsruby::ResolvTimeout: Query timed out
|
216
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/resolver.rb:257:in `send_message'
|
217
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/resolver.rb:203:in `query'
|
218
|
+
test/tc_validator.rb:52:in `test_resolver_cd_validation_fails'
|
219
|
+
|
220
|
+
|
221
|
+
2) Error:
|
222
|
+
TestValidator#test_validation:
|
223
|
+
Dnsruby::ResolvTimeout: Query timed out
|
224
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/resolver.rb:257:in `send_message'
|
225
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/resolver.rb:203:in `query'
|
226
|
+
test/tc_validator.rb:40:in `test_validation'
|
227
|
+
|
228
|
+
4 runs, 0 assertions, 0 failures, 2 errors, 0 skips
|
229
|
+
Failed: Test test/tc_verifier.rb failed with the following errors:
|
230
|
+
Run options: --seed 23316
|
231
|
+
|
232
|
+
# Running:
|
233
|
+
|
234
|
+
|
235
|
+
VerifierTest | .R.R....RF.
|
236
|
+
| 14.37 s
|
237
|
+
Slowest tests:
|
238
|
+
5.40 s VerifierTest#test_tcp
|
239
|
+
5.01 s VerifierTest#test_trusted_key
|
240
|
+
2.01 s VerifierTest#test_expired_keys
|
241
|
+
1.54 s VerifierTest#test_verify_message_fails
|
242
|
+
1.21 s VerifierTest#test_dsa
|
243
|
+
0.41 s VerifierTest#test_sendraw
|
244
|
+
Slowest suites:
|
245
|
+
15.91 s VerifierTest
|
246
|
+
|
247
|
+
|
248
|
+
Finished in 15.914313s, 0.6912 runs/s, 0.3770 assertions/s.
|
249
|
+
|
250
|
+
1) Error:
|
251
|
+
VerifierTest#test_tcp:
|
252
|
+
Dnsruby::ResolvTimeout: Query timed out
|
253
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/resolver.rb:257:in `send_message'
|
254
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/resolver.rb:203:in `query'
|
255
|
+
test/tc_verifier.rb:183:in `test_tcp'
|
256
|
+
|
257
|
+
|
258
|
+
2) Error:
|
259
|
+
VerifierTest#test_trusted_key:
|
260
|
+
Dnsruby::ResolvTimeout: Query timed out
|
261
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/resolver.rb:257:in `send_message'
|
262
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/resolver.rb:203:in `query'
|
263
|
+
test/tc_verifier.rb:125:in `test_trusted_key'
|
264
|
+
|
265
|
+
|
266
|
+
3) Error:
|
267
|
+
VerifierTest#test_verify_message:
|
268
|
+
Dnsruby::VerifyError: Failed to verify DNSKEY RRSet
|
269
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/single_verifier.rb:277:in `block (2 levels) in verify'
|
270
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/single_verifier.rb:275:in `each'
|
271
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/single_verifier.rb:275:in `block in verify'
|
272
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/message/message.rb:345:in `block in each_section'
|
273
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/message/message.rb:345:in `each'
|
274
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/message/message.rb:345:in `each_section'
|
275
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/single_verifier.rb:261:in `verify'
|
276
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/dnssec.rb:293:in `rescue in rescue in verify'
|
277
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/dnssec.rb:290:in `rescue in verify'
|
278
|
+
/Users/kbennett/work/dnsruby/lib/dnsruby/dnssec.rb:287:in `verify'
|
279
|
+
test/tc_verifier.rb:98:in `test_verify_message'
|
280
|
+
|
281
|
+
|
282
|
+
4) Failure:
|
283
|
+
VerifierTest#test_dsa [test/tc_verifier.rb:229]:
|
284
|
+
Expected nil to be truthy.
|
285
|
+
|
286
|
+
11 runs, 6 assertions, 1 failures, 3 errors, 0 skips
|
287
|
+
Ok: Test test/tc_zone_reader.rb completed successfully
|
288
|
+
Successes:
|
289
|
+
|
290
|
+
test/tc_axfr.rb
|
291
|
+
test/tc_cache.rb
|
292
|
+
test/tc_dns.rb
|
293
|
+
test/tc_dnskey.rb
|
294
|
+
test/tc_ds.rb
|
295
|
+
test/tc_escapedchars.rb
|
296
|
+
test/tc_gpos.rb
|
297
|
+
test/tc_hash.rb
|
298
|
+
test/tc_header.rb
|
299
|
+
test/tc_hip.rb
|
300
|
+
test/tc_hs.rb
|
301
|
+
test/tc_ipseckey.rb
|
302
|
+
test/tc_message.rb
|
303
|
+
test/tc_misc.rb
|
304
|
+
test/tc_name.rb
|
305
|
+
test/tc_naptr.rb
|
306
|
+
test/tc_nsec.rb
|
307
|
+
test/tc_nsec3.rb
|
308
|
+
test/tc_nsec3param.rb
|
309
|
+
test/tc_nxt.rb
|
310
|
+
test/tc_packet.rb
|
311
|
+
test/tc_packet_unique_push.rb
|
312
|
+
test/tc_ptrin.rb
|
313
|
+
test/tc_question.rb
|
314
|
+
test/tc_queue.rb
|
315
|
+
test/tc_recur.rb
|
316
|
+
test/tc_res_config.rb
|
317
|
+
test/tc_res_file.rb
|
318
|
+
test/tc_res_opt.rb
|
319
|
+
test/tc_resolv.rb
|
320
|
+
test/tc_resolver.rb
|
321
|
+
test/tc_rr-opt.rb
|
322
|
+
test/tc_rr-txt.rb
|
323
|
+
test/tc_rr-unknown.rb
|
324
|
+
test/tc_rr.rb
|
325
|
+
test/tc_rrset.rb
|
326
|
+
test/tc_rrsig.rb
|
327
|
+
test/tc_single_resolver.rb
|
328
|
+
test/tc_soak_base.rb
|
329
|
+
test/tc_sshfp.rb
|
330
|
+
test/tc_tcp.rb
|
331
|
+
test/tc_tcp_pipelining.rb
|
332
|
+
test/tc_tkey.rb
|
333
|
+
test/tc_update.rb
|
334
|
+
test/tc_zone_reader.rb
|
335
|
+
|
336
|
+
|
337
|
+
Failures:
|
338
|
+
|
339
|
+
test/tc_dlv.rb
|
340
|
+
test/tc_res_env.rb
|
341
|
+
test/tc_soak.rb
|
342
|
+
test/tc_tsig.rb
|
343
|
+
test/tc_validator.rb
|
344
|
+
test/tc_verifier.rb
|
345
|
+
|
346
|
+
=end
|
347
|
+
|