RPacketContext::TPacketFilterV3 Class Reference

class RPacketContext::TPacketFilterV3 : public RPacketContext::TPacketFilterV2

Packet filter that supports packet filter types. Contains member data compatible with parameters required for configuring a packet filter on a Rel99/R4/R5 packet network. .

Inherits from the TPacketFilterV2 class.

Supported from 9.1

Inherits from

Public Member Functions
TPacketFilterV3 ( TPacketFilterType )
TPacketFilterV3 ()
TInt DestPortMax ()
TInt DestPortMin ()
TUint32 FlowLabel ()
TBool IsPresent ( TPacketFilterDataBitmapPos )
TInt ProtocolNumberOrNextHeader ()
void Reset ( TPacketFilterDataBitmapPos )
void Reset ()
TUint32 SPI ()
IMPORT_C TBool SetDestPortMax ( TInt )
IMPORT_C TBool SetDestPortMin ( TInt )
IMPORT_C TBool SetFlowLabel ( TUint32 )
IMPORT_C TBool SetProtocolNumberOrNextHeader ( TInt )
IMPORT_C TBool SetSPI ( TUint32 )
IMPORT_C TBool SetSrcAddr ( TIPAddress &)
IMPORT_C TBool SetSrcAddrSubnetMask ( TIPAddress &)
IMPORT_C TBool SetSrcPortMax ( TInt )
IMPORT_C TBool SetSrcPortMin ( TInt )
IMPORT_C TBool SetTOSorTrafficClass ( TUint16 )
const TIPAddress & SrcAddr ()
const TIPAddress & SrcAddrSubnetMask ()
TInt SrcPortMax ()
TInt SrcPortMin ()
TUint16 TOSorTrafficClass ()
Inherited Functions
RPacketContext::TPacketFilterV2::TPacketFilterV2()
TPacketBase::ExtensionId()const
TPacketBase::TPacketBase()
Public Member Enumerations
enum TPacketFilterDataBitmapPos {
EPacketFilterSrcAddr  = 0x001, EPacketFilterSrcAddrSubnetMask  = 0x002, EPacketFilterProtocolNumberOrNextHeader  = 0x004, EPacketFilterSrcPortMin  = 0x008, EPacketFilterSrcPortMax  = 0x010, EPacketFilterDestPortMin  = 0x020, EPacketFilterDestPortMax  = 0x040, EPacketFilterIPSecSPI  = 0x080, EPacketFilterTOSorTrafficClass  = 0x100, EPacketFilterFlowLabel  = 0x200
}
Protected Attributes
TUint16 iAllowedDataBitmap
TUint16 iPresentDataBitmap
TPacketFilterType iType
Inherited Attributes
RPacketContext::TPacketFilterV2::iDestPortMax
RPacketContext::TPacketFilterV2::iDestPortMin
RPacketContext::TPacketFilterV2::iEvaluationPrecedenceIndex
RPacketContext::TPacketFilterV2::iFlowLabel
RPacketContext::TPacketFilterV2::iIPSecSPI
RPacketContext::TPacketFilterV2::iId
RPacketContext::TPacketFilterV2::iProtocolNumberOrNextHeader
RPacketContext::TPacketFilterV2::iSrcAddr
RPacketContext::TPacketFilterV2::iSrcAddrSubnetMask
RPacketContext::TPacketFilterV2::iSrcPortMax
RPacketContext::TPacketFilterV2::iSrcPortMin
RPacketContext::TPacketFilterV2::iTOSorTrafficClass
TPacketBase::iExtensionId

Constructor & Destructor Documentation

TPacketFilterV3(TPacketFilterType)

IMPORT_C TPacketFilterV3 ( TPacketFilterType aType )

Standard Constructor: Version 3 of the API

iType is set to aType which is passed as parameter and can be of the type EPacketFilterTypeOne, EPacketFilterTypeTwo or EPacketFilterTypeThree. iPresentDataBitmap is initialised to zero. iAllowedDataBitmap is set to a valid combination of TPacketFilterV3DataBitmapPos according to aType.

Parameters

TPacketFilterType aType TPacketFilterType - Can take any of the following values: EPacketFilterTypeOne, EPacketFilterTypeTwo or EPacketFilterTypeThree.

TPacketFilterV3()

IMPORT_C TPacketFilterV3 ( )

Default Constructor

iType is set to EPacketFilterTypeUnknown

Member Functions Documentation

DestPortMax()

TInt DestPortMax ( ) [inline]

This method may be called by the client application. Gets the iDestPortMax value which has been set by the SetDestPortMax method.

DestPortMin()

TInt DestPortMin ( ) [inline]

This method may be called by the client application. Gets the iDestPortMin value which has been set by the SetDestPortMin method.

FlowLabel()

TUint32 FlowLabel ( ) [inline]

This method may be called by the client application. Gets the iFlowLabel value which has been set by the SetFlowLabel method.

IsPresent(TPacketFilterDataBitmapPos)

TBool IsPresent ( TPacketFilterDataBitmapPos aDataMemberBitmapPos ) [inline]

This method may be called by the client application. Checks if the bitmap of a certain attribute is set or not.

Parameters

TPacketFilterDataBitmapPos aDataMemberBitmapPos Bitmap of an attribute.

ProtocolNumberOrNextHeader()

TInt ProtocolNumberOrNextHeader ( ) [inline]

This method may be called by the client application. Gets the iProtocolNumberOrNextHeader value which has been set by the SetProtocolNumberOrNextHeader method.

Reset(TPacketFilterDataBitmapPos)

void Reset ( TPacketFilterDataBitmapPos aDataMemberBitmapPos ) [inline]

This method may be called by the client application. Resets the iPresentDataBitmap of an attribute accordign to its Bitmap value.

Parameters

TPacketFilterDataBitmapPos aDataMemberBitmapPos Bitmap of an attribute.

Reset()

void Reset ( ) [inline]

This method may be called by the client application. Sets the iPresentDataBitmap to 0.

SPI()

TUint32 SPI ( ) [inline]

This method may be called by the client application. Gets the iIPSecSPI value which has been set by the SetSPI method.

SetDestPortMax(TInt)

IMPORT_C TBool SetDestPortMax ( TInt aDestPortMax )

This method may be called by the client application. Sets the iDestPortMax to aDestPortMax only if a valid combination of bitmap is present.

Parameters

TInt aDestPortMax TInt value to be set.

SetDestPortMin(TInt)

IMPORT_C TBool SetDestPortMin ( TInt aDestPortMin )

This method may be called by the client application. Sets the iDestPortMin to aDestPortMin only if a valid combination of bitmap is present.

Parameters

TInt aDestPortMin TInt value to be set.

SetFlowLabel(TUint32)

IMPORT_C TBool SetFlowLabel ( TUint32 aFlowLabel )

This method may be called by the client application. Sets the iFlowLabel to aFlowLabel only if a valid combination of bitmap is present.

Parameters

TUint32 aFlowLabel TUint32 value to be set.

SetProtocolNumberOrNextHeader(TInt)

IMPORT_C TBool SetProtocolNumberOrNextHeader ( TInt aProtocolNumberOrNextHeader )

This method may be called by the client application. Sets the iProtocolNumberOrNextHeader to aProtocolNumberOrNextHeader only if a valid combination of bitmap is present.

Parameters

TInt aProtocolNumberOrNextHeader TInt value to be set.

SetSPI(TUint32)

IMPORT_C TBool SetSPI ( TUint32 aIPSecSPI )

This method may be called by the client application. Sets the iIPSecSPI to aIPSecSPI only if a valid combination of bitmap is present.

Parameters

TUint32 aIPSecSPI TUint32 value to be set.

SetSrcAddr(TIPAddress &)

IMPORT_C TBool SetSrcAddr ( TIPAddress & aSrcAddr )

This method may be called by the client application. Sets the iSrcAddr to a SrcAddr only if a valid combination of bitmap is present.

Parameters

TIPAddress & aSrcAddr TIPAddress value to be set.

SetSrcAddrSubnetMask(TIPAddress &)

IMPORT_C TBool SetSrcAddrSubnetMask ( TIPAddress & aSrcAddrSubnetMask )

This method may be called by the client application. Sets the iSrcAddrSubnetMask to aSrcAddrSubnetMask only if a valid combination of bitmap is present.

Parameters

TIPAddress & aSrcAddrSubnetMask TIPAddress value to be set.

SetSrcPortMax(TInt)

IMPORT_C TBool SetSrcPortMax ( TInt aSrcPortMax )

This method may be called by the client application. Sets the iSrcPortMax to aSrcPortMax only if a valid combination of bitmap is present.

Parameters

TInt aSrcPortMax TInt value to be set.

SetSrcPortMin(TInt)

IMPORT_C TBool SetSrcPortMin ( TInt aSrcPortMin )

This method may be called by the client application. Sets the iSrcPortMin to aSrcPortMin only if a valid combination of bitmap is present.

Parameters

TInt aSrcPortMin TInt value to be set.

SetTOSorTrafficClass(TUint16)

IMPORT_C TBool SetTOSorTrafficClass ( TUint16 aTOSorTrafficClass )

This method may be called by the client application. Sets the iTOSorTrafficClass to aTOSorTrafficClass only if a valid combination of bitmap is present.

Parameters

TUint16 aTOSorTrafficClass TUint16 value to be set.

SrcAddr()

const TIPAddress & SrcAddr ( ) [inline]

Return the Domain Source address.

SrcAddrSubnetMask()

const TIPAddress & SrcAddrSubnetMask ( ) [inline]

Return the Domain Subnet mask.

SrcPortMax()

TInt SrcPortMax ( ) [inline]

This method may be called by the client application. Gets the iSrcPortMax value which has been set by the SetSrcPortMax method.

SrcPortMin()

TInt SrcPortMin ( ) [inline]

This method may be called by the client application. Gets the iSrcPortMin value which has been set by the SetSrcPortMin method.

TOSorTrafficClass()

TUint16 TOSorTrafficClass ( ) [inline]

This method may be called by the client application. Gets the iTOSorTrafficClass value which has been set by the SetTOSorTrafficClass method.

Member Enumerations Documentation

Enum TPacketFilterDataBitmapPos

Enumerators

EPacketFilterSrcAddr = 0x001

Bitmap for Domain Source address.

EPacketFilterSrcAddrSubnetMask = 0x002

Bitmap for Domain Subnet mask.

EPacketFilterProtocolNumberOrNextHeader = 0x004

Bitmap for Protocol number (IPv4) or Next Header (IPv6) field of incoming packets.

EPacketFilterSrcPortMin = 0x008

Bitmap for Minimum source port number of incoming packets.

EPacketFilterSrcPortMax = 0x010

Bitmap for Maximum source port number of incoming packets.

EPacketFilterDestPortMin = 0x020

Bitmap for Lowest destination port number of incoming packets.

EPacketFilterDestPortMax = 0x040

Bitmap for Maximum destination port number of incoming packets.

EPacketFilterIPSecSPI = 0x080

Bitmap for Security Parameter Index.

EPacketFilterTOSorTrafficClass = 0x100

Bitmap for Type of Service (IPv4) or Traffic Class (IPv6).

EPacketFilterFlowLabel = 0x200

Bitmap for Flow label (IPv6 only) of incoming packets.

Member Data Documentation

TUint16 iAllowedDataBitmap

TUint16 iAllowedDataBitmap [protected]

Bitmap of allowed attributes set in the constructor in accordance to type of the filter as defined in TS 23.060.

TUint16 iPresentDataBitmap

TUint16 iPresentDataBitmap [protected]

Bitmap of data members that are set(initialised) - data member can be set in allowed for the specified type of the filter only.

TPacketFilterType iType

TPacketFilterType iType [protected]

Initialised in the constructor - type can be I, II or III