Logo Search packages:      
Sourcecode: poco version File versions  Download package

Public Member Functions | Static Public Attributes | Protected Member Functions | Private Attributes

Poco::Net::ICMPPacketImpl Class Reference

This is the abstract class for ICMP packet implementations. More...

#include <ICMPPacketImpl.h>

Inheritance diagram for Poco::Net::ICMPPacketImpl:
Inheritance graph
Collaboration diagram for Poco::Net::ICMPPacketImpl:
Collaboration graph

List of all members.

Public Member Functions

virtual std::string errorDescription (Poco::UInt8 *buffer, int length)=0
int getDataSize () const
 Sets data size.
 ICMPPacketImpl (int dataSize=48)
virtual int maxPacketSize () const
const Poco::UInt8 * packet (bool init=true)
virtual int packetSize () const =0
Poco::UInt16 sequence () const
 Returns the maximum permitted size of packet in number of octets.
void setDataSize (int dataSize)
 Returns the most recent sequence number generated.
virtual struct timeval time (Poco::UInt8 *buffer=0, int length=0) const =0
 Returns data size.
virtual std::string typeDescription (int typeId)=0
virtual bool validReplyID (unsigned char *buffer, int length) const =0
virtual ~ICMPPacketImpl ()
 Constructor. Creates an ICMPPacketImpl.

Static Public Attributes

static const Poco::UInt16 MAX_PACKET_SIZE = 4096
static const Poco::UInt16 MAX_SEQ_VALUE = 65535

Protected Member Functions

Poco::UInt16 checksum (Poco::UInt16 *addr, Poco::Int32 len)
virtual void initPacket ()=0
 Resets the sequence to zero.
Poco::UInt16 nextSequence ()
void resetSequence ()
 Increments sequence number and returns the new value.

Private Attributes

int _dataSize
Poco::UInt8 * _pPacket
Poco::UInt16 _seq
 Calculates the checksum for supplied buffer.

Detailed Description

This is the abstract class for ICMP packet implementations.

Definition at line 51 of file ICMPPacketImpl.h.

The documentation for this class was generated from the following files:

Generated by  Doxygen 1.6.0   Back to index