dnsruby 1.60.0 → 1.60.1
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
+
|