class Packetnom::Packet::Tcp

Attributes

ack[RW]
cbits[RW]
checksum[RW]
control[RW]
controlbits[RW]
dest_port[RW]
dport[RW]
dst_port[RW]
ecn[RW]
offset[RW]
reserved[RW]
seq[RW]
size[RW]
source_port[RW]

Attributes

sport[RW]

Attributes

src_port[RW]

Attributes

sum[RW]
uptr[RW]
urgent[RW]
win[RW]
window[RW]
windowsize[RW]

Public Class Methods

new( bytes ) click to toggle source

Initialize the packet

# File lib/packet/tcp.rb, line 21
def initialize( bytes )               
    @src_port = bytes[34..35].join().to_i(16).to_s(10).to_i
    @dst_port = bytes[36..37].join().to_i(16).to_s(10).to_i
    
    @seq = bytes[38..41].join().to_i(16).to_s(10).to_i

    @ack = bytes[42..45].join().to_i(16).to_s(10).to_i

    @offset = bytes[46].split(//)[0].to_i(16).to_s(10)

    @reserved = bytes[46].split(//)[1].to_i(16).to_s(10)
    @ecn = bytes[47].split(//)[0].to_i(16).to_s(10)
    @cbits = bytes[47].split(//)[1].to_i(16).to_s(10)

    @win = bytes[48..49].join().to_i(16)
    @sum = bytes[50..51].join().to_i(16)
    @uptr = bytes[52..53].join().to_i(16)
end