Main Page | Modules | Class Hierarchy | Class List | Directories | Class Members | Related Pages | Examples

FullIPv4SessionKey Class Reference

a session key that includes both IPv4 and transport layer addresses More...

#include <FullIPv4SessionKey.h>

Inheritance diagram for FullIPv4SessionKey:

StreamKey List of all members.

Public Member Functions

 FullIPv4SessionKey (IPv4Addr srcAddr, IPv4Addr dstAddr, uint16_t proto, uint16_t srcPort, uint16_t dstPort, bool bi=true)
 FullIPv4SessionKey (const FullIPv4SessionKey &toCopy)
FullIPv4SessionKeyoperator= (const FullIPv4SessionKey &rhs)
virtual FullIPv4SessionKeyclone (void) const
virtual bool operator== (const StreamKey &rhs) const
virtual bool operator< (const StreamKey &rhs) const
virtual const PacketAttributeValuegetAttrib (const PacketAttribute &attrib) const throw ( UnknownAttributeException )
 Get a packet attribute for the entire stream keyed by the StreamKey.
virtual bool isBidirectional (void) const
 Does the stream represent both sides of a bidirectional flow?
virtual uint32_t getDirection (const TraceIterator &packet) const
 determine the direction of a packet relative to a bidirectional StreamKey
virtual std::string toString (void) const
virtual bool setBidir (bool bidir)
 explicitly set whether this key is bidirectional

Static Public Attributes

static const uint32_t DIR_FORWARD = 0
static const uint32_t DIR_REVERSE = 1

Detailed Description

a session key that includes both IPv4 and transport layer addresses

Note:
probably not the best way to do this, but it'll do for now


Member Function Documentation

const PacketAttributeValue & FullIPv4SessionKey::getAttrib const PacketAttribute attrib  )  const throw ( UnknownAttributeException ) [virtual]
 

Get a packet attribute for the entire stream keyed by the StreamKey.

Exceptions:
UnknownAttributeException The StreamKey does not deal with this PacketAttribute, so packets may or may not meet the criterion.

Implements StreamKey.

uint32_t FullIPv4SessionKey::getDirection const TraceIterator packet  )  const [virtual]
 

determine the direction of a packet relative to a bidirectional StreamKey

Returns:
StreamKey::DIR_FORWARD if the packet is in the forward direction (always true for a unidirectional StreamKey), StreamKey::DIR_REVERSE if it is in the reverse direction
Todo:
Possible support for StreamKeys with more than two directions?

Reimplemented from StreamKey.

bool FullIPv4SessionKey::operator< const StreamKey rhs  )  const [virtual]
 

operator< provided to support StrictWeakOrdering for STL containers

Implements StreamKey.

bool FullIPv4SessionKey::operator== const StreamKey rhs  )  const [virtual]
 

compare two StreamKeys for equality

Implements StreamKey.

bool FullIPv4SessionKey::setBidir bool  bidir  )  [virtual]
 

explicitly set whether this key is bidirectional

Returns:
previous value of bidirectional


Member Data Documentation

const uint32_t StreamKey::DIR_FORWARD = 0 [static, inherited]
 

Last type identifier used by a StreamKey subclass; a new StreamKey should use a type identifier one greater than this.


The documentation for this class was generated from the following files:
Generated on Thu Apr 5 01:02:37 2007 for ANTARES by  doxygen 1.4.2