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

📄 wt_mac.c

📁 linux2.6.11内核无线网卡驱动程序。支持802.11 abg
💻 C
📖 第 1 页 / 共 5 页
字号:
					{						//NdisMoveMemory(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_fixed.BeaconInterval, frmbeacon->bcn_int, 2);						memmove(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_fixed.BeaconInterval, frmbeacon->bcn_int, 2);												Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Configuration.BeaconPeriod =*( frmbeacon->bcn_int );					}				if( frmbeacon->cap_info )					{						//NdisMoveMemory(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_fixed.Capabilities, frmbeacon->cap_info, 2);						memmove(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_fixed.Capabilities, frmbeacon->cap_info, 2);													Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Privacy = WLAN_GET_MGMT_CAP_INFO_PRIVACY( *(frmbeacon->cap_info) );							if(  ( WLAN_GET_MGMT_CAP_INFO_ESS( *(frmbeacon->cap_info) ) == TRUE ) &&							( WLAN_GET_MGMT_CAP_INFO_IBSS( *(frmbeacon->cap_info) ) == FALSE ) )						{							Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.InfrastructureMode = Ndis802_11Infrastructure;						}						else if(  ( WLAN_GET_MGMT_CAP_INFO_ESS( *(frmbeacon->cap_info) ) == FALSE ) &&							( WLAN_GET_MGMT_CAP_INFO_IBSS( *(frmbeacon->cap_info) ) == TRUE ) )						{							Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.InfrastructureMode = Ndis802_11IBSS;						}						else						{							Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.InfrastructureMode = Ndis802_11AutoUnknown;						}																	}//info ele var				if( frmbeacon->ssid )					{						if(frmbeacon->ssid->len !=0)						{							Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Ssid.SsidLength = frmbeacon->ssid->len;													//NdisMoveMemory(Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Ssid.Ssid, frmbeacon->ssid->ssid, NDIS_802_11_LENGTH_SSID);							memmove(Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Ssid.Ssid, frmbeacon->ssid->ssid, NDIS_802_11_LENGTH_SSID);							//NdisMoveMemory(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_ssid, frmbeacon->ssid, sizeof(ssid_t) );							memmove(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_ssid, frmbeacon->ssid, sizeof(ssid_t) );						}					}				if( frmbeacon->ibss_parms )					{						Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Configuration.ATIMWindow = frmbeacon->ibss_parms->atim_win;						//NdisMoveMemory(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_ibss_parms, frmbeacon->ibss_parms, sizeof( wlan_ie_ibss_parms_t ) );						memmove(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_ibss_parms, frmbeacon->ibss_parms, sizeof( wlan_ie_ibss_parms_t ) );											}				if( frmbeacon->ds_parms )					{						Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Configuration.DSConfig = frmbeacon->ds_parms->curr_ch;						//NdisMoveMemory(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_ds, frmbeacon->ds_parms, sizeof( wlan_ie_ds_parms_t ) );						memmove(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_ds, frmbeacon->ds_parms, sizeof( wlan_ie_ds_parms_t ) );											}				if( frmbeacon->fh_parms )					{						Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Configuration.FHConfig.HopPattern= frmbeacon->fh_parms->hoppattern;						Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Configuration.FHConfig.HopSet= frmbeacon->fh_parms->hopset;						Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Configuration.FHConfig.DwellTime= frmbeacon->fh_parms->dwell;						//NdisMoveMemory(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_fhps, frmbeacon->fh_parms, sizeof( wlan_ie_fh_parms_t ) );						memmove(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_fhps, frmbeacon->fh_parms, sizeof( wlan_ie_fh_parms_t ) );											}				if( frmbeacon->supp_rates )				{										if( ( frmbeacon->supp_rates->len > 0) &&( frmbeacon->supp_rates->len <= 8 ) )					{						for( j = 0; j <  frmbeacon->supp_rates->len; j++ )							{								Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.SupportedRates[j] = frmbeacon->supp_rates->rates[j];							}										}					//NdisMoveMemory(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_rates, 					//frmbeacon->supp_rates, sizeof( rates_t ) );					memmove(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_rates, 					               frmbeacon->supp_rates, sizeof( rates_t ) );											if( frmbeacon->ext_rates )						{						int k = 0;												while( ( j < NDIS_802_11_LENGTH_RATES_EX ) && ( k < frmbeacon->ext_rates->len))								{									Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.SupportedRates[j] = frmbeacon->ext_rates->extrates[k];										j++;									k++;								}						//NdisMoveMemory(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_extendrates, frmbeacon->ext_rates, sizeof( wlan_extend_rates_t ) );						memmove(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_extendrates, frmbeacon->ext_rates, sizeof( wlan_extend_rates_t ) );													}				}				if( frmbeacon->tim )					{						//NdisMoveMemory(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_tim, frmbeacon->tim, sizeof( tim_t ) );						memmove(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_tim, frmbeacon->tim, sizeof( tim_t ) );											}				if( frmbeacon->contry_parms )					{						//NdisMoveMemory(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_country, frmbeacon->contry_parms, sizeof( tim_t ) );						memmove(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_country, frmbeacon->contry_parms, sizeof( tim_t ) );					}												if( frmbeacon->fh_pattern )					{						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_fhparms, 										frmbeacon->fh_pattern, sizeof( wlan_fhparms_t ) );					}				if( frmbeacon->fh_patterntable )					{						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_fhpatterntable, 										frmbeacon->fh_patterntable, sizeof( wlan_fhpatterntable_t ) );					}				if( frmbeacon->powerconstraint )					{						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_powerconstraint, 										frmbeacon->powerconstraint, sizeof( wlan_powerconstraint_t ) );											}				if( frmbeacon->channelswa )					{						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_channelswa, 										frmbeacon->channelswa, sizeof( wlan_channelswa_t ) );											}				if( frmbeacon->quiet_parms )					{						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_quiet, 										frmbeacon->quiet_parms, sizeof( wlan_quiet_t ) );											}				if( frmbeacon->ibbss_dfs )					{						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_ibssdfs, 										frmbeacon->ibbss_dfs, sizeof( wlan_ibssdfs_t ) );											}				if( frmbeacon->tpc_report )					{						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_tpcreport, 										frmbeacon->tpc_report, sizeof( wlan_tpcreport_t ) );											}				if( frmbeacon->erp_parms )					{						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_erp, 										frmbeacon->erp_parms, sizeof( wlan_erp_t ) );											}					//added by hk 2005.4.21				#if 0					if( frmbeacon->rsn )					{						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_rsn, 										frmbeacon->rsn, sizeof( wlan_rsn_t ) );											}				#endif 				}		else			{				frmprobresp = &pWlanRxBuf->ParseData.a.proberesp;				//fixed								if( frmprobresp->ts )					{						memmove(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_fixed.Timestamp,										frmprobresp->ts, 8);					}				if( frmprobresp->bcn_int )					{						memmove(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_fixed.BeaconInterval,										frmprobresp->bcn_int, 2);												Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Configuration.BeaconPeriod =*( frmprobresp->bcn_int );					}				if( frmprobresp->cap_info )					{						memmove(&Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_fixed.Capabilities,									frmprobresp->cap_info, 2);													Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Privacy = WLAN_GET_MGMT_CAP_INFO_PRIVACY( *(frmprobresp->cap_info) );							if(  ( WLAN_GET_MGMT_CAP_INFO_ESS( *(frmprobresp->cap_info) ) == TRUE ) &&							( WLAN_GET_MGMT_CAP_INFO_IBSS( *(frmprobresp->cap_info) ) == FALSE ) )						{							Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.InfrastructureMode = Ndis802_11Infrastructure;						}						else if(  ( WLAN_GET_MGMT_CAP_INFO_ESS( *(frmprobresp->cap_info) ) == FALSE ) &&							( WLAN_GET_MGMT_CAP_INFO_IBSS( *(frmprobresp->cap_info) ) == TRUE ) )						{							Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.InfrastructureMode = Ndis802_11IBSS;						}						else						{							Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.InfrastructureMode = Ndis802_11AutoUnknown;						}											}				if( frmprobresp->ssid )					{						Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Ssid.SsidLength = frmprobresp->ssid->len;						memmove( Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Ssid.Ssid, 										frmprobresp->ssid->ssid, NDIS_802_11_LENGTH_SSID);						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_ssid, 										frmprobresp->ssid, sizeof(ssid_t) );											}				if( frmprobresp->ibss_parms )					{						Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Configuration.ATIMWindow = frmprobresp->ibss_parms->atim_win;						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_ibss_parms, 										frmprobresp->ibss_parms, sizeof( wlan_ie_ibss_parms_t ) );											}				if( frmprobresp->ds_parms )					{						Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Configuration.DSConfig = frmprobresp->ds_parms->curr_ch;						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_ds, 										frmprobresp->ds_parms, sizeof( wlan_ie_ds_parms_t ) );											}				if( frmprobresp->fh_parms )					{						Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Configuration.FHConfig.HopPattern= frmprobresp->fh_parms->hoppattern;						Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Configuration.FHConfig.HopSet= frmprobresp->fh_parms->hopset;						Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.Configuration.FHConfig.DwellTime= frmprobresp->fh_parms->dwell;						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_fhps, 										frmprobresp->fh_parms, sizeof( wlan_ie_fh_parms_t ) );											}				if( frmprobresp->supp_rates )					{										if( ( frmprobresp->supp_rates->len > 0) &&( frmprobresp->supp_rates->len <= 8 ) )						{						for( j = 0; j <  frmprobresp->supp_rates->len; j++ )							{								Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.SupportedRates[j] = frmprobresp->supp_rates->rates[j];							}											}					memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_rates, 										frmprobresp->supp_rates, sizeof( rates_t ) );											if( frmprobresp->ext_rates )						{						int k = 0;												while( ( j < NDIS_802_11_LENGTH_RATES_EX ) && ( k < frmprobresp->ext_rates->len))								{									Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ndisbssidex.SupportedRates[j] = frmprobresp->ext_rates->extrates[k];										j++;									k++;								}						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_extendrates, 											frmprobresp->ext_rates, sizeof( wlan_extend_rates_t ) );													}					}				if( frmprobresp->contry_parms )					{						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_country, 										frmprobresp->contry_parms, sizeof( tim_t ) );					}												if( frmprobresp->fh_pattern )					{						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_fhparms, 										frmprobresp->fh_pattern, sizeof( wlan_fhparms_t ) );					}				if( frmprobresp->fh_patterntable )					{						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_fhpatterntable, 										frmprobresp->fh_patterntable, sizeof( wlan_fhpatterntable_t ) );					}				if( frmprobresp->powerconstraint )					{						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_powerconstraint, 										frmprobresp->powerconstraint, sizeof( wlan_powerconstraint_t ) );											}				if( frmprobresp->channelswa )					{						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_channelswa, 										frmprobresp->channelswa, sizeof( wlan_channelswa_t ) );											}				if( frmprobresp->quiet_parms )					{						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_quiet, 										frmprobresp->quiet_parms, sizeof( wlan_quiet_t ) );											}				if( frmprobresp->ibbss_dfs )					{						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_ibssdfs, 										frmprobresp->ibbss_dfs, sizeof( wlan_ibssdfs_t ) );											}				if( frmprobresp->tpc_report )					{						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_tpcreport, 										frmprobresp->tpc_report, sizeof( wlan_tpcreport_t ) );											}				if( frmprobresp->erp_parms )					{						memmove( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_erp, 										frmprobresp->erp_parms, sizeof( wlan_erp_t ) );											}#if 0				if( frmprobresp->rsn )					{						NdisMoveMemory( &Adapter->Ndis80211Parameter.pWlanScanDb->wlandesc[i].ie_rsn, 										frmprobresp->rsn, sizeof( wlan_rsn_t ) );											}

⌨️ 快捷键说明

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