dnsruby 1.36 → 1.37
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.
- data/demo/axfr.rb +16 -0
- data/demo/check_soa.rb +17 -0
- data/demo/check_zone.rb +16 -0
- data/demo/digdlv.rb +16 -0
- data/demo/digitar.rb +16 -0
- data/demo/digroot.rb +92 -0
- data/demo/example_recurse.rb +16 -0
- data/demo/mresolv.rb +17 -0
- data/demo/mx.rb +16 -0
- data/demo/rubydig.rb +16 -0
- data/demo/trace_dns.rb +16 -0
- data/html/created.rid +1 -1
- data/html/fr_class_index.html +0 -6
- data/html/fr_method_index.html +332 -348
- data/lib/Dnsruby/Cache.rb +18 -1
- data/lib/Dnsruby/iana_ports.rb +17 -1
- data/lib/Dnsruby/key_cache.rb +16 -0
- data/lib/Dnsruby/resource/delete_me.rhtml +6 -0
- data/lib/Dnsruby/select_thread.rb.michael.rb +602 -0
- data/lib/Dnsruby/single_verifier.rb +17 -0
- data/lib/Dnsruby/validator_thread.rb +16 -0
- data/lib/Dnsruby/zone_transfer.rb +16 -0
- data/test/resolv.conf +16 -1
- data/test/tc_auth.rb +49 -0
- data/test/tc_cache.rb +16 -0
- data/test/tc_dlv.rb +16 -0
- data/test/tc_dnskey.rb +16 -0
- data/test/tc_ds.rb +16 -0
- data/test/tc_itar.rb +16 -0
- data/test/tc_nsec.rb +16 -0
- data/test/tc_nsec3.rb +16 -0
- data/test/tc_nsec3param.rb +16 -0
- data/test/tc_queue.rb +16 -0
- data/test/tc_recur.rb +16 -0
- data/test/tc_rrset.rb +16 -0
- data/test/tc_rrsig.rb +16 -0
- data/test/tc_soak_base.rb +16 -0
- data/test/tc_validator.rb +16 -0
- data/test/tc_verifier.rb +16 -0
- data/test/ts_queue.rb +3 -0
- metadata +7 -7
- data/lib/Dnsruby/event_machine_interface.rb +0 -266
- data/test/tc_event_machine_deferrable.rb +0 -85
- data/test/tc_event_machine_res.rb +0 -174
- data/test/tc_event_machine_single_res.rb +0 -101
- data/test/tc_event_machine_soak.rb +0 -98
data/demo/axfr.rb
CHANGED
@@ -1,3 +1,19 @@
|
|
1
|
+
#--
|
2
|
+
#Copyright 2007 Nominet UK
|
3
|
+
#
|
4
|
+
#Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
#you may not use this file except in compliance with the License.
|
6
|
+
#You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
#Unless required by applicable law or agreed to in writing, software
|
11
|
+
#distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
#WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
#See the License for the specific language governing permissions and
|
14
|
+
#limitations under the License.
|
15
|
+
#++
|
16
|
+
|
1
17
|
#= NAME
|
2
18
|
#
|
3
19
|
#axfr - Perform a DNS zone transfer
|
data/demo/check_soa.rb
CHANGED
@@ -1,3 +1,20 @@
|
|
1
|
+
#--
|
2
|
+
#Copyright 2007 Nominet UK
|
3
|
+
#
|
4
|
+
#Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
#you may not use this file except in compliance with the License.
|
6
|
+
#You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
#Unless required by applicable law or agreed to in writing, software
|
11
|
+
#distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
#WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
#See the License for the specific language governing permissions and
|
14
|
+
#limitations under the License.
|
15
|
+
#++
|
16
|
+
|
17
|
+
|
1
18
|
#= NAME
|
2
19
|
#
|
3
20
|
#check_soa - Check a domain's nameservers
|
data/demo/check_zone.rb
CHANGED
@@ -1,3 +1,19 @@
|
|
1
|
+
#--
|
2
|
+
#Copyright 2007 Nominet UK
|
3
|
+
#
|
4
|
+
#Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
#you may not use this file except in compliance with the License.
|
6
|
+
#You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
#Unless required by applicable law or agreed to in writing, software
|
11
|
+
#distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
#WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
#See the License for the specific language governing permissions and
|
14
|
+
#limitations under the License.
|
15
|
+
#++
|
16
|
+
|
1
17
|
#= NAME
|
2
18
|
#
|
3
19
|
#check_zone - Check a DNS zone for errors
|
data/demo/digdlv.rb
CHANGED
@@ -1,3 +1,19 @@
|
|
1
|
+
#--
|
2
|
+
#Copyright 2007 Nominet UK
|
3
|
+
#
|
4
|
+
#Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
#you may not use this file except in compliance with the License.
|
6
|
+
#You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
#Unless required by applicable law or agreed to in writing, software
|
11
|
+
#distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
#WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
#See the License for the specific language governing permissions and
|
14
|
+
#limitations under the License.
|
15
|
+
#++
|
16
|
+
|
1
17
|
#= NAME
|
2
18
|
#
|
3
19
|
#digdlv - Ruby script to perform DNS queries, validated against the ISC DLV
|
data/demo/digitar.rb
CHANGED
@@ -1,3 +1,19 @@
|
|
1
|
+
#--
|
2
|
+
#Copyright 2007 Nominet UK
|
3
|
+
#
|
4
|
+
#Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
#you may not use this file except in compliance with the License.
|
6
|
+
#You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
#Unless required by applicable law or agreed to in writing, software
|
11
|
+
#distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
#WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
#See the License for the specific language governing permissions and
|
14
|
+
#limitations under the License.
|
15
|
+
#++
|
16
|
+
|
1
17
|
#= NAME
|
2
18
|
#
|
3
19
|
#digitar - Ruby script to perform DNS queries, validated against the IANA TAR
|
data/demo/digroot.rb
ADDED
@@ -0,0 +1,92 @@
|
|
1
|
+
#--
|
2
|
+
#Copyright 2007 Nominet UK
|
3
|
+
#
|
4
|
+
#Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
#you may not use this file except in compliance with the License.
|
6
|
+
#You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
#Unless required by applicable law or agreed to in writing, software
|
11
|
+
#distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
#WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
#See the License for the specific language governing permissions and
|
14
|
+
#limitations under the License.
|
15
|
+
#++
|
16
|
+
|
17
|
+
#= NAME
|
18
|
+
#
|
19
|
+
#digitar - Ruby script to perform DNS queries, validated against the IANA TAR
|
20
|
+
#(trust anchor repository).
|
21
|
+
#
|
22
|
+
#= SYNOPSIS
|
23
|
+
#
|
24
|
+
#digitar name [ type [ class ] ]
|
25
|
+
#
|
26
|
+
#= DESCRIPTION
|
27
|
+
#
|
28
|
+
#Performs a DNS query on the given name. The record type
|
29
|
+
#and class can also be specified; if left blank they default
|
30
|
+
#to A and IN. The program firstly performs the requested DNS
|
31
|
+
# query. The response is then validated
|
32
|
+
#- the ITAR is searched for the keys of the closest ancestor
|
33
|
+
#of the query name, and the chain of trust is followed to prove
|
34
|
+
#that the DNSSEC records are correct, or that we do not expect the
|
35
|
+
#response to be signed.
|
36
|
+
#
|
37
|
+
#= AUTHOR
|
38
|
+
#
|
39
|
+
#Michael Fuhr <mike@fuhr.org>
|
40
|
+
#Alex D <alexd@nominet.org.uk>
|
41
|
+
|
42
|
+
require 'rubygems'
|
43
|
+
require 'dnsruby'
|
44
|
+
include Dnsruby
|
45
|
+
|
46
|
+
raise RuntimeError, "Usage: #{$0} name [ type [ class ] ]\n" unless (ARGV.length >= 1) && (ARGV.length <= 3)
|
47
|
+
|
48
|
+
#hints = ["208.77.188.32", "204.61.216.37", "208.78.70.92", "204.13.250.92", " 208.78.71.92", "204.13.251.92"]
|
49
|
+
hints = ["root.iana.org"]
|
50
|
+
r = Resolver.new({:nameserver => hints})
|
51
|
+
res = Dnsruby::Recursor.new(r)
|
52
|
+
res.hints = hints
|
53
|
+
|
54
|
+
key = RR.create(". 86400 IN DNSKEY 257 3 5 AwEAAff8EiNa/S3wovNzPUmuBqe1pSjnNoen
|
55
|
+
cXDNMpmjTgngGMPct+8KDKxM6FwvPSRx15gN
|
56
|
+
RyRQfzSPU0WshDNkBV2TMtVpzqn/dsurbmTo
|
57
|
+
ixRzLyLK2Kd2adg5o5yS/gaTgCo0HVBmIruS
|
58
|
+
N3FVI2ugCWJBFLkFGHLvMJ0BTSYVqWGwQIzp
|
59
|
+
EPKCbKN+L9nrLcvJRCWG59Yq6BUsSEKlzSK3
|
60
|
+
jMhYQs6y5IiCGAVol+3VyjN93/lXkeUG6u7d
|
61
|
+
lQsyiY9fxfeUvmn004y0TjAgjZqdwKZB0K9M
|
62
|
+
A7qcALG3Tw2TXEdQsn9aY3DzNii3YEBidzER
|
63
|
+
mY7n4hIUri1r59MnuNJq2x0=")
|
64
|
+
|
65
|
+
print " Key = #{key}, type = #{key.type}, name = #{key.name}\n"
|
66
|
+
|
67
|
+
Dnssec.add_trust_anchor(key)
|
68
|
+
Dnssec.add_trust_anchor(RR.create(". 86400 IN DNSKEY 257 3 5 AwEAAb+qUOkdZKCP0Qn/4TxJy2XD07xOckKj
|
69
|
+
wwAHOE/Hn3rLGy0RpmVYCOrmJbVtfyC6i8SQ
|
70
|
+
sRRKj6YUVlNg7EJ9gjK6rTiDlYMxSc0hFsoG
|
71
|
+
I8qfAfmsjwClVh86rSIJvruvbcRsQURp/gvJ
|
72
|
+
EdOaEHlA3JEIHS3cRR5AjKeF1IQdsGYtJMBM
|
73
|
+
2VMtrgHKgOPZjzfM6bPyg+H9uMBwOm2HkSiE
|
74
|
+
geAw2vXEHp0eNM2sOxUQMYYPkoywa28oxP4v
|
75
|
+
dUI7ht4I8etlq3gNCEuBJjV4347ZQ0VHIwDw
|
76
|
+
JSVmYBzc4f3REfEZS7h6fR33wPVQIw9NNi9p
|
77
|
+
Cy7JRqzEGwHVft/re6SRqE0="))
|
78
|
+
#res.hints = hints
|
79
|
+
print "Trust anchors : #{Dnssec.trust_anchors}\n"
|
80
|
+
Dnsruby::TheLog.level=Logger::DEBUG
|
81
|
+
|
82
|
+
name, type, klass = ARGV
|
83
|
+
type ||= "A"
|
84
|
+
klass ||= "IN"
|
85
|
+
|
86
|
+
begin
|
87
|
+
answer = nil
|
88
|
+
answer = res.query(name, type, klass)
|
89
|
+
print answer
|
90
|
+
rescue Exception => e
|
91
|
+
print "query failed: #{e}\n"
|
92
|
+
end
|
data/demo/example_recurse.rb
CHANGED
@@ -1,3 +1,19 @@
|
|
1
|
+
#--
|
2
|
+
#Copyright 2007 Nominet UK
|
3
|
+
#
|
4
|
+
#Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
#you may not use this file except in compliance with the License.
|
6
|
+
#You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
#Unless required by applicable law or agreed to in writing, software
|
11
|
+
#distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
#WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
#See the License for the specific language governing permissions and
|
14
|
+
#limitations under the License.
|
15
|
+
#++
|
16
|
+
|
1
17
|
# Example usage for Net::DNS::Resolver::Recurse
|
2
18
|
# Performs recursion for a query.
|
3
19
|
|
data/demo/mresolv.rb
CHANGED
@@ -1,3 +1,20 @@
|
|
1
|
+
#--
|
2
|
+
#Copyright 2007 Nominet UK
|
3
|
+
#
|
4
|
+
#Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
#you may not use this file except in compliance with the License.
|
6
|
+
#You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
#Unless required by applicable law or agreed to in writing, software
|
11
|
+
#distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
#WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
#See the License for the specific language governing permissions and
|
14
|
+
#limitations under the License.
|
15
|
+
#++
|
16
|
+
|
17
|
+
|
1
18
|
#mresolv [ -d ] [ -n number ] [ -t timeout ] [ filename... ]
|
2
19
|
#
|
3
20
|
#mresolv performs multiple DNS lookups in parallel. Names to query
|
data/demo/mx.rb
CHANGED
@@ -1,3 +1,19 @@
|
|
1
|
+
#--
|
2
|
+
#Copyright 2007 Nominet UK
|
3
|
+
#
|
4
|
+
#Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
#you may not use this file except in compliance with the License.
|
6
|
+
#You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
#Unless required by applicable law or agreed to in writing, software
|
11
|
+
#distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
#WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
#See the License for the specific language governing permissions and
|
14
|
+
#limitations under the License.
|
15
|
+
#++
|
16
|
+
|
1
17
|
require 'dnsruby'
|
2
18
|
|
3
19
|
#= NAME
|
data/demo/rubydig.rb
CHANGED
@@ -1,3 +1,19 @@
|
|
1
|
+
#--
|
2
|
+
#Copyright 2007 Nominet UK
|
3
|
+
#
|
4
|
+
#Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
#you may not use this file except in compliance with the License.
|
6
|
+
#You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
#Unless required by applicable law or agreed to in writing, software
|
11
|
+
#distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
#WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
#See the License for the specific language governing permissions and
|
14
|
+
#limitations under the License.
|
15
|
+
#++
|
16
|
+
|
1
17
|
#= NAME
|
2
18
|
#
|
3
19
|
#rubydig - Ruby script to perform DNS queries
|
data/demo/trace_dns.rb
CHANGED
@@ -1,3 +1,19 @@
|
|
1
|
+
#--
|
2
|
+
#Copyright 2007 Nominet UK
|
3
|
+
#
|
4
|
+
#Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
#you may not use this file except in compliance with the License.
|
6
|
+
#You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
#Unless required by applicable law or agreed to in writing, software
|
11
|
+
#distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
#WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
#See the License for the specific language governing permissions and
|
14
|
+
#limitations under the License.
|
15
|
+
#++
|
16
|
+
|
1
17
|
require 'dnsruby'
|
2
18
|
include Dnsruby
|
3
19
|
|
data/html/created.rid
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
Tue, 19 May 2009 10:26:16 +0100
|
data/html/fr_class_index.html
CHANGED
@@ -42,13 +42,9 @@
|
|
42
42
|
<a href="classes/Dnsruby/MetaTypes.html">Dnsruby::MetaTypes</a><br />
|
43
43
|
<a href="classes/Dnsruby/Modes.html">Dnsruby::Modes</a><br />
|
44
44
|
<a href="classes/Dnsruby/NXDomain.html">Dnsruby::NXDomain</a><br />
|
45
|
-
<a href="classes/Dnsruby/NXRRSet.html">Dnsruby::NXRRSet</a><br />
|
46
45
|
<a href="classes/Dnsruby/Name.html">Dnsruby::Name</a><br />
|
47
46
|
<a href="classes/Dnsruby/Name/Label.html">Dnsruby::Name::Label</a><br />
|
48
|
-
<a href="classes/Dnsruby/NotAuth.html">Dnsruby::NotAuth</a><br />
|
49
47
|
<a href="classes/Dnsruby/NotImp.html">Dnsruby::NotImp</a><br />
|
50
|
-
<a href="classes/Dnsruby/NotZone.html">Dnsruby::NotZone</a><br />
|
51
|
-
<a href="classes/Dnsruby/Nsec3HashAlgorithms.html">Dnsruby::Nsec3HashAlgorithms</a><br />
|
52
48
|
<a href="classes/Dnsruby/OpCode.html">Dnsruby::OpCode</a><br />
|
53
49
|
<a href="classes/Dnsruby/OtherResolvError.html">Dnsruby::OtherResolvError</a><br />
|
54
50
|
<a href="classes/Dnsruby/QTypes.html">Dnsruby::QTypes</a><br />
|
@@ -113,8 +109,6 @@
|
|
113
109
|
<a href="classes/Dnsruby/Types.html">Dnsruby::Types</a><br />
|
114
110
|
<a href="classes/Dnsruby/Update.html">Dnsruby::Update</a><br />
|
115
111
|
<a href="classes/Dnsruby/VerifyError.html">Dnsruby::VerifyError</a><br />
|
116
|
-
<a href="classes/Dnsruby/YXDomain.html">Dnsruby::YXDomain</a><br />
|
117
|
-
<a href="classes/Dnsruby/YXRRSet.html">Dnsruby::YXRRSet</a><br />
|
118
112
|
<a href="classes/Dnsruby/ZoneTransfer.html">Dnsruby::ZoneTransfer</a><br />
|
119
113
|
<a href="classes/Dnsruby/ZoneTransfer/Delta.html">Dnsruby::ZoneTransfer::Delta</a><br />
|
120
114
|
</div>
|