• 大小: 10.49MB
    文件类型: .gz
    金币: 1
    下载: 0 次
    发布日期: 2023-10-13
  • 语言: 其他
  • 标签: RTL8188  driver  for  linux  

资源简介

RTL8188 driver for linux

资源截图

代码片段和文件信息

/******************************************************************************
 *
 * Copyright(c) 2007 - 2012 Realtek Corporation. All rights reserved.
 *                                        
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of version 2 of the GNU General Public License as
 * published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
 * more details.
 *
 * You should have received a copy of the GNU General Public License along with
 * this program; if not write to the Free Software Foundation Inc.
 * 51 Franklin Street Fifth Floor Boston MA 02110 USA
 *
 *
 ******************************************************************************/
#define _RTW_AP_C_

#include 
#include 
#include 
#include 


#ifdef CONFIG_AP_MODE

extern unsigned char RTW_WPA_OUI[];
extern unsigned char  WMM_OUI[];
extern unsigned char WPS_OUI[];
extern unsigned char P2P_OUI[];
extern unsigned char WFD_OUI[];

void init_mlme_ap_info(_adapter *padapter)
{
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
struct mlme_priv *pmlmepriv = &(padapter->mlmepriv);
struct sta_priv *pstapriv = &padapter->stapriv;
struct wlan_acl_pool *pacl_list = &pstapriv->acl_list;


_rtw_spinlock_init(&pmlmepriv->bcn_update_lock);

//for ACL 
_rtw_init_queue(&pacl_list->acl_node_q);

//pmlmeext->bstart_bss = _FALSE;

start_ap_mode(padapter);
}

void free_mlme_ap_info(_adapter *padapter)
{
_irqL irqL;
struct sta_info *psta=NULL;
struct sta_priv *pstapriv = &padapter->stapriv;
struct mlme_priv *pmlmepriv = &(padapter->mlmepriv);
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
struct mlme_ext_info *pmlmeinfo = &(pmlmeext->mlmext_info);

//stop_ap_mode(padapter);

pmlmepriv->update_bcn = _FALSE;
pmlmeext->bstart_bss = _FALSE;

rtw_sta_flush(padapter);

pmlmeinfo->state = _HW_STATE_NOlink_;

//free_assoc_sta_resources
rtw_free_all_stainfo(padapter);

//free bc/mc sta_info
psta = rtw_get_bcmc_stainfo(padapter);
_enter_critical_bh(&(pstapriv->sta_hash_lock) &irqL);
rtw_free_stainfo(padapter psta);
_exit_critical_bh(&(pstapriv->sta_hash_lock) &irqL);


_rtw_spinlock_free(&pmlmepriv->bcn_update_lock);

}

static void update_BCNTIM(_adapter *padapter)
{
struct sta_priv *pstapriv = &padapter->stapriv;
struct mlme_ext_priv *pmlmeext = &(padapter->mlmeextpriv);
struct mlme_ext_info *pmlmeinfo = &(pmlmeext->mlmext_info);
WLAN_BSSID_EX *pnetwork_mlmeext = &(pmlmeinfo->network);
unsigned char *pie = pnetwork_mlmeext->IEs;

//DBG_871X(“%s\n“ __FUNCTION__);

//update TIM IE
//if(pstapriv->tim_bitmap)
if(_TRUE)
{
u8 *p

评论

共有 条评论