Sha256: 8e5cdddd5625402c7f4d43d37221fa1f5da7ee39273404fb382ca15e5e1022ef

Contents?: true

Size: 1.22 KB

Versions: 10

Compression:

Stored size: 1.22 KB

Contents

# frozen_string_literal: true

# This file is part of PacketGen
# See https://github.com/sdaubert/packetgen for more informations
# Copyright (C) 2016 Sylvain Daubert <sylvain.daubert@laposte.net>
# This program is published under MIT license.

module PacketGen
  module Header
    class DNS
      # @!parse
      #  # DNS option is a TLV object:
      #  # * {#code} is a {Types::Int16},
      #  # * {#length #length} is a {Types::Int16},
      #  # * {#data} is a {Types::String}.
      #  #
      #  # @since 1.3.0
      #  # @since 3.1.0 defined with {Types::AbstractTLV}
      #  # @!parse class Option < Types::AbstractTLV; end
      #  # @!attribute code
      #  #   Alias for {#type}
      #  #   @return [Integer]
      #  # @!attribute data
      #  #   Alias for {#value}
      #  #   @return [Types::String]
      #  class Option < Types::AbstractTLV; end
      # @private
      Option = Types::AbstractTLV.create(type_class: Types::Int16,
                                         length_class: Types::Int16,
                                         aliases: { code: :type, data: :value })

      # Array of {Option}.
      # @since 3.1.1
      class ArrayOfOptions < Types::Array
        set_of Option
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
packetgen-3.3.1 lib/packetgen/header/dns/option.rb
packetgen-3.3.0 lib/packetgen/header/dns/option.rb
packetgen-3.2.2 lib/packetgen/header/dns/option.rb
packetgen-3.2.1 lib/packetgen/header/dns/option.rb
packetgen-3.2.0 lib/packetgen/header/dns/option.rb
packetgen-3.1.8 lib/packetgen/header/dns/option.rb
packetgen-3.1.7 lib/packetgen/header/dns/option.rb
packetgen-3.1.6 lib/packetgen/header/dns/option.rb
packetgen-3.1.5 lib/packetgen/header/dns/option.rb
packetgen-3.1.4 lib/packetgen/header/dns/option.rb