net-dns2 0.8.6 → 0.8.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- OWUzZjI2NzhmYzA0MGIyMDY1OTIzOWY1NTUwMTNmNTAxOGVmYzY3NQ==
5
- data.tar.gz: !binary |-
6
- YzQ0YjdkMThjNjZkNWQ0ZWQzMTdhZjY2NjNiNmE3ZDZmZmU1MzM0OQ==
2
+ SHA1:
3
+ metadata.gz: 43529e7b548591225e478f668740d725a0d8781e
4
+ data.tar.gz: 0d093b1f57066d4a07c4efec7c487c93203827b4
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- ZDcxZTVjZDI0YzlhYzJlYWI0ODk3ZDMyZGFjOTYzM2RiM2RmMmQyZTIxZmMy
10
- MzJkOGRhNDVmYWUxYWYzNzkyN2NjN2JhNmIyMGI4ODYzM2YzNjU2ZDQ0YjIz
11
- ZjdjNjM5MGU1Nzk5MTJmZmU2NDJhMWU5ODA5Mzk0OTdjY2JmYWU=
12
- data.tar.gz: !binary |-
13
- ZGYzYjRlZjk3MTk2Y2I1ZDg0YzAxZTBmY2I2NzJiYTM2NzZiMjRjMDYxNTI2
14
- YWZjMjI0YjFmMGFlYWUzODk3ZTk3YTdiYmExZWE5ZWUzNTc2MGQ2MzcxYTU1
15
- Y2Q1ZTg0NGNjNjQ2NDdhMjY4NzM1N2YyZmM4ZWI1MGM0ZDZjYTQ=
6
+ metadata.gz: 503ff6e0b74d1d09ee3615b0e709abc1e226ac38e8c76dda84325431e33d8f03bac8c3cdbf9d21cf80e19e707eeb9004dda5557d7adf99038ef7a4c165e18acd
7
+ data.tar.gz: 00541384e0aff4ffba8ad541dc5c5c552ac18ef32a772359d35cf8b9e9ea999a1cd758bd7b8f104b64265e43739845c8f3cca5486a3f46a615d664e88ba82822
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## Release 0.8.7
4
+ - MERGED: Pull Request #32 Use query instead of send in demo code
5
+ - MERGED: Pull Request #36 Fix invalid usage logger.fatal
6
+ - MERGED: Pull Request #37 Fix crashes for DNS::RR and fix DNS::Packet missing methods.
7
+ - MERGED: Pull Request #38 Remove duplicate def of query
8
+
3
9
  ## Release 0.8.6
4
10
  - FIXED: Removed lookup of desitination mac address from send_raw* queries.
5
11
 
@@ -68,7 +68,7 @@ ns_req.each_nameserver do |ns|
68
68
  # Get the SOA record.
69
69
  #----------------------------------------------------------------------
70
70
 
71
- soa_req = res.send(domain, Net::DNS::SOA, Net::DNS::IN)
71
+ soa_req = res.query(domain, Net::DNS::SOA, Net::DNS::IN)
72
72
 
73
73
  if soa_req == nil
74
74
  puts res.errorstring, "\n"
@@ -843,45 +843,6 @@ module Net
843
843
 
844
844
  end
845
845
 
846
- # Performs a DNS query for the given name; the search list
847
- # is not applied. If the name doesn't contain any dots and
848
- # +defname+ is true then the default domain will be appended.
849
- #
850
- # The record type and class can be omitted; they default to +A+
851
- # and +IN+. If the name looks like an IP address (IPv4 or IPv6),
852
- # then an appropriate PTR query will be performed.
853
- #
854
- # packet = res.query('mailhost')
855
- # packet = res.query('mailhost.example.com')
856
- # packet = res.query('example.com', Net::DNS::MX)
857
- # packet = res.query('user.passwd.example.com', Net::DNS::TXT, Net::DNS::HS)
858
- #
859
- # If the name is an IP address (Ipv4 or IPv6), in the form of a string
860
- # or a +IPAddr+ object, then an appropriate PTR query will be performed:
861
- #
862
- # ip = IPAddr.new("172.16.100.2")
863
- # packet = res.query(ip)
864
- # packet = res.query("192.168.10.254")
865
- #
866
- # Returns a Net::DNS::Packet object. If you need to examine the response
867
- # packet whether it contains any answers or not, use the Resolver#query
868
- # method instead.
869
- #
870
- def query(name,type=Net::DNS::A,cls=Net::DNS::IN)
871
-
872
- return send(name,type,cls) if name.class == IPAddr
873
-
874
- # If the name doesn't contain any dots then append the default domain.
875
- if name !~ /\./ and name !~ /:/ and @config[:defname]
876
- name += "." + @config[:domain]
877
- end
878
-
879
- debug "Query(#{name},#{Net::DNS::RR::Types.new(type)},#{Net::DNS::RR::Classes.new(cls)})"
880
-
881
- send(name,type,cls)
882
-
883
- end
884
-
885
846
  # Performs a DNS query for the given name. Neither the
886
847
  # searchlist nor the default domain will be appended.
887
848
  #
@@ -970,7 +931,9 @@ module Net
970
931
 
971
932
  if not ans
972
933
  message = "No response from nameservers list"
973
- @logger.fatal(message)
934
+ # NoMethodError: undefined method `fatal' for nil:NilClass
935
+ #@logger.fatal(message)
936
+ warn(message)
974
937
  raise NoResponseError, message
975
938
  end
976
939
 
@@ -3,18 +3,32 @@ module Net # :nodoc:
3
3
  class RR
4
4
 
5
5
  #------------------------------------------------------------
6
- # RR type SRV
6
+ # RR type SRV (RFC2052)
7
+ # A DNS RR for specifying the location of services (DNS SRV),
8
+ # contains the location of the server(s) for a specific
9
+ # protocol and domain (like a more general form of MX).
7
10
  #------------------------------------------------------------
8
11
  class SRV < RR
9
12
 
10
13
  attr_reader :priority, :weight, :port, :host
11
14
 
15
+ # Gets the standardized value for this record,
16
+ # represented by the value of <tt>port</tt>, <tt>priority</tt>,
17
+ # <tt>weight</tt>, and <tt>host</tt>.
18
+ #
19
+ # Returns a String.
20
+ def value
21
+ "#{port} #{priority} #{weight} #{host}"
22
+ end
23
+
12
24
  private
13
25
 
14
26
  def build_pack
15
- str = ""
27
+ @srv_pack = [@port, @priority, @weight].pack("n n n")
28
+ @srv_pack += pack_name(@host)
29
+ @rdlength = @srv_pack.size
16
30
  end
17
-
31
+
18
32
  def subclass_new_from_binary(data,offset)
19
33
  off_end = offset + @rdlength
20
34
  @priority, @weight, @port = data.unpack("@#{offset} n n n")
@@ -32,11 +46,17 @@ module Net # :nodoc:
32
46
  offset
33
47
  end
34
48
 
35
- private
36
-
37
- def set_type
38
- @type = Net::DNS::RR::Types.new("SRV")
39
- end
49
+ def set_type
50
+ @type = Net::DNS::RR::Types.new("SRV")
51
+ end
52
+
53
+ def get_inspect
54
+ value
55
+ end
56
+
57
+ def get_data
58
+ @srv_pack
59
+ end
40
60
 
41
61
  end
42
62
  end
@@ -4,7 +4,7 @@ require 'date'
4
4
 
5
5
  Gem::Specification.new do |s|
6
6
  s.name = "net-dns2"
7
- s.version = "0.8.6"
7
+ s.version = "0.8.7"
8
8
 
9
9
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
10
10
  s.authors = ["Marco Ceresa", "Simone Carletti", "Christopher Carpenter"]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: net-dns2
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.6
4
+ version: 0.8.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marco Ceresa
@@ -10,62 +10,62 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2014-08-29 00:00:00.000000000 Z
13
+ date: 2015-05-18 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rake
17
17
  requirement: !ruby/object:Gem::Requirement
18
18
  requirements:
19
- - - ~>
19
+ - - "~>"
20
20
  - !ruby/object:Gem::Version
21
21
  version: '10.0'
22
22
  type: :development
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
- - - ~>
26
+ - - "~>"
27
27
  - !ruby/object:Gem::Version
28
28
  version: '10.0'
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: yard
31
31
  requirement: !ruby/object:Gem::Requirement
32
32
  requirements:
33
- - - ! '>='
33
+ - - ">="
34
34
  - !ruby/object:Gem::Version
35
35
  version: '0'
36
36
  type: :development
37
37
  prerelease: false
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
- - - ! '>='
40
+ - - ">="
41
41
  - !ruby/object:Gem::Version
42
42
  version: '0'
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: rspec
45
45
  requirement: !ruby/object:Gem::Requirement
46
46
  requirements:
47
- - - ! '>='
47
+ - - ">="
48
48
  - !ruby/object:Gem::Version
49
49
  version: '0'
50
50
  type: :development
51
51
  prerelease: false
52
52
  version_requirements: !ruby/object:Gem::Requirement
53
53
  requirements:
54
- - - ! '>='
54
+ - - ">="
55
55
  - !ruby/object:Gem::Version
56
56
  version: '0'
57
57
  - !ruby/object:Gem::Dependency
58
58
  name: packetfu
59
59
  requirement: !ruby/object:Gem::Requirement
60
60
  requirements:
61
- - - ! '>='
61
+ - - ">="
62
62
  - !ruby/object:Gem::Version
63
63
  version: '0'
64
64
  type: :runtime
65
65
  prerelease: false
66
66
  version_requirements: !ruby/object:Gem::Requirement
67
67
  requirements:
68
- - - ! '>='
68
+ - - ">="
69
69
  - !ruby/object:Gem::Version
70
70
  version: '0'
71
71
  description: Net::DNS is a pure Ruby DNS library, with a clean OO interface and an
@@ -76,8 +76,8 @@ executables: []
76
76
  extensions: []
77
77
  extra_rdoc_files: []
78
78
  files:
79
- - .gitignore
80
- - .travis.yml
79
+ - ".gitignore"
80
+ - ".travis.yml"
81
81
  - CHANGELOG.md
82
82
  - Gemfile
83
83
  - README.md
@@ -122,12 +122,12 @@ require_paths:
122
122
  - lib
123
123
  required_ruby_version: !ruby/object:Gem::Requirement
124
124
  requirements:
125
- - - ! '>='
125
+ - - ">="
126
126
  - !ruby/object:Gem::Version
127
127
  version: 1.9.2
128
128
  required_rubygems_version: !ruby/object:Gem::Requirement
129
129
  requirements:
130
- - - ! '>='
130
+ - - ">="
131
131
  - !ruby/object:Gem::Version
132
132
  version: '0'
133
133
  requirements: []