IncomingRTPPkt Class Reference
[RTP data packets manipulation.RTP data packets manipulation.]

RTP packets received from other participants. More...

#include <rtppkt.h>

Inheritance diagram for IncomingRTPPkt:

RTPPacket

List of all members.

Public Member Functions

 IncomingRTPPkt (const unsigned char *block, size_t len)
 Build an RTP packet object from a data buffer.
 ~IncomingRTPPkt ()
bool isHeaderValid ()
 Get validity of this packet.
uint32 getSSRC () const
 Get synchronization source numeric identifier.
int32 unprotect (CryptoContext *pcc)
 Unprotect a received packet.
bool operator== (const IncomingRTPPkt &p) const
 Two incoming packets are equal if they come from sources with the same SSRC and have the same sequence number.
bool operator!= (const IncomingRTPPkt &p) const
 Two incoming packets are not equal if they come from different sources or have different sequence numbers.
bool checkZrtpChecksum (bool check)
 Recompute and check ZRTP checksum.


Detailed Description

RTP packets received from other participants.

This class is intented to construct a packet object just after every packet is received by the scheduled queue, so that they are processed in an understandable and format independent manner inside the stack.

Author:
Federico Montesino Pouzols <fedemp@altern.org>

Constructor & Destructor Documentation

IncomingRTPPkt::IncomingRTPPkt ( const unsigned char *  block,
size_t  len 
)

Build an RTP packet object from a data buffer.

This constructor first performs a generic RTP data packet header check, whose result can be checked via isHeaderValid().

Parameters:
block pointer to the buffer the whole packet is stored in.
len length of the whole packet, expressed in octets.
Note:
If check fails, the packet object is incomplete. checking isHeaderValid() is recommended before using a new RTPPacket object.

IncomingRTPPkt::~IncomingRTPPkt (  )  [inline]


Member Function Documentation

bool IncomingRTPPkt::isHeaderValid (  )  [inline]

Get validity of this packet.

Returns:
whether the header check performed at construction time ended successfully.

uint32 IncomingRTPPkt::getSSRC (  )  const [inline]

Get synchronization source numeric identifier.

Returns:
32-bits Synchronization SouRCe numeric identifier, in host order.

int32 IncomingRTPPkt::unprotect ( CryptoContext pcc  ) 

Unprotect a received packet.

Perform SRTP processing on this packet.

Parameters:
pcc Pointer to SRTP CryptoContext.
Returns:
one if no errors, -1 if authentication failed, -2 if replay check failed

bool IncomingRTPPkt::operator== ( const IncomingRTPPkt p  )  const [inline]

Two incoming packets are equal if they come from sources with the same SSRC and have the same sequence number.

bool IncomingRTPPkt::operator!= ( const IncomingRTPPkt p  )  const [inline]

Two incoming packets are not equal if they come from different sources or have different sequence numbers.

bool IncomingRTPPkt::checkZrtpChecksum ( bool  check  ) 

Recompute and check ZRTP checksum.

If the check parameter is true then this method recomputes the ZRTP checksum and compares it with the checksum conatined in the packet. If the parameter is set to false the method only adjusts the length of the data.

Parameters:
check if true recompute and check, otherwise adjust length of packet data only.
Returns:
true if check is ok or only length was adjusted. If check fails returns false


The documentation for this class was generated from the following file:
Generated on Fri Jan 18 21:34:52 2008 for ccRTP by  doxygen 1.5.4