23 #ifndef SYMBIAN_PDPSCPRSTATES_H |
23 #ifndef SYMBIAN_PDPSCPRSTATES_H |
24 #define SYMBIAN_PDPSCPRSTATES_H |
24 #define SYMBIAN_PDPSCPRSTATES_H |
25 |
25 |
26 #include <comms-infras/corescprstates.h> |
26 #include <comms-infras/corescprstates.h> |
27 #include <comms-infras/corescpractivities.h> |
27 #include <comms-infras/corescpractivities.h> |
|
28 #include "PDPMessageDefn.h" |
28 #include "PDPSCPR.h" |
29 #include "PDPSCPR.h" |
29 |
|
30 class TPDPFSMMessages |
|
31 { |
|
32 public: |
|
33 enum { ERealmId = 0x102822EF }; |
|
34 |
|
35 private: |
|
36 enum |
|
37 /** |
|
38 Definition of generic Link Tier message ids |
|
39 */ |
|
40 { |
|
41 EPDPFSMMessage = Messages::KNullMessageId + 1, |
|
42 }; |
|
43 public: |
|
44 typedef Messages::TMessageSigNumberNumber<EPDPFSMMessage, TPDPFSMMessages::ERealmId> TPDPFSMMessage; |
|
45 }; |
|
46 |
30 |
47 //-========================================================= |
31 //-========================================================= |
48 // |
32 // |
49 // |
33 // |
50 // |
34 // |
58 const TInt KFakeStart = 1; |
42 const TInt KFakeStart = 1; |
59 const TInt KBlocked = 2; |
43 const TInt KBlocked = 2; |
60 const TInt KUnblocked = 3; |
44 const TInt KUnblocked = 3; |
61 const TInt KSendErrorRecoveryRequest = 4; |
45 const TInt KSendErrorRecoveryRequest = 4; |
62 const TInt KContentionTag = 5; |
46 const TInt KContentionTag = 5; |
63 |
47 const TInt KUserAuthenticate = 6; |
64 |
48 |
65 typedef MeshMachine::TNodeContext<CPDPSubConnectionProvider, SCprStates::TContext> TContext; |
49 typedef MeshMachine::TNodeContext<CPDPSubConnectionProvider, SCprStates::TContext> TContext; |
66 typedef MeshMachine::TNodeContext<CPDPDefaultSubConnectionProvider, PDPSCprStates::TContext> TDefContext; |
50 typedef MeshMachine::TNodeContext<CPDPDefaultSubConnectionProvider, PDPSCprStates::TContext> TDefContext; |
67 |
51 |
68 //-========================================================= |
52 //-========================================================= |
75 |
59 |
76 DECLARE_SMELEMENT_HEADER( TNoTagOrError, MeshMachine::TStateFork<TContext>, NetStateMachine::MStateFork, TContext ) |
60 DECLARE_SMELEMENT_HEADER( TNoTagOrError, MeshMachine::TStateFork<TContext>, NetStateMachine::MStateFork, TContext ) |
77 virtual TInt TransitionTag(); |
61 virtual TInt TransitionTag(); |
78 DECLARE_SMELEMENT_FOOTER( TNoTagOrError ) |
62 DECLARE_SMELEMENT_FOOTER( TNoTagOrError ) |
79 |
63 |
80 DECLARE_SMELEMENT_HEADER( TNoTagOrAlreadyStarted, MeshMachine::TStateFork<TContext>, NetStateMachine::MStateFork, TContext ) |
64 DECLARE_SMELEMENT_HEADER( TNoTagOrUserAuthenticateOrAlreadyStarted, MeshMachine::TStateFork<TDefContext>, NetStateMachine::MStateFork, TDefContext ) |
81 virtual TInt TransitionTag(); |
65 virtual TInt TransitionTag(); |
82 DECLARE_SMELEMENT_FOOTER( TNoTagOrAlreadyStarted ) |
66 DECLARE_SMELEMENT_FOOTER( TNoTagOrUserAuthenticateOrAlreadyStarted ) |
83 |
67 |
84 DECLARE_SMELEMENT_HEADER( TSendDataClientIdleIfNoSubconnsAndNoClients, MeshMachine::TStateTransition<TDefContext>, NetStateMachine::MStateTransition, TDefContext ) |
68 DECLARE_SMELEMENT_HEADER( TSendDataClientIdleIfNoSubconnsAndNoClients, MeshMachine::TStateTransition<TDefContext>, NetStateMachine::MStateTransition, TDefContext ) |
85 virtual void DoL(); |
69 virtual void DoL(); |
86 DECLARE_SMELEMENT_FOOTER( TSendDataClientIdleIfNoSubconnsAndNoClients ) |
70 DECLARE_SMELEMENT_FOOTER( TSendDataClientIdleIfNoSubconnsAndNoClients ) |
87 |
71 |
100 |
84 |
101 //-========================================================= |
85 //-========================================================= |
102 //Provision |
86 //Provision |
103 //-========================================================= |
87 //-========================================================= |
104 DECLARE_SMELEMENT_HEADER( TSelfInit, MeshMachine::TStateTransition<TContext>, NetStateMachine::MStateTransition, PDPSCprStates::TContext) |
88 DECLARE_SMELEMENT_HEADER( TSelfInit, MeshMachine::TStateTransition<TContext>, NetStateMachine::MStateTransition, PDPSCprStates::TContext) |
105 virtual void SetupProvisionCfgL(); |
89 virtual void SetupProvisionCfgL(ESock::CCommsDatIapView* aIapView); |
106 virtual void DoL(); |
90 virtual void DoL(); |
107 DECLARE_SMELEMENT_FOOTER( TSelfInit) |
91 DECLARE_SMELEMENT_FOOTER( TSelfInit) |
108 |
92 |
109 DECLARE_AGGREGATED_TRANSITION2( |
93 DECLARE_AGGREGATED_TRANSITION2( |
110 TStoreProvisionAndInitSelf, |
94 TStoreProvisionAndInitSelf, |
129 virtual void DoL(); |
113 virtual void DoL(); |
130 private: |
114 private: |
131 void SetupSipServerAddrRetrievalL(RPacketContext::TProtocolConfigOptionV2& aPco); |
115 void SetupSipServerAddrRetrievalL(RPacketContext::TProtocolConfigOptionV2& aPco); |
132 void SetImsSignallingFlagL(RPacketContext::TProtocolConfigOptionV2& aPco, TBool aImcn); |
116 void SetImsSignallingFlagL(RPacketContext::TProtocolConfigOptionV2& aPco, TBool aImcn); |
133 TBool IsModeGsmL() const; |
117 TBool IsModeGsmL() const; |
|
118 void SetChapInformationL(RPacketContext::TProtocolConfigOptionV2& aPco); |
|
119 void CreateChallengeAndResponseForChapL(RPacketContext::TProtocolConfigOptionV2& aPco); |
134 DECLARE_SMELEMENT_FOOTER( TCreatePrimaryPDPCtx) |
120 DECLARE_SMELEMENT_FOOTER( TCreatePrimaryPDPCtx) |
135 |
121 |
136 DECLARE_SMELEMENT_HEADER( TCreateSecondaryOrMbmsPDPCtx, MeshMachine::TStateTransition<TContext>, NetStateMachine::MStateTransition, PDPSCprStates::TContext) |
122 DECLARE_SMELEMENT_HEADER( TCreateSecondaryOrMbmsPDPCtx, MeshMachine::TStateTransition<TContext>, NetStateMachine::MStateTransition, PDPSCprStates::TContext) |
137 virtual void DoL(); |
123 virtual void DoL(); |
138 DECLARE_SMELEMENT_FOOTER( TCreateSecondaryOrMbmsPDPCtx) |
124 DECLARE_SMELEMENT_FOOTER( TCreateSecondaryOrMbmsPDPCtx) |
413 |
399 |
414 DECLARE_SMELEMENT_HEADER( TCancelDataClientStartInPDP, MeshMachine::TStateTransition<TContext>, NetStateMachine::MStateTransition, PDPSCprStates::TContext) |
400 DECLARE_SMELEMENT_HEADER( TCancelDataClientStartInPDP, MeshMachine::TStateTransition<TContext>, NetStateMachine::MStateTransition, PDPSCprStates::TContext) |
415 virtual void DoL(); |
401 virtual void DoL(); |
416 DECLARE_SMELEMENT_FOOTER( TCancelDataClientStartInPDP ) |
402 DECLARE_SMELEMENT_FOOTER( TCancelDataClientStartInPDP ) |
417 |
403 |
|
404 //=========================================================== |
|
405 // User Authentication |
|
406 //=========================================================== |
|
407 DECLARE_SMELEMENT_HEADER(TSendAuthenticate, MeshMachine::TStateTransition<PDPSCprStates::TDefContext>, NetStateMachine::MStateTransition, PDPSCprStates::TDefContext) |
|
408 virtual void DoL(); |
|
409 DECLARE_SMELEMENT_FOOTER(TSendAuthenticate) |
|
410 |
|
411 DECLARE_SMELEMENT_HEADER(TAwaitingAuthenticateComplete, MeshMachine::TState<PDPSCprStates::TDefContext>, NetStateMachine::MState, PDPSCprStates::TDefContext) |
|
412 virtual TBool Accept(); |
|
413 DECLARE_SMELEMENT_FOOTER(TAwaitingAuthenticateComplete) |
|
414 |
418 } |
415 } |
419 |
416 |
420 #endif // SYMBIAN_PDPSCPRSTATES_H |
417 #endif // SYMBIAN_PDPSCPRSTATES_H |