Sha256: 0791bbe94ddf8f3d1a6a726868a4fdcf2ef1f7e7c242095a6505eda616fd4fe8

Contents?: true

Size: 1.08 KB

Versions: 3

Compression:

Stored size: 1.08 KB

Contents

# 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.

# frozen_string_literal: true

module PacketGen
  module Header
    class EAP
      # Extensible Authentication Protocol (EAP) -
      # {https://tools.ietf.org/html/rfc3748#section-5.4 MD5 challenge}
      # @author Sylvain Daubert
      # @since 2.1.4
      class MD5 < EAP
        delete_field :body
        undef body

        # @!attribute value_size
        #  @return [Integer] 8-bit value size
        define_field :value_size, Types::Int8
        # @!attribute value
        #  @return [::String]
        define_field :value, Types::String,
                     builder: ->(h, t) { t.new(length_from: h[:value_size]) }
        # @!attribute optional_name
        #  @return [::String]
        define_field :optional_name, Types::String

        # @return [EAP::MD5]
        def initialize(options={})
          super({ type: 4 }.merge!(options))
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
packetgen-2.8.1 lib/packetgen/header/eap/md5.rb
packetgen-2.8.0 lib/packetgen/header/eap/md5.rb
packetgen-2.7.0 lib/packetgen/header/eap/md5.rb