/*--------------------------------------------------------------------------
  Initialize the FT context. 
  ------------------------------------------------------------------------*/
void sme_FTOpen(tHalHandle hHal)
{
    tpAniSirGlobal pMac = PMAC_STRUCT( hHal );
    eHalStatus     status = eHAL_STATUS_SUCCESS;

    pMac->ft.ftSmeContext.auth_ft_ies = NULL;                        
    pMac->ft.ftSmeContext.auth_ft_ies_length = 0;                        

    pMac->ft.ftSmeContext.reassoc_ft_ies = NULL;                        
    pMac->ft.ftSmeContext.reassoc_ft_ies_length = 0;       
    pMac->ft.ftSmeContext.setFTPreAuthState = FALSE;
    pMac->ft.ftSmeContext.setFTPTKState = FALSE;
    status = palTimerAlloc(pMac->hHdd, &pMac->ft.ftSmeContext.preAuthReassocIntvlTimer, 
                            sme_PreauthReassocIntvlTimerCallback, (void *)pMac);

    if (eHAL_STATUS_SUCCESS != status)
    {
        smsLog(pMac, LOGE, FL("Preauth Reassoc interval Timer allocation failed"));
        return;
    }                 

    pMac->ft.ftSmeContext.psavedFTPreAuthRsp = NULL;                        
    pMac->ft.ftSmeContext.pCsrFTKeyInfo = NULL;

    pMac->ft.ftSmeContext.FTState = eFT_START_READY;

#ifdef DEBUG_ROAM_DELAY
    vos_reset_roam_timer_log();
#endif

}
示例#2
0
/*--------------------------------------------------------------------------
  Initialize the FT context. 
  ------------------------------------------------------------------------*/
void sme_FTOpen(tHalHandle hHal)
{
    tpAniSirGlobal pMac = PMAC_STRUCT( hHal );
    eHalStatus     status = eHAL_STATUS_SUCCESS;

    //Clear the FT Context.
    sme_FTReset(hHal);
    status = vos_timer_init(&pMac->ft.ftSmeContext.preAuthReassocIntvlTimer,VOS_TIMER_TYPE_SW,
                            sme_PreauthReassocIntvlTimerCallback, (void *)pMac);

    if (eHAL_STATUS_SUCCESS != status)
    {
        smsLog(pMac, LOGE, FL("Preauth Reassoc interval Timer allocation failed"));
        return;
    }                 
    vos_reset_roam_timer_log();
}