//_init_timer(&(pmlmepriv->sitesurveyctrl.sitesurvey_ctrl_timer), padapter->pnetdev, sitesurvey_ctrl_handler, padapter);
_init_timer(&(pmlmepriv->scan_to_timer), padapter->pnetdev, _rtw_scan_timeout_handler, padapter);
+ #ifdef CONFIG_DFS_MASTER
+ _init_timer(&(pmlmepriv->dfs_master_timer), padapter->pnetdev, rtw_dfs_master_timer_hdl, padapter);
+ #endif
+
_init_timer(&(pmlmepriv->dynamic_chk_timer), padapter->pnetdev, _dynamic_check_timer_handlder, padapter);
#ifdef CONFIG_SET_SCAN_DENY_TIMER
}
// add for CONFIG_IEEE80211W, none 11w also can use
_exit_critical_bh(&adapter->security_key_mutex, &irqL);
+
+ DBG_871X(FUNC_ADPT_FMT" - End to Disconnect\n", FUNC_ADPT_ARG(adapter));
}
void rtw_os_indicate_disconnect( _adapter *adapter )
if(authmode==_WPA_IE_ID_)
{
RT_TRACE(_module_mlme_osdep_c_,_drv_info_,("rtw_report_sec_ie, authmode=%d\n", authmode));
-
- buff = rtw_malloc(IW_CUSTOM_MAX);
-
- _rtw_memset(buff,0,IW_CUSTOM_MAX);
-
- p=buff;
-
+
+ buff = rtw_zmalloc(IW_CUSTOM_MAX);
+ if (NULL == buff) {
+ DBG_871X(FUNC_ADPT_FMT ": alloc memory FAIL!!\n",
+ FUNC_ADPT_ARG(adapter));
+ return;
+ }
+ p = buff;
+
p+=sprintf(p,"ASSOCINFO(ReqIEs=");
len = sec_ie[1]+2;
- len = (len < IW_CUSTOM_MAX) ? len:IW_CUSTOM_MAX;
+ len = (len < IW_CUSTOM_MAX) ? len:IW_CUSTOM_MAX;
for(i=0;i<len;i++){
p+=sprintf(p,"%02x",sec_ie[i]);
}
p+=sprintf(p,")");
-
+
_rtw_memset(&wrqu,0,sizeof(wrqu));
-
+
wrqu.data.length=p-buff;
-
+
wrqu.data.length = (wrqu.data.length<IW_CUSTOM_MAX) ? wrqu.data.length:IW_CUSTOM_MAX;
-
+
#ifndef CONFIG_IOCTL_CFG80211
wireless_send_event(adapter->pnetdev,IWEVCUSTOM,&wrqu,buff);
#endif
- if(buff)
- rtw_mfree(buff, IW_CUSTOM_MAX);
-
+ rtw_mfree(buff, IW_CUSTOM_MAX);
}
+exit:
+
_func_exit_;
}
}
#ifdef CONFIG_IEEE80211W
+
void _sa_query_timer_hdl (void *FunctionContext)
{
- _adapter *padapter = (_adapter *)FunctionContext;
- sa_query_timer_hdl(padapter);
+ struct sta_info *psta = (struct sta_info *)FunctionContext;
+
+ sa_query_timer_hdl(psta);
}
+
+void init_dot11w_expire_timer(_adapter *padapter, struct sta_info *psta)
+{
+ _init_timer(&psta->dot11w_expire_timer, padapter->pnetdev, _sa_query_timer_hdl, psta);
+}
+
#endif //CONFIG_IEEE80211W
void init_addba_retry_timer(_adapter *padapter, struct sta_info *psta)
_init_timer(&pmlmeext->survey_timer, padapter->pnetdev, _survey_timer_hdl, padapter);
_init_timer(&pmlmeext->link_timer, padapter->pnetdev, _link_timer_hdl, padapter);
-#ifdef CONFIG_IEEE80211W
- _init_timer(&pmlmeext->sa_query_timer, padapter->pnetdev, _sa_query_timer_hdl, padapter);
-#endif //CONFIG_IEEE80211W
+
//_init_timer(&pmlmeext->ADDBA_timer, padapter->pnetdev, _addba_timer_hdl, padapter);
//_init_timer(&pmlmeext->reauth_timer, padapter->pnetdev, _reauth_timer_hdl, padapter);