CPppLcp Class Reference

class CPppLcp : public ESock::CSubConnectionFlowBase

PPP Link Control Protocol class. This class oversees all the other PPP protocol classes, in addition to implementing the LCP state machine. Objects are instantiated at initialization or as necessary to implement the protocols: CCP, authentication, CBCP, IPCP, IPV6CP

Public Member Functions
IMPORT_C void AgentToFlowNotification ( TInt )
void Authenticate (CPppAuthentication *)
IMPORT_C void AuthenticateResponseMessage ()
IMPORT_C void BinderLinkUp ( TPppProtocol )
TBool CallbackEnabled ()
void CallbackGrantedAndAuthenticated ()
TCallbackIETFRequestType CallbackRequestType ()
void CancelAuthenticate (CPppAuthentication *)
void CancelRead ()
CObjectConIx * ContainerForDlls ()
IMPORT_C void Destroy ()
TBool DoLcpExts ()
TBool DoesDllExist (const TDesC &)
IMPORT_C void Error ( TInt )
IMPORT_C ESock::CSubConnectionFlowBase * Flow ()
void FlowDown ( TInt , MNifIfNotify::TAction )
void FlowUp ()
const CPppAuthConfig * GetAuthConfig ()
const CBCAProvision * GetBCAProvision ()
IMPORT_C ESock::MLowerControl * GetControlL (const TDesC8 &)
const CCredentialsConfig * GetCredentials ()
const TDesC8 & GetExcessData ()
const CPppLcpConfig * GetLcpConfig ()
const CIPConfig * GetNcpConfig ()
const CPppProvisionInfo * GetPppAgentConfig ()
void LinkFlowOn ()
void LinkLayerUp ()
void LinkRecv ( RMBufChain &)
TInt MaxReceiveSize ()
void NcpUp ()
IMPORT_C CPppLcp * NewL ( ESock::CSubConnectionFlowFactoryBase &, const Messages::TNodeId &, ESock::CProtocolIntfBase *)
TInt Notification ( TAgentToNifEventType , void *)
void PhaseAdvance ( TPppPhase )
void PhaseComplete ()
void PhaseRetard ( TPppPhase , TInt )
void PppClose ( TInt )
CPppLinkBase * PppLink ()
CPppLcpConfig::TPppLinkMode PppLinkMode ()
TInt PppOpen ()
void PppUnloadCompressor ()
IMPORT_C void Process ( RMBufChain &)
void Progress ( TInt , TInt )
IMPORT_C void ProvisionConfig (const ESock::RMetaExtensionContainerC &)
TBool QueryExternalIPConfiguration ()
void RegisterRecvr ( MPppRecvr *)
void ReregisterRecvr ( MPppRecvr *)
ESock::MLowerDataSender::TSendResult Send ( RMBufChain &, TUint )
TUint8 SendEchoRequest ()
void SendIdentification ()
void SetMaxReceiveSize ( TInt )
void SetMaxTransferSize ( TInt )
IMPORT_C void StartSending ()
void Stop ( TInt , MNifIfNotify::TAction )
IMPORT_C void StopFlow ( TInt )
void StopProtocol ( TUint )
IMPORT_C void SubConnectionError ( TInt )
IMPORT_C void SubConnectionGoingDown ()
void TerminateLink ( MNifIfNotify::TAction , TInt )
IMPORT_C void Unbind ( ESock::MUpperDataReceiver *, ESock::MUpperControl *)
Protected Member Functions
CPppLcp ( ESock::CSubConnectionFlowFactoryBase &, const Messages::TNodeId &, ESock::CProtocolIntfBase *)
~CPppLcp ()
IMPORT_C ESock::MFlowBinderControl * DoGetBinderControlL ()
TInt DoStartFlow ()
void DoStopFlow ( TInt , MNifIfNotify::TAction )
IMPORT_C void FsmCheckConfigRequest ( RPppOptionList &, RPppOptionList &, RPppOptionList &, RPppOptionList &)
IMPORT_C TBool FsmConfigRequestOptionsValid ( RPppOptionList &)
IMPORT_C void FsmFillinConfigRequestL ( RPppOptionList &)
IMPORT_C void FsmLayerDown ( TInt )
IMPORT_C TInt FsmLayerStarted ()
IMPORT_C void FsmLayerUp ()
IMPORT_C void FsmRecvConfigAck ( RPppOptionList &)
IMPORT_C void FsmRecvConfigNak ( RPppOptionList &, RPppOptionList &)
IMPORT_C void FsmRecvConfigReject ( RPppOptionList &, RPppOptionList &)
IMPORT_C TBool FsmRecvUnknownCode ( TUint8 , TUint8 , TInt , RMBufChain &)
IMPORT_C TBool FsmRejectOptionsValid ( RPppOptionList &, RPppOptionList &)
IMPORT_C void FsmTerminationPhaseComplete ()
void InitL ()
void ProvisionConfigL (const ESock::RMetaExtensionContainerC &)
IMPORT_C void ReceivedL (const Messages::TRuntimeCtxId &, const Messages::TNodeId &, Messages::TSignatureBase &)
Private Member Functions
TBool AllNcpsUp ()
INLINE void InitCallbackInfoL ()
void MaybePostDataClientIdle ()
INLINE void NewCallbackRequestInfoL ( TCallbackIETFRequestType )
void NewMagicNumberL ( TUint &)
TInt NotificationMessage ( TAgentToNifEventType )
INLINE void PhaseAdvancesBeyondAuthenticate ()
void PostErrorMessage ( TInt )
void PostFlowDownMessage ( TInt )
void PostProgressMessage ( TInt , TInt )
TInt RetrieveDynamicProvisionInfo ()
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
ESock::CCommsProviderBase::AccessPointConfig()const
ESock::CCommsProviderBase::~CCommsProviderBase()
ESock::CSubConnectionFlowBase::CSubConnectionFlowBase(CSubConnectionFlowFactoryBase &,const Messages::TNodeId &,CProtocolIntfBase *)
ESock::CSubConnectionFlowBase::ControlProvider()const
ESock::CSubConnectionFlowBase::DeleteThisFlow()
ESock::CSubConnectionFlowBase::Factory()const
ESock::CSubConnectionFlowBase::FetchNodeInterfaceControlL(TInt)
ESock::CSubConnectionFlowBase::GetBinderControlL()
ESock::CSubConnectionFlowBase::HasControlPlane()const
ESock::CSubConnectionFlowBase::ProtocolIntf()const
ESock::CSubConnectionFlowBase::~CSubConnectionFlowBase()
Public Member Enumerations
enum TPppProtocol {
EPppProtocolBegin  = 1, EPppProtoNone  = EPppProtocolBegin, EPppIp4 , EPppIp6 , EPppAuth , EPppProtocolEnd
}
Private Member Enumerations
enum TMeshMachineFlowState { EStopped , EStarting , EStarted , EStopping }
Private Attributes
__FLOG_DECLARATION_MEMBER
const CAgentProvisionInfo * iAgentProvision
CPppAuthentication * iAuthenticate
TBool iAuthenticateDone
const CBCAProvision * iBCAProvision
CPppBinderIp4 * iBinder4
CPppBinderIp6 * iBinder6
TCallbackAction iCallbackAction
TBool iCallbackEnabled
TUint8 * iCallbackIETFRequestPacket
TInt iCallbackIETFRequestPacketLen
TCallbackIETFRequestType iCallbackIETFRequestType
TUint8 * iCallbackInfo
TInt iCallbackInfoLen
TBool iCallbackRequestGranted
TInt iConsecMagic
CObjectConIx * iContainerForDlls
const CCredentialsConfig * iCredentials
TBool iDoExternalIPConfiguration
TBool iDoLcpExts
TInt iError
TBool iGotCallbackInfo
TBool iInitialised
Messages::TNodeSignal::TMessageId iLastRequest
TBool iLastRequestErrored
Elements::TStateChange iLastStateChange
CPppLcpConfig::TPppLinkMode iLinkMode
TUint iLocMagicNumber
TMeshMachineFlowState iMMState
TInt iMaxRecvSize
TInt iMaxSendSize
TInt iNcpUpCount
TInt iOpenCount
TPppPhase iPhase
CPppAcp * iPppAcp
const CPppProvisionInfo * iPppAgentProvision
const CPppAuthConfig * iPppAuthConfig
CPppCcp * iPppCcp
const CPppLcpConfig * iPppLcpConfig
CPppLinkBase * iPppLink
CPppLrd * iPppLrd
CPppMsCbcpClient * iPppMsCbcp
const CIPConfig * iPppNcpConfig
TBool iRecursive
HBufC8 * iRecvIdentification
TTime iRecvTimeNotification
HBufC8 * iRecvTimeRemMessage
TTimeIntervalSeconds iRecvTimeRemaining
TDblQue < MPppRecvr > iRecvrList
TUint iRemMagicNumber
TInt iSavedError
TBool iSentIdle
MNifIfNotify::TAction iTerminateAction
Inherited Attributes
ESock::CCommsProviderBase::iAccessPointConfig
ESock::CSubConnectionFlowBase::iLastRequestOriginator
ESock::CSubConnectionFlowBase::iProtocolIntf
ESock::CSubConnectionFlowBase::iSubConnectionProvider

Constructor & Destructor Documentation

CPppLcp(ESock::CSubConnectionFlowFactoryBase &, const Messages::TNodeId &, ESock::CProtocolIntfBase *)

IMPORT_C CPppLcp ( ESock::CSubConnectionFlowFactoryBase & aFactory,
const Messages::TNodeId & aSubConnId,
ESock::CProtocolIntfBase * aProtocolIntf
) [protected]

~CPppLcp()

IMPORT_C ~CPppLcp ( ) [protected, virtual]

Member Functions Documentation

AgentToFlowNotification(TInt)

IMPORT_C void AgentToFlowNotification ( TInt aNotificationId ) [virtual]

Parameters

TInt aNotificationId

AllNcpsUp()

TBool AllNcpsUp ( ) [private]

Authenticate(CPppAuthentication *)

void Authenticate ( CPppAuthentication * aAp )

Parameters

CPppAuthentication * aAp

AuthenticateResponseMessage()

IMPORT_C void AuthenticateResponseMessage ( ) [virtual]

BinderLinkUp(TPppProtocol)

IMPORT_C void BinderLinkUp ( TPppProtocol aProtocol ) [virtual]

Parameters

TPppProtocol aProtocol

CallbackEnabled()

TBool CallbackEnabled ( ) [inline]

CallbackGrantedAndAuthenticated()

void CallbackGrantedAndAuthenticated ( )

To be called when the authentication (if any) has been completed successfully. If there's no authentication at all, this should be called at the point where the authentication phase would otherwise be.

If the other end has agreed to our request for callback, then this causes NETDIAL to be notified that it's "all systems go" for callback.

If the other end has not confirmed accepted our request for callback, or if we haven't asked, then this does nothing.

CallbackRequestType()

TCallbackIETFRequestType CallbackRequestType ( ) [inline]

CancelAuthenticate(CPppAuthentication *)

void CancelAuthenticate ( CPppAuthentication * aAp )

Parameters

CPppAuthentication * aAp

CancelRead()

void CancelRead ( )

Unused

ContainerForDlls()

CObjectConIx * ContainerForDlls ( ) const [inline]

Destroy()

IMPORT_C void Destroy ( ) [virtual]

DoGetBinderControlL()

IMPORT_C ESock::MFlowBinderControl * DoGetBinderControlL ( ) [protected, virtual]

DoLcpExts()

TBool DoLcpExts ( ) const [inline]

DoStartFlow()

TInt DoStartFlow ( ) [protected]

Start the PPP link.

DoStopFlow(TInt, MNifIfNotify::TAction)

void DoStopFlow ( TInt aReason,
MNifIfNotify::TAction aAction
) [protected]

Cleanly stop the LCP link and notify the NIF. If aReason == KErrConnectionTerminated signal Authoritative stop: there is no graceful termination: PPP signals CNifAgentRef::LinkLayerDown to Nifman, which results in PPP deletion.

Parameters

TInt aReason The reason the link is going down
MNifIfNotify::TAction aAction The action to take once the link is down

DoesDllExist(const TDesC &)

TBool DoesDllExist ( const TDesC & aFilename )

Parameters

const TDesC & aFilename

Error(TInt)

IMPORT_C void Error ( TInt aError ) [virtual]

Parameters

TInt aError

Flow()

IMPORT_C ESock::CSubConnectionFlowBase * Flow ( ) [virtual]

FlowDown(TInt, MNifIfNotify::TAction)

void FlowDown ( TInt aError,
MNifIfNotify::TAction aAction
)

Parameters

TInt aError
MNifIfNotify::TAction aAction

FlowUp()

void FlowUp ( )

FsmCheckConfigRequest(RPppOptionList &, RPppOptionList &, RPppOptionList &, RPppOptionList &)

IMPORT_C void FsmCheckConfigRequest ( RPppOptionList & aRequestList,
RPppOptionList & aAckList,
RPppOptionList & aNakList,
RPppOptionList & aRejList
) [protected, virtual]

Parameters

RPppOptionList & aRequestList
RPppOptionList & aAckList
RPppOptionList & aNakList
RPppOptionList & aRejList

FsmConfigRequestOptionsValid(RPppOptionList &)

IMPORT_C TBool FsmConfigRequestOptionsValid ( RPppOptionList & aList ) [protected, virtual]

Parameters

RPppOptionList & aList

FsmFillinConfigRequestL(RPppOptionList &)

IMPORT_C void FsmFillinConfigRequestL ( RPppOptionList & aRequestList ) [protected, virtual]

Parameters

RPppOptionList & aRequestList

FsmLayerDown(TInt)

IMPORT_C void FsmLayerDown ( TInt aReason =  KErrNone ) [protected, virtual]

Parameters

TInt aReason =  KErrNone

FsmLayerStarted()

IMPORT_C TInt FsmLayerStarted ( ) [protected, virtual]

Open the layer below. Upcall from the FSM.

FsmLayerUp()

IMPORT_C void FsmLayerUp ( ) [protected, virtual]

Signal up event to next layer above Upcall from the FSM.

FsmRecvConfigAck(RPppOptionList &)

IMPORT_C void FsmRecvConfigAck ( RPppOptionList & aReplyList ) [protected, virtual]

Received a Config Ack - apply the options Upcall from the FSM.

Parameters

RPppOptionList & aReplyList LCP options to use

FsmRecvConfigNak(RPppOptionList &, RPppOptionList &)

IMPORT_C void FsmRecvConfigNak ( RPppOptionList & aReplyList,
RPppOptionList & aReqList
) [protected, virtual]

Modify request after receiving a Config Nak Upcall from the FSM.

Parameters

RPppOptionList & aReplyList NAK'd LCP options
RPppOptionList & aReqList The associated original request to be modified

FsmRecvConfigReject(RPppOptionList &, RPppOptionList &)

IMPORT_C void FsmRecvConfigReject ( RPppOptionList & aReplyList,
RPppOptionList & aReqList
) [protected, virtual]

Modify request after receiving a Config Reject Upcall from the FSM.

Parameters

RPppOptionList & aReplyList NAK'd LCP options
RPppOptionList & aReqList The associated original request to be modified

FsmRecvUnknownCode(TUint8, TUint8, TInt, RMBufChain &)

IMPORT_C TBool FsmRecvUnknownCode ( TUint8 aCode,
TUint8 aId,
TInt aLength,
RMBufChain & aPacket
) [protected, virtual]

Parameters

TUint8 aCode
TUint8 aId
TInt aLength
RMBufChain & aPacket

FsmRejectOptionsValid(RPppOptionList &, RPppOptionList &)

IMPORT_C TBool FsmRejectOptionsValid ( RPppOptionList & aList,
RPppOptionList & aRequestList
) [protected, virtual]

Check if the option list specified matches the original Config-Request option list.

Used for conformance to RFC1661 sections 5.2 and 5.4 (the option list in a Config-Ack or Config-Reject must exactly match the option list in the original Config-Request - same option values in the same order with no new options appended).

Parameters

RPppOptionList & aList option list to check against (e.g. from a Config-Ack or Config-Reject etc).
RPppOptionList & aRequestList

FsmTerminationPhaseComplete()

IMPORT_C void FsmTerminationPhaseComplete ( ) [protected, virtual]

Called when the FSM has stopped. Upcall from the FSM.

GetAuthConfig()

const CPppAuthConfig * GetAuthConfig ( ) const [inline]

GetBCAProvision()

const CBCAProvision * GetBCAProvision ( ) const [inline]

GetControlL(const TDesC8 &)

IMPORT_C ESock::MLowerControl * GetControlL ( const TDesC8 & aProtocol ) [virtual]

Parameters

const TDesC8 & aProtocol

GetCredentials()

const CCredentialsConfig * GetCredentials ( ) const [inline]

GetExcessData()

const TDesC8 & GetExcessData ( ) const [inline]

GetLcpConfig()

const CPppLcpConfig * GetLcpConfig ( ) const [inline]

GetNcpConfig()

const CIPConfig * GetNcpConfig ( ) const [inline]

GetPppAgentConfig()

const CPppProvisionInfo * GetPppAgentConfig ( ) const [inline]

InitCallbackInfoL()

INLINE void InitCallbackInfoL ( ) [private]

InitL()

void InitL ( ) [protected]

Construct the Link Protocol Object

Exceptions
leaves

if could not allocate memory

LinkFlowOn()

void LinkFlowOn ( )

Link advisory flow on signal.

LinkLayerUp()

void LinkLayerUp ( )

Called from the lower layer when it becomes ready.

LinkRecv(RMBufChain &)

void LinkRecv ( RMBufChain & aPacket )

Called by the link layer for each new PPP packet received. Search registered Recvr list and deliver to all recipients.

Parameters

RMBufChain & aPacket MBuf chain containing received packet

MaxReceiveSize()

TInt MaxReceiveSize ( ) const [inline]

MaybePostDataClientIdle()

void MaybePostDataClientIdle ( ) [private]

NcpUp()

void NcpUp ( )

NewCallbackRequestInfoL(TCallbackIETFRequestType)

INLINE void NewCallbackRequestInfoL ( TCallbackIETFRequestType aRequestType ) [private]

Allocates a buffer containing a PPP callback request packet a la draft RFC.

Format is: [ length ] [ type ] [ .. info ... ]

Post-condition
Sets iCallbackIETFRequestPacket to point to the buffer allocated

Parameters

TCallbackIETFRequestType aRequestType Callback IETF request type code

NewL(ESock::CSubConnectionFlowFactoryBase &, const Messages::TNodeId &, ESock::CProtocolIntfBase *)

IMPORT_C CPppLcp * NewL ( ESock::CSubConnectionFlowFactoryBase & aFactory,
const Messages::TNodeId & aSubConnId,
ESock::CProtocolIntfBase * aProtocolIntf
) [static]

NewMagicNumberL(TUint &)

void NewMagicNumberL ( TUint & aMagicNumber ) [private, static]

Generate a new magic number, based upon existing number, machine unique ID and tick count.

Parameters

TUint & aMagicNumber Magic number to update

Notification(TAgentToNifEventType, void *)

TInt Notification ( TAgentToNifEventType aEvent,
void * aInfo
)

Notification from Agent

Parameters

TAgentToNifEventType aEvent Event type
void * aInfo Data relating to event

NotificationMessage(TAgentToNifEventType)

TInt NotificationMessage ( TAgentToNifEventType aNotificationId ) [private]

Parameters

TAgentToNifEventType aNotificationId

PhaseAdvance(TPppPhase)

void PhaseAdvance ( TPppPhase aNewPhase )

Switch to the next PPP operation phase. When the PPP phase is advanced, protocols may have reached their active phase and so have to be bound in to the main data path and signalled active.

Parameters

TPppPhase aNewPhase Phase just entered

PhaseAdvancesBeyondAuthenticate()

INLINE void PhaseAdvancesBeyondAuthenticate ( ) [private]

PhaseComplete()

void PhaseComplete ( )

Advance to the next PPP phase after successfully completing the current phase.

PhaseRetard(TPppPhase, TInt)

void PhaseRetard ( TPppPhase aNewPhase,
TInt aReason
)

Return to a previous PPP operation phase. When the PPP phase is retarded, active protocols may no longer be in their active phase and so have to be unbound from the main data path and signalled inactive.

Parameters

TPppPhase aNewPhase Phase just entered
TInt aReason Error code indicating the reason we are changing phases

PostErrorMessage(TInt)

void PostErrorMessage ( TInt aError ) [private]

Parameters

TInt aError

PostFlowDownMessage(TInt)

void PostFlowDownMessage ( TInt aError ) [private]

Parameters

TInt aError

PostProgressMessage(TInt, TInt)

void PostProgressMessage ( TInt aStage,
TInt aError
) [private]

Parameters

TInt aStage
TInt aError

PppClose(TInt)

void PppClose ( TInt aReason )

Parameters

TInt aReason

PppLink()

CPppLinkBase * PppLink ( ) [inline]

PppLinkMode()

CPppLcpConfig::TPppLinkMode PppLinkMode ( ) const [inline]

PppOpen()

TInt PppOpen ( )

Called by an upper layer when it is started.

PppUnloadCompressor()

void PppUnloadCompressor ( )

Unload the compression module after a compressed packet is rejected. Upcall from the FSM.

Process(RMBufChain &)

IMPORT_C void Process ( RMBufChain & aData ) [virtual]

Parameters

RMBufChain & aData

Progress(TInt, TInt)

void Progress ( TInt aStage,
TInt aError
)

Upcall from binders to send progress

Parameters

TInt aStage
TInt aError

ProvisionConfig(const ESock::RMetaExtensionContainerC &)

IMPORT_C void ProvisionConfig ( const ESock::RMetaExtensionContainerC & aConfigData ) [virtual]

Parameters

const ESock::RMetaExtensionContainerC & aConfigData

ProvisionConfigL(const ESock::RMetaExtensionContainerC &)

void ProvisionConfigL ( const ESock::RMetaExtensionContainerC & aConfigData ) [protected]

Handle ProvisionConfig messages from SCPR.

Provisioning requirements:

  • On receipt of a ProvisionConfig message, provisioning information in the SAccessPointConfig array is validated, and the following structures must be present:
  • on receipt of a StartFlow message:

Parameters

const ESock::RMetaExtensionContainerC & aConfigData

QueryExternalIPConfiguration()

TBool QueryExternalIPConfiguration ( )

Returns the external IP configuration flag.

ReceivedL(const Messages::TRuntimeCtxId &, const Messages::TNodeId &, Messages::TSignatureBase &)

IMPORT_C void ReceivedL ( const Messages::TRuntimeCtxId & aSender,
const Messages::TNodeId & aRecipient,
Messages::TSignatureBase & aMessage
) [protected, virtual]

Parameters

const Messages::TRuntimeCtxId & aSender
const Messages::TNodeId & aRecipient
Messages::TSignatureBase & aMessage

RegisterRecvr(MPppRecvr *)

void RegisterRecvr ( MPppRecvr * aRecvr )

Register an object that is interested in receiving certain packets. The receiver object knows the protocol number it is interested in.

Parameters

MPppRecvr * aRecvr Object to receive packets

ReregisterRecvr(MPppRecvr *)

void ReregisterRecvr ( MPppRecvr * aRecvr )

Reregister an object that is receiving certain packets. The receiver object knows the protocol number it is interested in.

Parameters

MPppRecvr * aRecvr Object registered to receive packets

RetrieveDynamicProvisionInfo()

TInt RetrieveDynamicProvisionInfo ( ) [private]

Retrieve Provisioning Information which becomes available at Flow start time.

Send(RMBufChain &, TUint)

ESock::MLowerDataSender::TSendResult Send ( RMBufChain & aPdu,
TUint aProtocol
)

Parameters

RMBufChain & aPdu
TUint aProtocol

SendEchoRequest()

TUint8 SendEchoRequest ( )

Send an LCP Echo Request frame. Called by CPppLrd::TimerComplete periodically

SendIdentification()

void SendIdentification ( )

Send an LCP Identification frame (RFC 1570).

SetMaxReceiveSize(TInt)

void SetMaxReceiveSize ( TInt aSize ) [inline]

Set the MRU

Parameters

TInt aSize

SetMaxTransferSize(TInt)

void SetMaxTransferSize ( TInt aLength ) [inline]

Set the MTU

Parameters

TInt aLength

StartSending()

IMPORT_C void StartSending ( ) [virtual]

Stop(TInt, MNifIfNotify::TAction)

void Stop ( TInt aReason,
MNifIfNotify::TAction aAction
)

Parameters

TInt aReason
MNifIfNotify::TAction aAction

StopFlow(TInt)

IMPORT_C void StopFlow ( TInt aError ) [virtual]

Parameters

TInt aError

StopProtocol(TUint)

void StopProtocol ( TUint aProtocol )

One of the NCP protocols has been shut down, so kill it. Searches for the registered protocol handler based on the protocol ID.

Parameters

TUint aProtocol PPP protocol number

SubConnectionError(TInt)

IMPORT_C void SubConnectionError ( TInt aError ) [virtual]

Parameters

TInt aError

SubConnectionGoingDown()

IMPORT_C void SubConnectionGoingDown ( ) [virtual]

TerminateLink(MNifIfNotify::TAction, TInt)

void TerminateLink ( MNifIfNotify::TAction aAction = MNifIfNotify::EDisconnect,
TInt aError =  KErrNone
)

Cleanly take down the LCP (and therefore PPP) link.

Parameters

MNifIfNotify::TAction aAction = MNifIfNotify::EDisconnect The action to take after the link terminates
TInt aError =  KErrNone The reason the link is going down

Unbind(ESock::MUpperDataReceiver *, ESock::MUpperControl *)

IMPORT_C void Unbind ( ESock::MUpperDataReceiver * aReceiver,
ESock::MUpperControl * aControl
) [virtual]

Parameters

ESock::MUpperDataReceiver * aReceiver
ESock::MUpperControl * aControl

Member Enumerations Documentation

Enum TMeshMachineFlowState

Enumerators

EStopped
EStarting
EStarted
EStopping

Enum TPppProtocol

Enumerators

EPppProtocolBegin = 1
EPppProtoNone = EPppProtocolBegin
EPppIp4
EPppIp6
EPppAuth
EPppProtocolEnd

Member Data Documentation

__FLOG_DECLARATION_MEMBER

__FLOG_DECLARATION_MEMBER [private]

const CAgentProvisionInfo * iAgentProvision

const CAgentProvisionInfo * iAgentProvision [private]

CPppAuthentication * iAuthenticate

CPppAuthentication * iAuthenticate [private]

TBool iAuthenticateDone

TBool iAuthenticateDone [private]

Whether authentication has been completed

const CBCAProvision * iBCAProvision

const CBCAProvision * iBCAProvision [private]

CPppBinderIp4 * iBinder4

CPppBinderIp4 * iBinder4 [private]

CPppBinderIp6 * iBinder6

CPppBinderIp6 * iBinder6 [private]

TCallbackAction iCallbackAction

TCallbackAction iCallbackAction [private]

TBool iCallbackEnabled

TBool iCallbackEnabled [private]

Whether CBCP is enabled

TUint8 * iCallbackIETFRequestPacket

TUint8 * iCallbackIETFRequestPacket [private]

TInt iCallbackIETFRequestPacketLen

TInt iCallbackIETFRequestPacketLen [private]

TCallbackIETFRequestType iCallbackIETFRequestType

TCallbackIETFRequestType iCallbackIETFRequestType [private]

TUint8 * iCallbackInfo

TUint8 * iCallbackInfo [private]

TInt iCallbackInfoLen

TInt iCallbackInfoLen [private]

TBool iCallbackRequestGranted

TBool iCallbackRequestGranted [private]

TInt iConsecMagic

TInt iConsecMagic [private]

CObjectConIx * iContainerForDlls

CObjectConIx * iContainerForDlls [private]

const CCredentialsConfig * iCredentials

const CCredentialsConfig * iCredentials [private]

TBool iDoExternalIPConfiguration

TBool iDoExternalIPConfiguration [private]

Whether we are configured to do Mobile IP

TBool iDoLcpExts

TBool iDoLcpExts [private]

Whether certain extended PPP options from RFC 1570 are to be handled

TInt iError

TInt iError [private]

The reason the link is going down

TBool iGotCallbackInfo

TBool iGotCallbackInfo [private]

Authentication protocol object Whether CBCP configuration has been read

TBool iInitialised

TBool iInitialised [private]

Messages::TNodeSignal::TMessageId iLastRequest

Messages::TNodeSignal::TMessageId iLastRequest [private]

The last request received

TBool iLastRequestErrored

TBool iLastRequestErrored [private]

Elements::TStateChange iLastStateChange

Elements::TStateChange iLastStateChange [private]

CPppLcpConfig::TPppLinkMode iLinkMode

CPppLcpConfig::TPppLinkMode iLinkMode [private]

Whether we are configured for client or server mode

TUint iLocMagicNumber

TUint iLocMagicNumber [private]

TMeshMachineFlowState iMMState

TMeshMachineFlowState iMMState [private]

TInt iMaxRecvSize

TInt iMaxRecvSize [private]

TInt iMaxSendSize

TInt iMaxSendSize [private]

TInt iNcpUpCount

TInt iNcpUpCount [private]

TInt iOpenCount

TInt iOpenCount [private]

Number of times PppOpen has been called without a corresponding PppClose

TPppPhase iPhase

TPppPhase iPhase [private]

Current PPP phase

CPppAcp * iPppAcp

CPppAcp * iPppAcp [private]

Authentication protocol framework object

const CPppProvisionInfo * iPppAgentProvision

const CPppProvisionInfo * iPppAgentProvision [private]

const CPppAuthConfig * iPppAuthConfig

const CPppAuthConfig * iPppAuthConfig [private]

CPppCcp * iPppCcp

CPppCcp * iPppCcp [private]

IP Protocol The Compression Control Protocol object

const CPppLcpConfig * iPppLcpConfig

const CPppLcpConfig * iPppLcpConfig [private]

CPppLinkBase * iPppLink

CPppLinkBase * iPppLink [private]

Lower link-layer object

CPppLrd * iPppLrd

CPppLrd * iPppLrd [private]

Link quality checking object

CPppMsCbcpClient * iPppMsCbcp

CPppMsCbcpClient * iPppMsCbcp [private]

const CIPConfig * iPppNcpConfig

const CIPConfig * iPppNcpConfig [private]

TBool iRecursive

TBool iRecursive [private]

HBufC8 * iRecvIdentification

HBufC8 * iRecvIdentification [private]

TTime iRecvTimeNotification

TTime iRecvTimeNotification [private]

HBufC8 * iRecvTimeRemMessage

HBufC8 * iRecvTimeRemMessage [private]

TTimeIntervalSeconds iRecvTimeRemaining

TTimeIntervalSeconds iRecvTimeRemaining [private]

TDblQue< MPppRecvr > iRecvrList

TDblQue < MPppRecvr > iRecvrList [private]

List of objects that can receive incoming packets

TUint iRemMagicNumber

TUint iRemMagicNumber [private]

TInt iSavedError

TInt iSavedError [private]

TBool iSentIdle

TBool iSentIdle [private]

MNifIfNotify::TAction iTerminateAction

MNifIfNotify::TAction iTerminateAction [private]

The action to take once the link goes down