本文整理汇总了C++中MlmeEnqueue函数的典型用法代码示例。如果您正苦于以下问题:C++ MlmeEnqueue函数的具体用法?C++ MlmeEnqueue怎么用?C++ MlmeEnqueue使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了MlmeEnqueue函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: AssocTimeoutAction
/*
==========================================================================
Description:
what the state machine will do after assoc timeout
==========================================================================
*/
VOID AssocTimeoutAction(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem)
{
USHORT Status;
DBGPRINT(RT_DEBUG_TRACE, "ASSOC - AssocTimeoutAction\n");
pAd->Mlme.AssocMachine.CurrState = ASSOC_IDLE;
Status = MLME_REJ_TIMEOUT;
MlmeEnqueue(pAd, MLME_CNTL_STATE_MACHINE, MT2_ASSOC_CONF, 2, &Status);
}
示例2: ApCliProbeTimeoutAtJoinAction
static VOID ApCliProbeTimeoutAtJoinAction(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem)
{
APCLI_CTRL_MSG_STRUCT ApCliCtrlMsg;
USHORT ifIndex = (USHORT)(Elem->Priv);
PULONG pCurrState = &pAd->ApCfg.ApCliTab[ifIndex].SyncCurrState;
APCLI_STRUCT *pApCliEntry = NULL;
MTWF_LOG(DBG_CAT_ALL, DBG_SUBCAT_ALL, DBG_LVL_TRACE, ("APCLI_SYNC - ProbeTimeoutAtJoinAction\n"));
if (ifIndex >= MAX_APCLI_NUM)
return;
pApCliEntry = &pAd->ApCfg.ApCliTab[ifIndex];
*pCurrState = SYNC_IDLE;
#ifdef APCLI_CONNECTION_TRIAL
if (ifIndex == 1)
*pCurrState = APCLI_CTRL_DISCONNECTED;
#endif /* APCLI_CONNECTION_TRIAL */
MTWF_LOG(DBG_CAT_ALL, DBG_SUBCAT_ALL, DBG_LVL_TRACE, ("APCLI_SYNC - MlmeAux.Bssid=%02x:%02x:%02x:%02x:%02x:%02x\n",
PRINT_MAC(pApCliEntry->MlmeAux.Bssid)));
if(!MAC_ADDR_EQUAL(pApCliEntry->MlmeAux.Bssid, ZERO_MAC_ADDR))
{
ApCliCtrlMsg.Status = MLME_SUCCESS;
#ifdef MAC_REPEATER_SUPPORT
ApCliCtrlMsg.BssIdx = ifIndex;
ApCliCtrlMsg.CliIdx = 0xFF;
#endif /* MAC_REPEATER_SUPPORT */
MlmeEnqueue(pAd, APCLI_CTRL_STATE_MACHINE, APCLI_CTRL_PROBE_RSP,
sizeof(APCLI_CTRL_MSG_STRUCT), &ApCliCtrlMsg, ifIndex);
} else
{
MlmeEnqueue(pAd, APCLI_CTRL_STATE_MACHINE, APCLI_CTRL_JOIN_REQ_TIMEOUT, 0, NULL, ifIndex);
}
return;
}
示例3: MeshCtrlDisconnectAtDicoveryAction
static VOID
MeshCtrlDisconnectAtDicoveryAction(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem)
{
MESH_CTRL_STATE *pCurrState = &(pAd->MeshTab.CtrlCurrentState);
INT i;
DBGPRINT(RT_DEBUG_TRACE, ("%s: Get Disconnect evt when Discovery.\n", __FUNCTION__));
for (i = 0; i < MAX_MESH_LINKS; i++)
{
MlmeEnqueue(pAd, MESH_LINK_MNG_STATE_MACHINE, MESH_LINK_MNG_CNCL, 0, NULL, i);
}
#ifdef AP_SCAN_SUPPORT
MlmeEnqueue(pAd, AP_SYNC_STATE_MACHINE, APMT2_MLME_SCAN_CNCL, 0, NULL, 0);
#endif
*pCurrState = MESH_CTRL_IDLE;
}
示例4: MlmeAuthReqAction
/*
==========================================================================
Description:
IRQL = DISPATCH_LEVEL
==========================================================================
*/
VOID MlmeAuthReqAction(RTMP_ADAPTER *pAd, MLME_QUEUE_ELEM *Elem)
{
if (AUTH_ReqSend(pAd, Elem, &pAd->MlmeAux.AuthTimer, "AUTH", 1, NULL, 0))
pAd->Mlme.AuthMachine.CurrState = AUTH_WAIT_SEQ2;
else {
USHORT Status;
pAd->Mlme.AuthMachine.CurrState = AUTH_REQ_IDLE;
Status = MLME_INVALID_FORMAT;
MlmeEnqueue(pAd, MLME_CNTL_STATE_MACHINE, MT2_AUTH_CONF, 2, &Status, 0);
}
}
示例5: InvalidStateWhenAuth
/*
==========================================================================
Description:
IRQL = DISPATCH_LEVEL
==========================================================================
*/
VOID InvalidStateWhenAuth(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem)
{
USHORT Status;
DBGPRINT(RT_DEBUG_TRACE,
("AUTH - InvalidStateWhenAuth (state=%ld), reset AUTH state machine\n",
pAd->Mlme.AuthMachine.CurrState));
pAd->Mlme.AuthMachine.CurrState = AUTH_REQ_IDLE;
Status = MLME_STATE_MACHINE_REJECT;
MlmeEnqueue(pAd, MLME_CNTL_STATE_MACHINE, MT2_AUTH_CONF, 2, &Status, 0);
}
示例6: ApCliCtrlDeAuthAction
/*
==========================================================================
Description:
APCLI MLME Disconnect Req state machine procedure
==========================================================================
*/
static VOID ApCliCtrlDeAuthAction(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem)
{
PAPCLI_STRUCT pApCliEntry;
MLME_DEAUTH_REQ_STRUCT DeAuthFrame;
USHORT ifIndex = (USHORT)(Elem->Priv);
PULONG pCurrState = NULL;
BOOLEAN bValid = FALSE;
DBGPRINT(RT_DEBUG_TRACE, ("(%s) MLME Request Disconnect.\n", __FUNCTION__));
if ((ifIndex >= MAX_APCLI_NUM)
)
return;
pCurrState = &pAd->ApCfg.ApCliTab[ifIndex].CtrlCurrState;
pApCliEntry = &pAd->ApCfg.ApCliTab[ifIndex];
/* Fill in the related information */
DeAuthFrame.Reason = (USHORT)REASON_DEAUTH_STA_LEAVING;
COPY_MAC_ADDR(DeAuthFrame.Addr, pAd->ApCfg.ApCliTab[ifIndex].MlmeAux.Bssid);
bValid = pApCliEntry->Valid;
MlmeEnqueue(pAd,
APCLI_AUTH_STATE_MACHINE,
APCLI_MT2_MLME_DEAUTH_REQ,
sizeof(MLME_DEAUTH_REQ_STRUCT),
&DeAuthFrame,
ifIndex);
if (bValid)
ApCliLinkDown(pAd, ifIndex);
/* set the apcli interface be invalid. */
{
pApCliEntry->Valid = FALSE;
/* clear MlmeAux.Ssid and Bssid. */
NdisZeroMemory(pAd->ApCfg.ApCliTab[ifIndex].MlmeAux.Bssid, MAC_ADDR_LEN);
pAd->ApCfg.ApCliTab[ifIndex].MlmeAux.SsidLen = 0;
NdisZeroMemory(pAd->ApCfg.ApCliTab[ifIndex].MlmeAux.Ssid, MAX_LEN_OF_SSID);
pAd->ApCfg.ApCliTab[ifIndex].MlmeAux.Rssi = 0;
}
*pCurrState = APCLI_CTRL_DISCONNECTED;
return;
}
示例7: ApCliCtrlAssocReqTimeoutAction
/*
==========================================================================
Description:
APCLI MLME Assoc Req timeout state machine procedure
==========================================================================
*/
static VOID ApCliCtrlAssocReqTimeoutAction(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem)
{
MLME_ASSOC_REQ_STRUCT AssocReq;
PAPCLI_STRUCT pApCliEntry;
USHORT ifIndex = (USHORT)(Elem->Priv);
PULONG pCurrState = NULL;
DBGPRINT(RT_DEBUG_TRACE, ("(%s) Assoc Req Timeout.\n", __FUNCTION__));
if ((ifIndex >= MAX_APCLI_NUM)
)
return;
pCurrState = &pAd->ApCfg.ApCliTab[ifIndex].CtrlCurrState;
pApCliEntry = &pAd->ApCfg.ApCliTab[ifIndex];
/* give up to retry authentication req after retry it 5 times. */
{
pApCliEntry->AssocReqCnt++;
if (pApCliEntry->AssocReqCnt > 5)
{
*pCurrState = APCLI_CTRL_DISCONNECTED;
NdisZeroMemory(pAd->ApCfg.ApCliTab[ifIndex].MlmeAux.Bssid, MAC_ADDR_LEN);
NdisZeroMemory(pAd->ApCfg.ApCliTab[ifIndex].MlmeAux.Ssid, MAX_LEN_OF_SSID);
pApCliEntry->AssocReqCnt = 0;
#ifdef APCLI_AUTO_CONNECT_SUPPORT
if ((pAd->ApCfg.ApCliAutoConnectRunning == TRUE)
)
ApCliSwitchCandidateAP(pAd);
#endif /* APCLI_AUTO_CONNECT_SUPPORT */
return;
}
}
/* stay in same state. */
*pCurrState = APCLI_CTRL_ASSOC;
/* retry Association Req. */
DBGPRINT(RT_DEBUG_TRACE, ("(%s) Retry Association Req.\n", __FUNCTION__));
AssocParmFill(pAd, &AssocReq, pAd->ApCfg.ApCliTab[ifIndex].MlmeAux.Bssid, pAd->ApCfg.ApCliTab[ifIndex].MlmeAux.CapabilityInfo,
ASSOC_TIMEOUT, 5);
MlmeEnqueue(pAd, APCLI_ASSOC_STATE_MACHINE, APCLI_MT2_MLME_ASSOC_REQ,
sizeof(MLME_ASSOC_REQ_STRUCT), &AssocReq, ifIndex);
return;
}
示例8: FT_OTD_InvalidStateWhenFt
/*
==========================================================================
Description:
IRQL = DISPATCH_LEVEL
==========================================================================
*/
VOID FT_OTD_InvalidStateWhenFt(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem)
{
USHORT Status;
DBGPRINT(RT_DEBUG_TRACE,
("FT_OTD_ACTION - InvalidStateWhenFt (state=%lu), reset FT state machine\n",
pAd->Mlme.FtOtdActMachine.CurrState));
pAd->Mlme.FtOtdActMachine.CurrState = FT_OTD_IDLE;
Status = MLME_STATE_MACHINE_REJECT;
MlmeEnqueue(pAd, MLME_CNTL_STATE_MACHINE, MT2_FT_OTD_CONF, 2, &Status,
0);
}
示例9: MlmeAuthReqAction
void MlmeAuthReqAction(struct rt_rtmp_adapter *pAd, struct rt_mlme_queue_elem *Elem)
{
if (AUTH_ReqSend
(pAd, Elem, &pAd->MlmeAux.AuthTimer, "AUTH", 1, NULL, 0))
pAd->Mlme.AuthMachine.CurrState = AUTH_WAIT_SEQ2;
else {
u16 Status;
pAd->Mlme.AuthMachine.CurrState = AUTH_REQ_IDLE;
Status = MLME_INVALID_FORMAT;
MlmeEnqueue(pAd, MLME_CNTL_STATE_MACHINE, MT2_AUTH_CONF, 2,
&Status);
}
}
示例10: ApCliProbeTimeout
/*
==========================================================================
Description:
Becaon timeout handler, executed in timer thread
==========================================================================
*/
static VOID ApCliProbeTimeout(
IN PVOID SystemSpecific1,
IN PVOID FunctionContext,
IN PVOID SystemSpecific2,
IN PVOID SystemSpecific3)
{
#ifdef APCLI_CONNECTION_TRIAL
PAPCLI_STRUCT pApCliEntry = (APCLI_STRUCT *)FunctionContext;
RTMP_ADAPTER *pAd = (RTMP_ADAPTER *)pApCliEntry->pAd;
#else
RTMP_ADAPTER *pAd = (RTMP_ADAPTER *)FunctionContext;
#endif /*APCLI_CONNECTION_TRIAL*/
DBGPRINT(RT_DEBUG_TRACE, ("ApCli_SYNC - ProbeReqTimeout\n"));
#ifndef APCLI_CONNECTION_TRIAL
MlmeEnqueue(pAd, APCLI_SYNC_STATE_MACHINE, APCLI_MT2_PROBE_TIMEOUT, 0, NULL, 0);
#else
MlmeEnqueue(pAd, APCLI_SYNC_STATE_MACHINE, APCLI_MT2_PROBE_TIMEOUT, 0, NULL, pApCliEntry->ifIndex);
#endif /* APCLI_CONNECTION_TRIAL */
RTMP_MLME_HANDLER(pAd);
return;
}
示例11: ApCliAssocTimeoutAction
/*
==========================================================================
Description:
what the state machine will do after assoc timeout
==========================================================================
*/
static VOID ApCliAssocTimeoutAction(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem)
{
USHORT ifIndex = (USHORT)(Elem->Priv);
PULONG pCurrState = &pAd->ApCfg.ApCliTab[ifIndex].AssocCurrState;
DBGPRINT(RT_DEBUG_TRACE, ("APCLI_ASSOC - ApCliAssocTimeoutAction\n"));
*pCurrState = APCLI_ASSOC_IDLE;
MlmeEnqueue(pAd, APCLI_CTRL_STATE_MACHINE, APCLI_CTRL_ASSOC_REQ_TIMEOUT, 0, NULL, ifIndex);
return;
}
示例12: ApCliCtrlAuthReqTimeoutAction
/*
==========================================================================
Description:
APCLI MLME Auth Req timeout state machine procedure
==========================================================================
*/
static VOID ApCliCtrlAuthReqTimeoutAction(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem)
{
MLME_AUTH_REQ_STRUCT AuthReq;
PAPCLI_STRUCT pApCliEntry;
USHORT ifIndex = (USHORT)(Elem->Priv);
PULONG pCurrState = NULL;
if ((ifIndex >= MAX_APCLI_NUM)
)
return;
pCurrState = &pAd->ApCfg.ApCliTab[ifIndex].CtrlCurrState;
pApCliEntry = &pAd->ApCfg.ApCliTab[ifIndex];
DBGPRINT(RT_DEBUG_TRACE, ("(%s) Auth Req Timeout.\n", __FUNCTION__));
{
pApCliEntry->AuthReqCnt++;
if (pApCliEntry->AuthReqCnt > 5)
{
*pCurrState = APCLI_CTRL_DISCONNECTED;
NdisZeroMemory(pApCliEntry->MlmeAux.Bssid, MAC_ADDR_LEN);
NdisZeroMemory(pApCliEntry->MlmeAux.Ssid, MAX_LEN_OF_SSID);
pApCliEntry->AuthReqCnt = 0;
#ifdef APCLI_AUTO_CONNECT_SUPPORT
if ((pAd->ApCfg.ApCliAutoConnectRunning == TRUE)
)
ApCliSwitchCandidateAP(pAd);
#endif /* APCLI_AUTO_CONNECT_SUPPORT */
return;
}
}
/* stay in same state. */
*pCurrState = APCLI_CTRL_AUTH;
/* retry Authentication. */
DBGPRINT(RT_DEBUG_TRACE, ("(%s) Retry Auth Req.\n", __FUNCTION__));
COPY_MAC_ADDR(AuthReq.Addr, pApCliEntry->MlmeAux.Bssid);
AuthReq.Alg = pApCliEntry->MlmeAux.Alg; /*Ndis802_11AuthModeOpen; */
AuthReq.Timeout = AUTH_TIMEOUT;
MlmeEnqueue(pAd, APCLI_AUTH_STATE_MACHINE, APCLI_MT2_MLME_AUTH_REQ,
sizeof(MLME_AUTH_REQ_STRUCT), &AuthReq, ifIndex);
return;
}
示例13: ApCliTrialConnectTimeout
static VOID ApCliTrialConnectTimeout(
IN PVOID SystemSpecific1,
IN PVOID FunctionContext,
IN PVOID SystemSpecific2,
IN PVOID SystemSpecific3)
{
PAPCLI_STRUCT pApCliEntry = (APCLI_STRUCT *)FunctionContext;
RTMP_ADAPTER *pAd = (RTMP_ADAPTER *)pApCliEntry->pAd;
UCHAR ifIndex = pApCliEntry->ifIndex;
UCHAR BBPValue;
PULONG pCurrState = &pAd->ApCfg.ApCliTab[ifIndex].CtrlCurrState;
DBGPRINT(RT_DEBUG_TRACE, ("ApCli_SYNC - TrialConnectTimeout, Jump back to original Channel\n"));
AsicSwitchChannel(pAd, pAd->CommonCfg.CentralChannel, TRUE);
AsicEnableBssSync(pAd);//jump back to origin channel, regenerate beacon.
if (pAd->CommonCfg.BBPCurrentBW == BW_40)
{
}
if (*pCurrState == APCLI_CTRL_ASSOC) {
//trialConnectTimeout, and currect status is ASSOC,
//it means we got Auth Resp from new root AP already,
//we shall serve the origin channel traffic first,
//and jump back to trial channel to issue Assoc Req later,
//and finish four way-handshake if need.
DBGPRINT(RT_DEBUG_TRACE, ("%s, ApCliTrialConnectTimeout APCLI_CTRL_ASSOC set TrialConnectPhase2Timer\n", __func__));
RTMPSetTimer(&(pApCliEntry->TrialConnectPhase2Timer), TRIAL_TIMEOUT);
}
else {
//RTMPCancelTimer(&(pApCliEntry->ApCliMlmeAux.ProbeTimer), &Cancelled);
pApCliEntry->NewRootApRetryCnt++;
if (pApCliEntry->NewRootApRetryCnt >= 10) {
DBGPRINT(RT_DEBUG_TRACE, ("%s, RetryCnt:%d, pCurrState = %d, \n", __func__, pApCliEntry->NewRootApRetryCnt, *pCurrState));
pApCliEntry->TrialCh=0;
MlmeEnqueue(pAd, APCLI_CTRL_STATE_MACHINE, APCLI_CTRL_DISCONNECT_REQ, 0, NULL, ifIndex);
NdisZeroMemory(pAd->ApCfg.ApCliTab[ifIndex].CfgSsid, MAX_LEN_OF_SSID);//cleanup CfgSsid.
pApCliEntry->CfgSsidLen = 0;
pApCliEntry->NewRootApRetryCnt = 0;//cleanup retry count
pApCliEntry->Enable = FALSE;
}
else
*pCurrState = APCLI_CTRL_DISCONNECTED;//Disconnected State will bring the next probe req, auth req.
}
return;
}
示例14: ApCliAuthTimeout
/*
==========================================================================
Description:
function to be executed at timer thread when auth timer expires
==========================================================================
*/
static VOID ApCliAuthTimeout(
IN PVOID SystemSpecific1,
IN PVOID FunctionContext,
IN PVOID SystemSpecific2,
IN PVOID SystemSpecific3)
{
RTMP_ADAPTER *pAd = (RTMP_ADAPTER *)FunctionContext;
DBGPRINT(RT_DEBUG_TRACE, ("%s():AuthTimeout\n", __FUNCTION__));
MlmeEnqueue(pAd, APCLI_AUTH_STATE_MACHINE, APCLI_MT2_AUTH_TIMEOUT, 0, NULL, 0);
RTMP_MLME_HANDLER(pAd);
return;
}
示例15: ApCliProbeTimeout
/*
==========================================================================
Description:
Becaon timeout handler, executed in timer thread
==========================================================================
*/
static VOID ApCliProbeTimeout(
IN PVOID SystemSpecific1,
IN PVOID FunctionContext,
IN PVOID SystemSpecific2,
IN PVOID SystemSpecific3)
{
#if defined(APCLI_CONNECTION_TRIAL) || defined(MULTI_APCLI_SUPPORT)
PAPCLI_STRUCT pApCliEntry = (APCLI_STRUCT *)FunctionContext;
RTMP_ADAPTER *pAd = (RTMP_ADAPTER *)pApCliEntry->pAd;
#else
RTMP_ADAPTER *pAd = (RTMP_ADAPTER *)FunctionContext;
#endif /*APCLI_CONNECTION_TRIAL*/
MTWF_LOG(DBG_CAT_ALL, DBG_SUBCAT_ALL, DBG_LVL_TRACE, ("ApCli_SYNC - ProbeReqTimeout\n"));
#if defined(APCLI_CONNECTION_TRIAL)|| defined(MULTI_APCLI_SUPPORT)
MlmeEnqueue(pAd, APCLI_SYNC_STATE_MACHINE, APCLI_MT2_PROBE_TIMEOUT, 0, NULL, pApCliEntry->ifIndex);
#else
MlmeEnqueue(pAd,APCLI_SYNC_STATE_MACHINE,APCLI_MT2_PROBE_TIMEOUT,0,NULL,0);
#endif /* APCLI_CONNECTION_TRIAL */
RTMP_MLME_HANDLER(pAd);
return;
}