⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pana_client_fsm.h

📁 Diameter协议栈
💻 H
📖 第 1 页 / 共 2 页
字号:
    public AAA_StateTable<PANA_Client>{   public:       PANA_ClientStateTable();       class PacOfflineExitActionRxPSR : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.RxPSR();            }       };       class PacOfflineExitActionAuthUser : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.TxPDI();            }       };       class PacWaitEapMsgInExitActionTxPSA : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.TxPSA(NULL);            }       };       class PacWaitPaaExitActionRxPAR : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.RxPAR(false);            }       };       class PacWaitPaaExitActionRxPAN : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.RxPAN();            }       };       class PacWaitPaaExitActionRxPFER : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.RxPFER();            }       };       class PacWaitPaaExitActionRxPBR : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.RxPBR();            }       };       class PacWaitEapMsgExitActionTxPAN : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.TxPAN(true);           }       };       class PacWaitEapMsgExitActionTxPAR : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.TxPAR();           }       };       class PacWaitEapMsgExitActionTxPANTout : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.TxPAN(false);           }       };       class PacWaitEapResultExitActionEapOpen : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.TxPBA(false);                c.NotifyAuthorization();                c.NotifyScheduleLifetime();           }       };       class PacWaitEapResultCloseExitAction : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.TxPBA(true);                c.Disconnect();            }       };       class PacWaitEapResultExitActionTxPERPpac : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.TxPER(PANA_PPAC_CAPABILITY_UNSUPPORTED);           }       };       class PacWaitEapResultExitActionTxPERPcap : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.TxPER(PANA_PROTECTION_CAPABILITY_UNSUPPORTED);           }       };       class PacWait1stEapResultExitAction : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.TxPFEA(false);                c.NotifyEapRestart();           }       };       class PacWait1stEapResultCloseExitAction : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.TxPFEA(true);                c.Disconnect();            }       };              class PacWait1stEapResultRestartExitAction : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.NotifyEapRestart();           }       };       class PacOpenExitActionRxPPR : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.RxPPR();            }       };       class PacOpenExitActionTxPPR : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.TxPPR();            }       };       class PacOpenExitActionEapReAuth : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.TxPDI();            }       };       class PacOpenExitActionRxPAR : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.RxPAR(true);            }       };       class PacOpenExitActionRxPTR : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.RxPTR();            }       };       class PacOpenExitActionTxPTR : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.TxPTR(PANA_TERMCAUSE_LOGOUT);            }       };       class PacOpenExitActionTxPUR : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.TxPUR();            }       };       class PacOpenExitActionRxPUR : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.RxPUR();            }       };       class PacOpenExitActionTxPRAR : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.TxPRAR();            }       };       class PacWaitPRAAExitActionRxPRAA : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.RxPRAA();            }       };       class PacWaitPPAExitActionRxPPA : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.RxPPA();           }       };       class PacWaitPUAExitActionRxPUA : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.RxPUA();            }       };       class PacSessTermExitActionRxPTA : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.RxPTA();            }       };       class PacExitActionTimeout : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.Disconnect(PANA_TERMCAUSE_SESSION_TIMEOUT);           }       };       class PacExitActionRetransmission : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c);       };       class PacExitActionTxPEA : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.TxPEA();           }       };       class PacWaitPEAExitActionRxPEA : public AAA_Action<PANA_Client> {           virtual void operator()(PANA_Client &c) {                c.RxPEA(true);           }       };   private:       PacOfflineExitActionRxPSR              m_PacOfflineExitActionRxPSR;       PacOfflineExitActionAuthUser           m_PacOfflineExitActionAuthUser;       PacWaitEapMsgInExitActionTxPSA         m_PacWaitEapMsgInExitActionTxPSA;       PacWaitPaaExitActionRxPAR              m_PacWaitPaaExitActionRxPAR;       PacWaitPaaExitActionRxPAN              m_PacWaitPaaExitActionRxPAN;       PacWaitPaaExitActionRxPFER             m_PacWaitPaaExitActionRxPFER;       PacWaitPaaExitActionRxPBR              m_PacWaitPaaExitActionRxPBR;       PacWaitEapMsgExitActionTxPAR           m_PacWaitEapMsgExitActionTxPAR;       PacWaitEapMsgExitActionTxPAN           m_PacWaitEapMsgExitActionTxPAN;       PacWaitEapMsgExitActionTxPANTout       m_PacWaitEapMsgExitActionTxPANTout;       PacWaitEapResultExitActionEapOpen      m_PacWaitEapResultExitActionEapOpen;       PacWaitEapResultCloseExitAction        m_PacWaitEapResultCloseExitAction;       PacWaitEapResultExitActionTxPERPpac    m_PacWaitEapResultExitActionTxPERPpac;       PacWaitEapResultExitActionTxPERPcap    m_PacWaitEapResultExitActionTxPERPcap;       PacWait1stEapResultExitAction          m_PacWait1stEapResultExitAction;       PacWait1stEapResultCloseExitAction     m_PacWait1stEapResultCloseExitAction;       PacWait1stEapResultRestartExitAction   m_PacWait1stEapResultRestartExitAction;       PacOpenExitActionRxPPR                 m_PacOpenExitActionRxPPR;       PacOpenExitActionTxPPR                 m_PacOpenExitActionTxPPR;       PacOpenExitActionEapReAuth             m_PacOpenExitActionEapReAuth;       PacOpenExitActionRxPAR                 m_PacOpenExitActionRxPAR;       PacOpenExitActionRxPTR                 m_PacOpenExitActionRxPTR;       PacOpenExitActionTxPTR                 m_PacOpenExitActionTxPTR;       PacOpenExitActionTxPUR                 m_PacOpenExitActionTxPUR;       PacOpenExitActionRxPUR                 m_PacOpenExitActionRxPUR;       PacOpenExitActionTxPRAR                m_PacOpenExitActionTxPRAR;       PacWaitPRAAExitActionRxPRAA            m_PacWaitPRAAExitActionRxPRAA;       PacWaitPUAExitActionRxPUA              m_PacWaitPUAExitActionRxPUA;       PacWaitPPAExitActionRxPPA              m_PacWaitPPAExitActionRxPPA;       PacSessTermExitActionRxPTA             m_PacSessTermExitActionRxPTA;       PacExitActionRetransmission            m_PacExitActionRetransmission;       PacExitActionTimeout                   m_PacExitActionTimeout;       PacExitActionTxPEA                     m_PacExitActionTxPEA;       PacWaitPEAExitActionRxPEA              m_PacWaitPEAExitActionRxPEA;};class PANA_EXPORT PANA_PacSession : public      PANA_StateMachine<PANA_Client, PANA_SenderChannel>{   public:      PANA_PacSession(PANA_Node &n,                       PANA_ClientEventInterface &eif);      virtual ~PANA_PacSession();      virtual void Start() throw (AAA_Error);      virtual void EapSendResponse(AAAMessageBlock *response);      virtual void EapInvalidMessage();      virtual void EapSuccess();      virtual void EapTimeout();      virtual void EapFailure();      virtual void EapReAuthenticate();      virtual void UpdatePostPanaAddress(ACE_INET_Addr &addr,                                         std::string &message);      virtual void SendNotification(std::string &message);      virtual void Ping();      virtual void Stop();      PANA_CfgProviderInfo &PreferedISP() {         return m_PaC.PreferedISP();      }      PANA_CfgProviderInfo &PreferedNAP() {         return m_PaC.PreferedNAP();      }      virtual PANA_DeviceId &PacDeviceId() {         return m_PaC.PacDeviceId();      }      virtual PANA_DeviceId &PaaDeviceId() {         return m_PaC.PaaDeviceId();      }      bool &EnableDhcpBootstrap() {         return m_PaC.DhcpBootstrap().Enable();      }      bool &ResumePreviousSession() {         return m_PaC.AuxVariables().SecAssociationResumed();      }      std::string &CurrentInterface() {         return PANA_CFG_GENERAL().m_Interface;      }   private:      virtual void InitializeMsgMaps();      virtual void FlushMsgMaps();      virtual void GetBindAddress(ACE_INET_Addr &addr);      static PANA_ClientStateTable m_StateTable;      PANA_Node &m_Node;      PANA_SenderChannel m_Udp;      FsmTimer<PANA_PacEventVariable, PANA_PacSession> m_Timer;      PANA_Client m_PaC;};#endif // __PANA_CLIENT_FSM_H__

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -