FreeBSD Manual Pages
Net::Packet::TCP(3) User Contributed Perl Documentation Net::Packet::TCP(3) NAME Net::Packet::TCP - Transmission Control Protocol layer 4 object SYNOPSIS use Net::Packet::Consts qw(:tcp); require Net::Packet::TCP; #A Build a layer my $layer = Net::Packet::TCP->new( dst => 22, options => "\x02\x04\x05\xb4", #A MSS=1460 ); $layer->pack; print 'RAW: '.unpack('H*', $layer->raw)."\n"; # Read a raw layer my $layer = Net::Packet::TCP->new(raw => $raw); print $layer->print."\n"; print 'PAYLOAD: '.unpack('H*', $layer->payload)."\n" if $layer->payload; DESCRIPTION This modules implements the encoding and decoding of the TCP layer. RFC: ftp://ftp.rfc-editor.org/in-notes/rfc793.txt See also Net::Packet::Layer and Net::Packet::Layer4 for other attributes and methods. ATTRIBUTES src dst Source and destination ports. flags TCP flags, see CONSTANTS. win The window size. seq ack Sequence and acknowledgment numbers. off The size in number of words of the TCP header. x2 Reserved field. checksum The TCP header checksum. urp Urgent pointer. options TCP options, as a hexadecimal string. METHODS new Object constructor. You can pass attributes that will overwrite default ones. Default values: src: getRandomHighPort() dst: 0 seq: getRandom32bitsInt() ack: 0 x2: 0 off: 0 flags: NP_TCP_FLAG_SYN win: 0xffff checksum: 0 urp: 0 options: "" recv Will search for a matching replies in framesSorted or frames from a Net::Packet::Dump object. pack Packs all attributes into a raw format, in order to inject to network. Returns 1 on success, undef otherwise. unpack Unpacks raw data from network and stores attributes into the object. Returns 1 on success, undef otherwise. getHeaderLength Returns the header length in bytes, not including TCP options. getOptionsLength Returns options length in bytes. haveFlagFin haveFlagSyn haveFlagRst haveFlagPsh haveFlagAck haveFlagUrg haveFlagEce haveFlagCwr Returns 1 if the specified TCP flag is set in flags attribute, 0 otherwise. CONSTANTS Load them: use Net::Packet::Consts qw(:tcp); NP_TCP_FLAG_FIN NP_TCP_FLAG_SYN NP_TCP_FLAG_RST NP_TCP_FLAG_PSH NP_TCP_FLAG_ACK NP_TCP_FLAG_URG NP_TCP_FLAG_ECE NP_TCP_FLAG_CWR TCP flag constants. AUTHOR Patrice <GomoR> Auffret COPYRIGHT AND LICENSE Copyright (c) 2004-2009, Patrice <GomoR> Auffret You may distribute this module under the terms of the Artistic license. See LICENSE.Artistic file in the source distribution archive. RELATED MODULES NetPacket, Net::RawIP, Net::RawSock POD ERRORS Hey! The above document had some coding errors, which are explained below: Around line 309: Non-ASCII character seen before =encoding in '#A Build'. Assuming CP1252 perl v5.32.1 2009-11-09 Net::Packet::TCP(3)
NAME | SYNOPSIS | DESCRIPTION | ATTRIBUTES | METHODS | CONSTANTS | AUTHOR | COPYRIGHT AND LICENSE | RELATED MODULES | POD ERRORS
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=Net::Packet::TCP&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>