File: srv.rb

package info (click to toggle)
ruby-net-dns 0.9.2-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 452 kB
  • sloc: ruby: 3,944; makefile: 6
file content (41 lines) | stat: -rw-r--r-- 965 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
module Net # :nodoc:
  module DNS
    class RR
      #------------------------------------------------------------
      # RR type SRV
      #------------------------------------------------------------
      class SRV < RR
        attr_reader :priority, :weight, :port, :host

        private

        def build_pack
          str = ""
        end

        def subclass_new_from_binary(data, offset)
          off_end = offset + @rdlength
          @priority, @weight, @port = data.unpack("@#{offset} n n n")
          offset += 6

          @host = []
          while offset < off_end
            len = data.unpack("@#{offset} C")[0]
            offset += 1
            str = data[offset..offset + len - 1]
            offset += len
            @host << str
          end
          @host = @host.join(".")
          offset
        end

        private

        def set_type
          @type = Net::DNS::RR::Types.new("SRV")
        end
      end
    end
  end
end