Implements the Header Length for TCPHeader.

Header Definition

  Fixnum (4 bits)  :hlen
Methods
N
R
T
Included Modules
Class Public methods
new(args={})
# File lib/packetfu/protos/tcp.rb, line 53
                def initialize(args={})
                        super(args[:hlen])
                end
Instance Public methods
read(str)

Reads a string to populate the object.

# File lib/packetfu/protos/tcp.rb, line 65
                def read(str)
                        force_binary(str)
                        return self if str.nil? || str.size.zero?
                        if 1.respond_to? :ord
                                self[:hlen] = (str[0].ord & 0b11110000) >> 4
                        else
                                self[:hlen] = (str[0] & 0b11110000) >> 4
                        end
                        self
                end
to_i()

Returns the TcpHlen field as an integer. Note these will become the high bits at the TCP header’s offset, even though the lower 4 bits will be further chopped up.

# File lib/packetfu/protos/tcp.rb, line 60
                def to_i
                        hlen.to_i & 0b1111
                end
to_s()

Returns the object in string form.

# File lib/packetfu/protos/tcp.rb, line 77
                def to_s
                        [self.to_i].pack("C")
                end