class PacketFu::TcpOption::SACK
Selective Acknowledgement option.
www.networksorcery.com/enp/protocol/tcp/option004.htm
Note that SACK always takes its optlen from the size of the string.
Public Class Methods
new(args={})
click to toggle source
Calls superclass method
PacketFu::TcpOption.new
# File lib/packetfu/protos/tcp/option.rb, line 209 def initialize(args={}) super( args.merge(:kind => 5, :optlen => ((args[:value] || "").size + 2) ) ) end
Public Instance Methods
decode()
click to toggle source
# File lib/packetfu/protos/tcp/option.rb, line 224 def decode "SACK:#{self[:value]}" end
encode(str)
click to toggle source
# File lib/packetfu/protos/tcp/option.rb, line 228 def encode(str) temp_obj = self.class.new(:value => str) self[:value] = temp_obj.value self[:optlen] = temp_obj.optlen.value self end
optlen=(i)
click to toggle source
# File lib/packetfu/protos/tcp/option.rb, line 217 def optlen=(i); typecast i; end
value=(i)
click to toggle source
# File lib/packetfu/protos/tcp/option.rb, line 219 def value=(i) self[:optlen] = Int8.new(i.to_s.size + 2) self[:value] = StructFu::String.new(i) end