diff options
| author | Luke <[email protected]> | 2017-11-28 00:22:11 -0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2017-11-28 00:22:11 -0800 |
| commit | 79bbbca2f6e37d94fbbbd60d12c5c1e7dde650da (patch) | |
| tree | 793ff943b8b641f95d05401156badd42da4a0f12 /network | |
| parent | ed1df9a8b80b154b71b79635e40af75f4f19001c (diff) | |
| parent | 2817004092cee784d4aaf36c045fdb5b0bc09f7e (diff) | |
Merge pull request #1 from Microsoft/master
Updating Local
Diffstat (limited to 'network')
25 files changed, 1016 insertions, 850 deletions
diff --git a/network/config/bindview/README.md b/network/config/bindview/README.md index 01e1cd8d..b239b700 100644 --- a/network/config/bindview/README.md +++ b/network/config/bindview/README.md @@ -1,3 +1,13 @@ +<!--- + name: Bindview Network Configuration Utility + platform: Application + language: cpp + category: Network + description: An application that demonstrates how to use INetCfg APIs to enumerate, install, uninstall, bind and unbind network components. + samplefwlink: http://go.microsoft.com/fwlink/p/?LinkId=617732 +---> + + Bindview Network Configuration Utility ====================================== diff --git a/network/modem/fakemodem/README.md b/network/modem/fakemodem/README.md index b79071cb..3734a95a 100644 --- a/network/modem/fakemodem/README.md +++ b/network/modem/fakemodem/README.md @@ -1,3 +1,12 @@ +<!--- + name: Fakemodem Driver + platform: KMDF + language: cpp + category: Network + description: Demonstrates a simple controller-less modem driver. + samplefwlink: http://go.microsoft.com/fwlink/p/?LinkId=617733 +---> + Fakemodem Driver ================ diff --git a/network/modem/fakemodem/mdmfake.inx b/network/modem/fakemodem/mdmfake.inx Binary files differindex 7dbe55c0..6d94c1ec 100644 --- a/network/modem/fakemodem/mdmfake.inx +++ b/network/modem/fakemodem/mdmfake.inx diff --git a/network/ndis/extension/README.md b/network/ndis/extension/README.md index dc3b6b92..df154559 100644 --- a/network/ndis/extension/README.md +++ b/network/ndis/extension/README.md @@ -1,3 +1,13 @@ +<!--- + name: Hyper-V Extensible Switch extension filter driver + platform: WDM + language: cpp + category: Network + description: A base library used to implement a Hyper-V Extensible Switch extension filter driver. + samplefwlink: http://go.microsoft.com/fwlink/p/?LinkId=617913 +---> + + Hyper-V Extensible Switch extension filter driver ================================================= diff --git a/network/ndis/filter/README.md b/network/ndis/filter/README.md index ac1bc67c..274287bc 100644 --- a/network/ndis/filter/README.md +++ b/network/ndis/filter/README.md @@ -1,3 +1,13 @@ +<!--- + name: NDIS 6.0 Filter Driver + platform: WDM + language: cpp + category: Network + description: A pass-through NDIS 6 filter driver demonstrating the basic principles of an NDIS 6.0 Filter driver. + samplefwlink: http://go.microsoft.com/fwlink/p/?LinkId=617915 +---> + + NDIS 6.0 Filter Driver ====================== diff --git a/network/ndis/mux/README.md b/network/ndis/mux/README.md index 0a545a3a..cf9a112c 100644 --- a/network/ndis/mux/README.md +++ b/network/ndis/mux/README.md @@ -1,3 +1,13 @@ +<!--- + name: NDIS MUX Intermediate Driver and Notify Object + platform: WDM + language: cpp + category: Network + description: An NDIS 6.0 driver that demonstrates the operation of an N:1 MUX driver. + samplefwlink: http://go.microsoft.com/fwlink/p/?LinkId=617916 +---> + + NDIS MUX Intermediate Driver and Notify Object ============================================== diff --git a/network/ndis/ndisprot/6x/README.md b/network/ndis/ndisprot/6x/README.md index 55843a0c..211a8721 100644 --- a/network/ndis/ndisprot/6x/README.md +++ b/network/ndis/ndisprot/6x/README.md @@ -1,7 +1,17 @@ -NDIS Connection-less Protocol Driver Sample -=========================================== +<!--- + name: NDIS Connection-less Protocol WDM Driver Sample + platform: WDM + language: cpp + category: Network + description: Demonstrates a connection-less NDIS 6.0 protocol WDM driver. + samplefwlink: http://go.microsoft.com/fwlink/p/?LinkId=617917 +---> -This sample demonstrates a connection-less NDIS 6.0 protocol.The driver supports sending and receiving raw Ethernet frames using `ReadFile`/`WriteFile` calls from user-mode. It only receives frames with a specific EtherType field. As an NDIS protocol, it illustrates how to establish and tear down bindings to Ethernet adapters, i.e. those that export medium type **NdisMedium802\_3**. It shows how to set a packet filter, send and receive data, and handle plug-and-play events. + +NDIS Connection-less Protocol WDM Driver Sample +=============================================== + +This sample demonstrates a connection-less NDIS 6.0 protocol WDM driver. The driver supports sending and receiving raw Ethernet frames using `ReadFile`/`WriteFile` calls from user-mode. It only receives frames with a specific EtherType field. As an NDIS protocol, it illustrates how to establish and tear down bindings to Ethernet adapters, i.e. those that export medium type **NdisMedium802\_3**. It shows how to set a packet filter, send and receive data, and handle plug-and-play events. ### INSTALLATION diff --git a/network/ndis/ndisprot_kmdf/README.md b/network/ndis/ndisprot_kmdf/README.md index 0da2ae31..0f2ceb23 100644 --- a/network/ndis/ndisprot_kmdf/README.md +++ b/network/ndis/ndisprot_kmdf/README.md @@ -1,6 +1,17 @@ -Connection-less NDIS 6.0 Sample Protocol Driver -=============================================== -This sample demonstrates a connection-less NDIS 6.0 protocol driver. +<!--- + name: Connection-less NDIS 6.0 Protocol KMDF Sample Driver + platform: KMDF + language: cpp + category: Network + description: Demonstrates a connection-less NDIS 6.0 protocol KMDF driver. + samplefwlink: http://go.microsoft.com/fwlink/p/?LinkId=620197 +---> + + +Connection-less NDIS 6.0 Protocol KMDF Sample Driver +==================================================== + +This sample demonstrates a connection-less NDIS 6.0 protocol KMDF driver. The driver supports sending and receiving raw Ethernet frames using ReadFile/WriteFile calls from user-mode. As an NDIS protocol, it illustrates how to establish and tear down bindings to Ethernet adapters, i.e. those that export medium type *NdisMedium802\_3*. It shows how to set a packet filter, send and receive data, and handle plug-and-play events. diff --git a/network/ndis/netvmini/6x/README.md b/network/ndis/netvmini/6x/README.md index 76020b5d..023e1674 100644 --- a/network/ndis/netvmini/6x/README.md +++ b/network/ndis/netvmini/6x/README.md @@ -1,3 +1,13 @@ +<!--- + name: NDIS Virtual Miniport Driver + platform: WDM + language: cpp + category: Network + description: Demonstrates the functionality of an NDIS miniport driver without requiring a physical network adapter. + samplefwlink: http://go.microsoft.com/fwlink/p/?LinkId=617918 +---> + + NDIS Virtual Miniport Driver ============================ diff --git a/network/radio/HidSwitchDriverSample/README.md b/network/radio/HidSwitchDriverSample/README.md index 5f4fdd81..9726babf 100644 --- a/network/radio/HidSwitchDriverSample/README.md +++ b/network/radio/HidSwitchDriverSample/README.md @@ -1,3 +1,13 @@ +<!--- + name: Radio Switch Test Driver for OSR USB-FX2 Development Board + platform: KMDF + language: cpp + category: Network Radio + description: Demonstrates how to structure a HID driver for radio switches for the OSR USB-FX2 Development Board. + samplefwlink: http://go.microsoft.com/fwlink/p/?LinkId=617919 +---> + + Radio Switch Test Driver for OSR USB-FX2 Development Board ========================================================== diff --git a/network/radio/HidSwitchDriverSample/RadioSwitchHidUsbFx2.inx b/network/radio/HidSwitchDriverSample/RadioSwitchHidUsbFx2.inx Binary files differindex a1f0bf1a..c7d1ba0f 100644 --- a/network/radio/HidSwitchDriverSample/RadioSwitchHidUsbFx2.inx +++ b/network/radio/HidSwitchDriverSample/RadioSwitchHidUsbFx2.inx diff --git a/network/radio/HidSwitchDriverSample/driver.c b/network/radio/HidSwitchDriverSample/driver.c index 54e80dae..61cc97fc 100644 --- a/network/radio/HidSwitchDriverSample/driver.c +++ b/network/radio/HidSwitchDriverSample/driver.c @@ -1,4 +1,4 @@ -#include <RadioSwitchHidUsbFx2.h> +#include "RadioSwitchHidUsbFx2.h" #pragma warning(disable:28252) #pragma warning(disable:28253) #include "driver.tmh" @@ -39,7 +39,7 @@ NTSTATUS DriverEntry (_In_ PDRIVER_OBJECT pDriverObject, _In_ PUNICODE_STRING ps &config, // Driver Config Info WDF_NO_HANDLE ); - if (!NT_SUCCESS(status)) + if (!NT_SUCCESS(status)) { TraceErr(DBG_INIT, "(%!FUNC!)WdfDriverCreate failed with status %!STATUS!\n", status); WPP_CLEANUP(pDriverObject); @@ -64,7 +64,7 @@ void HidFx2EvtDriverContextCleanup(_In_ WDFOBJECT hDriver) -//HidFx2EvtDeviceAdd is called by the framework in response to AddDevicecall from the PnP manager. +//HidFx2EvtDeviceAdd is called by the framework in response to AddDevicecall from the PnP manager. //We create and initialize a WDF device object to represent a new instance of device. // NTSTATUS HidFx2EvtDeviceAdd(_In_ WDFDRIVER hDriver, _Inout_ PWDFDEVICE_INIT pDeviceInit) @@ -111,7 +111,7 @@ NTSTATUS HidFx2EvtDeviceAdd(_In_ WDFDRIVER hDriver, _Inout_ PWDFDEVICE_INIT pDev } pDevContext = GetDeviceContext(hDevice); - + WDF_IO_QUEUE_CONFIG_INIT_DEFAULT_QUEUE(&queueConfig, WdfIoQueueDispatchParallel); queueConfig.EvtIoInternalDeviceControl = HidFx2EvtInternalDeviceControl; @@ -136,7 +136,7 @@ NTSTATUS HidFx2EvtDeviceAdd(_In_ WDFDRIVER hDriver, _Inout_ PWDFDEVICE_INIT pDev return status; } - // Create a timer to handle debouncing of switchpack + // Create a timer to handle debouncing of switchpack WDF_TIMER_CONFIG_INIT(&timerConfig, HidFx2EvtTimerFunction); timerConfig.AutomaticSerialization = FALSE; diff --git a/network/radio/HidSwitchDriverSample/hid.c b/network/radio/HidSwitchDriverSample/hid.c index 27fcefea..2421b88f 100644 --- a/network/radio/HidSwitchDriverSample/hid.c +++ b/network/radio/HidSwitchDriverSample/hid.c @@ -1,4 +1,4 @@ -#include <RadioSwitchHidUsbFx2.h> +#include "RadioSwitchHidUsbFx2.h" #include "hid.tmh" // Radio Management Collection - Scenario 1 control collection (Button only) @@ -223,7 +223,7 @@ NTSTATUS HidFx2GetInput(_In_ WDFREQUEST hRequest) TraceVerbose(DBG_IOCTL, "(%!FUNC!) Enter\n"); hDevice = WdfIoQueueGetDevice(WdfRequestGetIoQueue(hRequest)); - + WDF_REQUEST_PARAMETERS_INIT(¶ms); WdfRequestGetParameters(hRequest, ¶ms); @@ -296,7 +296,7 @@ NTSTATUS HidFx2SetOutput(_In_ WDFREQUEST hRequest) TraceVerbose(DBG_IOCTL, "(%!FUNC!) Enter\n"); hDevice = WdfIoQueueGetDevice(WdfRequestGetIoQueue(hRequest)); - + WDF_REQUEST_PARAMETERS_INIT(¶ms); WdfRequestGetParameters(hRequest, ¶ms); @@ -335,7 +335,7 @@ NTSTATUS HidFx2SetOutput(_In_ WDFREQUEST hRequest) TraceErr(DBG_IOCTL, "(%!FUNC!) Incorrect report ID, %!STATUS!\n", status); return status; } - + pOutputReport = (PHIDFX2_IO_REPORT)pTransferPacket->reportBuffer; if (pOutputReport->bData == 0) @@ -471,7 +471,7 @@ NTSTATUS HidFx2GetHidDescriptor(_In_ WDFDEVICE hDevice, _In_ WDFREQUEST hRequest TraceErr(DBG_IOCTL, "(%!FUNC!) c_DefaultHidDescriptor is zero, %!STATUS!\n", status); return status; } - + } else // WdfRequestRetrieveOutputMemory failed { diff --git a/network/radio/HidSwitchDriverSample/usb.c b/network/radio/HidSwitchDriverSample/usb.c index bacd1bce..84cf7faa 100644 --- a/network/radio/HidSwitchDriverSample/usb.c +++ b/network/radio/HidSwitchDriverSample/usb.c @@ -1,4 +1,4 @@ -#include <RadioSwitchHidUsbFx2.h> +#include "RadioSwitchHidUsbFx2.h" #include "usb.tmh" @@ -39,7 +39,7 @@ HidFx2EvtDevicePrepareHardware( // The parent of each USB device object is the driver's framework driver object. The driver cannot change this parent, and the ParentObject // member or the WDF_OBJECT_ATTRIBUTES structure must be NULL. // - // We only create device the first time PrepareHardware is called. If the device is restarted by pnp manager for resource rebalance, we + // We only create device the first time PrepareHardware is called. If the device is restarted by pnp manager for resource rebalance, we // will use the same device handle but then select the interfaces again because the USB stack could reconfigure the device on restart. if (pDevContext->hUsbDevice == NULL) { @@ -162,7 +162,7 @@ void HidFx2EvtUsbInterruptPipeReadComplete( } - // Make sure that there is data in the read packet. + // Make sure that there is data in the read packet. // Depending on the device specification, it is possible for it to return a 0 length read in certain conditions. if (cNumBytesTransferred == 0) { @@ -269,7 +269,7 @@ void HidFx2EvtTimerFunction(_In_ WDFTIMER hTimer) WdfRequestCompleteWithInformation(hRequest, status, cBytesReturned); - } + } else if (status != STATUS_NO_MORE_ENTRIES) { TraceErr(DBG_IOCTL, "(%!FUNC!) WdfIoQueueRetrieveNextRequest status %!STATUS!\n", status); @@ -340,7 +340,7 @@ NTSTATUS HidFx2GetSwitchState(_In_ WDFDEVICE hDevice, _Out_ unsigned char *pbSwi // EvtDeviceD0Entry event callback must perform any operations that are necessary before the specified device is used. // Called every time the hardware needs to be initialized/reinitialized. -// This function is not marked pageable because this function is in the device power up path. +// This function is not marked pageable because this function is in the device power up path. // This function runs at PASSIVE_LEVEL, even though it is not paged. // NTSTATUS HidFx2EvtDeviceD0Entry(_In_ WDFDEVICE hDevice, _In_ WDF_POWER_DEVICE_STATE previousState) @@ -412,7 +412,7 @@ stopped, when it is removed, and when it is powered off. The device is still in D0 when this callback is invoked, which means that the driver can still touch hardware in this routine. -EvtDeviceD0Exit event callback must perform any operations that are necessary before the specified device is moved out of the D0 state. +EvtDeviceD0Exit event callback must perform any operations that are necessary before the specified device is moved out of the D0 state. If the driver needs to save hardware state before the device is powered down, then that should be done here. This function runs at PASSIVE_LEVEL, though it is generally not paged. A driver can optionally make this function pageable if DO_POWER_PAGABLE is set. diff --git a/network/radio/RadioManagerSample/README.md b/network/radio/RadioManagerSample/README.md index e391e051..3cac53e9 100644 --- a/network/radio/RadioManagerSample/README.md +++ b/network/radio/RadioManagerSample/README.md @@ -1,3 +1,13 @@ +<!--- + name: Windows Radio Management Sample + platform: WDM + language: cpp + category: Network Radio + description: Demonstrates how to structure a Radio Manager for use with the Windows Radio Management APIs. + samplefwlink: http://go.microsoft.com/fwlink/p/?LinkId=617920 +---> + + Windows Radio Management Sample =============================== diff --git a/network/trans/WFPSampler/README.md b/network/trans/WFPSampler/README.md index d23c2554..84621bcd 100644 --- a/network/trans/WFPSampler/README.md +++ b/network/trans/WFPSampler/README.md @@ -1,3 +1,13 @@ +<!--- + name: Windows Filtering Platform Sample + platform: KMDF + language: cpp + category: Network + description: A sample firewall that has a command-line interface which allows adding filters at various WFP layers. + samplefwlink: http://go.microsoft.com/fwlink/p/?LinkId=620198 +---> + + Windows Filtering Platform Sample ================================= diff --git a/network/trans/WFPSampler/sys/WFPSamplerCalloutDriver.InX b/network/trans/WFPSampler/sys/WFPSamplerCalloutDriver.InX index 4c5777be..5fe96e36 100644 --- a/network/trans/WFPSampler/sys/WFPSamplerCalloutDriver.InX +++ b/network/trans/WFPSampler/sys/WFPSamplerCalloutDriver.InX @@ -24,7 +24,7 @@ ClassGuid = {57465043-616C-6C6F-7574-5F636C617373} Provider = %ProviderString% CatalogFile = WFPSamplerCalloutDriver.Cat - DriverVer = + DriverVer = [SourceDisksNames.$ARCH$] 1 = %WFPSamplerCalloutDriverDiskId%,,,"" @@ -33,7 +33,7 @@ WFPSamplerCalloutDriver.sys = 1,, [ClassInstall32.nt$ARCH$] - AddReg = WFPCalloutsClassReg + AddReg = WFPCalloutClassReg [DestinationDirs] DefaultDestDir = 12 ;/// %WinDir%\System32\Drivers @@ -48,7 +48,7 @@ [DefaultUninstall.nt$ARCH$] DelFiles = WFPSamplerCalloutDriver.DriverFiles - DelReg = WFPCalloutsClassReg + DelReg = WFPCalloutClassReg [DefaultUninstall.nt$ARCH$.Services] DelService = %WFPSamplerCalloutDriverServiceName%,0x200 ;/// SPSVCINST_STOPSERVICE diff --git a/network/trans/ddproxy/README.md b/network/trans/ddproxy/README.md index a9e1d427..45a122d9 100644 --- a/network/trans/ddproxy/README.md +++ b/network/trans/ddproxy/README.md @@ -1,3 +1,13 @@ +<!--- + name: Windows Filtering Platform Packet Modification Sample + platform: KMDF + language: cpp + category: Network + description: Demonstrates the packet modification capabilities of the Windows Filtering Platform (WFP). + samplefwlink: http://go.microsoft.com/fwlink/p/?LinkId=617930 +---> + + Windows Filtering Platform Packet Modification Sample ===================================================== diff --git a/network/trans/inspect/README.md b/network/trans/inspect/README.md index 4f28598c..2c197c4f 100644 --- a/network/trans/inspect/README.md +++ b/network/trans/inspect/README.md @@ -1,3 +1,13 @@ +<!--- + name: Windows Filtering Platform Traffic Inspection Sample + platform: KMDF + language: cpp + category: Network + description: Demonstrates the traffic inspection capabilities of the Windows Filtering Platform (WFP). + samplefwlink: http://go.microsoft.com/fwlink/p/?LinkId=617931 +---> + + Windows Filtering Platform Traffic Inspection Sample ==================================================== diff --git a/network/trans/msnmntr/README.md b/network/trans/msnmntr/README.md index fcc9c420..14127cbc 100644 --- a/network/trans/msnmntr/README.md +++ b/network/trans/msnmntr/README.md @@ -1,3 +1,13 @@ +<!--- + name: Windows Filtering Platform MSN Messenger Monitor Sample + platform: KMDF + language: cpp + category: Network + description: Demonstrates the stream inspection capabilities of the Windows Filtering Platform (WFP). + samplefwlink: http://go.microsoft.com/fwlink/p/?LinkId=617932 +---> + + Windows Filtering Platform MSN Messenger Monitor Sample ======================================================= diff --git a/network/trans/stmedit/README.md b/network/trans/stmedit/README.md index 0c434b07..67905639 100644 --- a/network/trans/stmedit/README.md +++ b/network/trans/stmedit/README.md @@ -1,3 +1,13 @@ +<!--- + name: Windows Filtering Platform Stream Edit Sample + platform: KMDF + language: cpp + category: Network + description: Demonstrates replacing a string pattern for a Transmission Control Protocol (TCP) connection using the Windows Filtering Platform (WFP). + samplefwlink: http://go.microsoft.com/fwlink/p/?LinkId=617933 +---> + + Windows Filtering Platform Stream Edit Sample ============================================= diff --git a/network/wlan/WDI/PLATFORM/NDIS6/SDIO/sdio.vcxproj b/network/wlan/WDI/PLATFORM/NDIS6/SDIO/sdio.vcxproj index c6089236..af48c0a4 100644 --- a/network/wlan/WDI/PLATFORM/NDIS6/SDIO/sdio.vcxproj +++ b/network/wlan/WDI/PLATFORM/NDIS6/SDIO/sdio.vcxproj @@ -577,6 +577,8 @@ <Link> <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile> <AdditionalDependencies>$(SolutionDir)COMMON\$(Configuration)\$(Platform)\common.lib;$(SolutionDir)PLATFORM\NdisComm\$(Configuration)\$(Platform)\NdisComm.lib;$(SolutionDir)\LIB\x64\hal.lib;$(SolutionDir)\LIB\x64\rtklibcom.lib;$(WindowsSDK_LibraryPath_x64)km\x64\ndis.lib;$(WindowsSDK_LibraryPath_x64)km\x64\ntoskrnl.lib;$(WindowsSDK_LibraryPath_x64)km\x64\sdbus.lib;$(WindowsSDK_LibraryPath_x64)km\x64\wlan\1.0\TlvGeneratorParser.lib;</AdditionalDependencies> + <!-- warning LNK4099: PDB 'rtklibcom.pdb' was not found with 'rtklibcom.lib(multichannels.obj)' --> + <AdditionalOptions>$(AdditionalOptions) /IGNORE:4099</AdditionalOptions> </Link> <ProjectReference> <LinkLibraryDependencies>true</LinkLibraryDependencies> @@ -636,7 +638,7 @@ <!-- Needed by any VcxProj --> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> <PropertyGroup Label="UserMacros" /> - <!-- The WrappedTaskItems label is used by the conversion tool to identify the location where items + <!-- The WrappedTaskItems label is used by the conversion tool to identify the location where items associated with wrapped tasks will reside.--> <ItemGroup Label="WrappedTaskItems"> <FilesToPackage Include="$(SolutionDir)\PLATFORM\WinInf\SDIO\x64\netrtwlans.inf" Condition="'$(Configuration)|$(Platform)'=='Win10 Release|x64'"> @@ -748,4 +750,4 @@ </ItemGroup> <!-- /Necessary to pick up propper files from local directory when in the IDE--> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> -</Project>
\ No newline at end of file +</Project> diff --git a/network/wlan/WDI/PLATFORM/NDIS6/WDI_Cmds.c b/network/wlan/WDI/PLATFORM/NDIS6/WDI_Cmds.c index d1005a4b..ec5cddd6 100644 --- a/network/wlan/WDI/PLATFORM/NDIS6/WDI_Cmds.c +++ b/network/wlan/WDI/PLATFORM/NDIS6/WDI_Cmds.c @@ -28,7 +28,7 @@ wdi_task_WriteResult( { NdisMoveMemory((u1Byte *)hdr + sizeof(*hdr), tlv, tlvlen); } - + hTask->OutputBufferLength = tlvlen; } @@ -40,7 +40,7 @@ wdi_ScanCb( ) { ADAPTER *pAdapter = (ADAPTER *)pCtx; - + RT_TRACE_F(COMP_MLME, DBG_LOUD, ("%s\n", CustomScan_ScanStateTxt(state))); if(CUSTOM_SCAN_STATE_PRE_DESTROY == state) @@ -59,13 +59,13 @@ wdi_P2PDiscoveryCb( ADAPTER *pAdapter = (ADAPTER *)pCtx; RT_OID_HANDLER *hTask = &pAdapter->pPortCommonInfo->WdiData.TaskHandle; P2P_INFO *info = GET_P2P_INFO(pAdapter); - + RT_TRACE_F(COMP_P2P, DBG_LOUD, ("%s\n", CustomScan_ScanStateTxt(state))); if(CUSTOM_SCAN_STATE_COMPLETED == state) { WDI_TASK_P2P_DISCOVER_PARAMETERS *param = hTask->tlvParser.parsedTlv.paramP2pDiscover; - + MGNT_INFO *mgnt = &pAdapter->MgntInfo; u4Byte it = 0; @@ -118,18 +118,18 @@ wdi_ConstructScanReq( u2Byte duration = (u2Byte)(SCAN_ACTIVE == scanType ? param->DwellTime.ActiveChannelDwellTime : param->DwellTime.PassiveChannelDwellTime); FunctionIn(COMP_SCAN); - + if(param->Optional.BandChannelList_IsPresent) { u4Byte itBand = 0; u4Byte itChnl = 0; - + for(itBand = 0; itBand < param->BandChannelList.ElementCount; itBand++) { for(itChnl = 0; itChnl < param->BandChannelList.pElements[itBand].ChannelList.ElementCount; itChnl++) { u1Byte chnl = (u1Byte)param->BandChannelList.pElements[itBand].ChannelList.pElements[itChnl]; - + CustomScan_AddScanChnl(req, chnl, 1, scanType, duration, 0, NULL); } } @@ -138,7 +138,7 @@ wdi_ConstructScanReq( { RT_CHANNEL_DOMAIN domain = GetDefaultAdapter(pAdapter)->MgntInfo.ChannelPlan; RT_CHANNEL_PLAN *plan = NULL; - + RtActChannelList(pAdapter, RT_CHNL_LIST_ACTION_GET_CHANNEL_PLAN, &domain, &plan); CustomScan_AddChnlPlanChnls(req, plan, scanType, duration, 0, NULL); @@ -163,7 +163,7 @@ wdi_ConstructP2PSpecificChnlReq( { RT_SCAN_TYPE scanType = WDI_P2P_SCAN_TYPE_PASSIVE == param->DiscoverMode.ScanType ? SCAN_PASSIVE : SCAN_ACTIVE; u2Byte duration = (u2Byte)(SCAN_ACTIVE == scanType ? param->DwellTime.ActiveChannelDwellTime : param->DwellTime.PassiveChannelDwellTime); - + if(param->Optional.DiscoveryChannelSettings_IsPresent) { u4Byte itSettings = 0; @@ -171,15 +171,15 @@ wdi_ConstructP2PSpecificChnlReq( u4Byte itChnl = 0; RT_TRACE_F(COMP_OID_SET, DBG_LOUD, ("channel setting present\n")); - + for(itSettings = 0; itSettings < param->DiscoveryChannelSettings.ElementCount; itSettings++) { WDI_P2P_DISCOVERY_CHANNEL_SETTINGS_CONTAINER *setting = param->DiscoveryChannelSettings.pElements + itSettings; - + for(itBand = 0; itBand < setting->BandChannelList.ElementCount; itBand++) { WDI_BAND_CHANNEL_LIST_CONTAINER *band = setting->BandChannelList.pElements + itBand; - + for(itChnl = 0; itChnl < band->ChannelList.ElementCount; itChnl++) { WDI_CHANNEL_NUMBER *chnl = band->ChannelList.pElements + itChnl; @@ -206,7 +206,7 @@ wdi_ConstructP2PScanPhaseReq( u2Byte duration = (u2Byte)(SCAN_ACTIVE == scanType ? param->DwellTime.ActiveChannelDwellTime : param->DwellTime.PassiveChannelDwellTime); RT_CHANNEL_DOMAIN domain = GetDefaultAdapter(pAdapter)->MgntInfo.ChannelPlan; RT_CHANNEL_PLAN *plan = NULL; - + RtActChannelList(pAdapter, RT_CHNL_LIST_ACTION_GET_CHANNEL_PLAN, &domain, &plan); CustomScan_AddChnlPlanChnls(req, plan, scanType, duration, MGN_6M, NULL); @@ -254,7 +254,7 @@ wdi_Construct_FakeInvitationRsp( OCTET_STRING osWFDIE, osProbeRspPkt; FunctionIn(COMP_OID_SET); - + // MAC Header p2p_add_ActionFrameMacHdr(fbuf, info->DeviceAddress, dev->mac, info->DeviceAddress); @@ -267,11 +267,11 @@ wdi_Construct_FakeInvitationRsp( // WFD IE, from probe rsp if(dev->rxFrames[P2P_FID_PROBE_RSP] && dev->rxFrames[P2P_FID_PROBE_RSP]->frameLen) { - FillOctetString(osProbeRspPkt, - dev->rxFrames[P2P_FID_PROBE_RSP]->frame, + FillOctetString(osProbeRspPkt, + dev->rxFrames[P2P_FID_PROBE_RSP]->frame, dev->rxFrames[P2P_FID_PROBE_RSP]->frameLen ); - + osWFDIE = PacketGetElement(osProbeRspPkt, EID_Vendor, OUI_SUB_WIFI_DISPLAY, OUI_SUB_DONT_CARE); if(osWFDIE.Length > 0) @@ -284,7 +284,7 @@ wdi_Construct_FakeInvitationRsp( FrameBuf_Dump(fbuf, 0, DBG_LOUD, __FUNCTION__); FunctionOut(COMP_OID_SET); - + return TRUE; } @@ -299,13 +299,13 @@ wdi_Construct_FakePdRsp( { P2P_INFO *info = GET_P2P_INFO(pAdapter); OCTET_STRING osPdReq, osTmpIe; - + FunctionIn(COMP_OID_SET); if(dev->txFrames[P2P_FID_PD_REQ] && dev->txFrames[P2P_FID_PD_REQ]->frameLen) { - FillOctetString(osPdReq, - dev->txFrames[P2P_FID_PD_REQ]->frame, + FillOctetString(osPdReq, + dev->txFrames[P2P_FID_PD_REQ]->frame, dev->txFrames[P2P_FID_PD_REQ]->frameLen ); } @@ -314,7 +314,7 @@ wdi_Construct_FakePdRsp( RT_TRACE_F(COMP_OID_SET, DBG_WARNING, ("no corresp. pd req\n")); FillOctetString(osPdReq, NULL, 0); } - + // MAC Header p2p_add_ActionFrameMacHdr(fbuf, info->DeviceAddress, dev->mac, dev->mac); @@ -323,14 +323,14 @@ wdi_Construct_FakePdRsp( // WPS IE, getting from the original PD request if(osPdReq.Length) - { + { osTmpIe = PacketGetElement(osPdReq, EID_Vendor, OUI_SUB_SimpleConfig, OUI_SUB_DONT_CARE); if(osTmpIe.Length) { PacketMakeElement(&fbuf->os, EID_Vendor, osTmpIe); } } - + // WFD IE if(osPdReq.Length) { @@ -338,9 +338,9 @@ wdi_Construct_FakePdRsp( if(osTmpIe.Length) { PacketMakeElement(&fbuf->os, EID_Vendor, osTmpIe); - } + } } - + RT_TRACE_F(COMP_OID_SET, DBG_WARNING, ("a fake pd rsp constructed\n")); FrameBuf_Dump(fbuf, 0, DBG_LOUD, __FUNCTION__); @@ -365,7 +365,7 @@ wdi_IndicateRxP2pRspActionFrame( u1Byte *buf = NULL; ULONG buflen = 0; - + NDIS_STATUS_INDICATION *indic = NULL; WDI_MESSAGE_HEADER *wdiHdr = NULL; @@ -384,7 +384,7 @@ wdi_IndicateRxP2pRspActionFrame( } FrameBuf_Init(GEN_TEMP_BUFFER_SIZE, 0, (u1Byte *)pGenBuf->Buffer.Ptr, &fbuf); - + if(WDI_P2P_ACTION_FRAME_PROVISION_DISCOVERY_RESPONSE == ctx->rspType) ft = P2P_FID_PD_RSP; else if(WDI_P2P_ACTION_FRAME_GO_NEGOTIATION_RESPONSE == ctx->rspType) @@ -407,10 +407,10 @@ wdi_IndicateRxP2pRspActionFrame( { dev = p2p_DevList_Get(&info->devList, ctx->da, P2P_DEV_TYPE_DEV); } - + if(NULL == dev) { - RT_TRACE_F(COMP_OID_SET, DBG_WARNING, + RT_TRACE_F(COMP_OID_SET, DBG_WARNING, ("dev not found: bGo: %u, mac: %02X:%02X:%02X:%02X:%02X:%02X\n", ctx->bGo, ctx->da[0], ctx->da[1], ctx->da[2], ctx->da[3], ctx->da[4], ctx->da[5] )); @@ -459,9 +459,9 @@ wdi_IndicateRxP2pRspActionFrame( // gen TLV if(NDIS_STATUS_SUCCESS != GenerateWdiIndicationP2pActionFrameReceived( - ¶m, - sizeof(*indic) + sizeof(*wdiHdr), - &pAdapter->pPortCommonInfo->WdiData.TlvContext, + ¶m, + sizeof(*indic) + sizeof(*wdiHdr), + &pAdapter->pPortCommonInfo->WdiData.TlvContext, &buflen, &((UINT8 *)buf))) { RT_TRACE_F(COMP_OID_SET, DBG_WARNING, ("gen tlv failed\n")); @@ -471,7 +471,7 @@ wdi_IndicateRxP2pRspActionFrame( // fill ptrs indic = (NDIS_STATUS_INDICATION *)buf; wdiHdr = (WDI_MESSAGE_HEADER *)(buf + sizeof(*indic)); - + // indication data PlatformZeroMemory(indic, sizeof(*indic)); indic->Header.Type = NDIS_OBJECT_TYPE_STATUS_INDICATION; @@ -492,7 +492,7 @@ wdi_IndicateRxP2pRspActionFrame( // indicate NdisMIndicateStatusEx(pAdapter->pNdisCommon->hNdisAdapter, indic); - + // cleanup FreeGenerated((UINT8 *)buf); @@ -504,7 +504,7 @@ wdi_IndicateRxP2pRspActionFrame( } p2p_DevList_Unlock(&info->devList); - + FunctionOut(COMP_OID_SET); return; @@ -534,12 +534,12 @@ wdi_SendP2pActionFrameStateCb( } if(OFF_CHNL_TX_STATE_COMPLETE == state) - { + { RT_TRACE_F(COMP_OID_SET, DBG_LOUD, ("complete\n")); bHandled = TRUE; break; } - + if(OFF_CHNL_TX_STATE_FRAME_SENT == state) { RT_TRACE_F(COMP_OID_SET, DBG_LOUD, ("frame sent\n")); @@ -563,11 +563,11 @@ wdi_SendP2pReqActionFrameStateCb( ADAPTER *pAdapter = ctx->pAdapter; wdi_SendP2pActionFrameStateCb(req, state, pCtx); - + if(OFF_CHNL_TX_STATE_COMPLETE == state) { P2P_INFO *info = GET_P2P_INFO(pAdapter); - + WDI_CMD_P2pSendRequestActionFrameComplete(pAdapter, ctx); RT_TRACE_F(COMP_OID_SET, DBG_LOUD, ("restore StateBeforeScan to initialized\n")); @@ -581,7 +581,7 @@ wdi_SendP2pReqActionFrameStateCb( ) { wdi_IndicateRxP2pRspActionFrame(pAdapter, ctx); - } + } } else if(OFF_CHNL_TX_STATE_RETRY == state) { @@ -592,17 +592,17 @@ wdi_SendP2pReqActionFrameStateCb( if(pAdapter->bInHctTest) { - // Not to skip probing under HCT test, because it wastes time + // Not to skip probing under HCT test, because it wastes time // sending action frame to peer on its Listen Channel when peer // is not doing extended listen bSkip = FALSE; } - + if(bSkip) { WDI_SendAction_SkipProbeTemporarilly(req); } - + RT_TRACE_F(COMP_OID_SET, DBG_LOUD, ("retry with token: %u, reqType: %u, skip probe: %u\n", newToken, ctx->reqType, bSkip)); bSkip = !bSkip; @@ -626,13 +626,13 @@ wdi_SendP2pRspActionFrameStateCb( RT_TRACE_F(COMP_P2P, DBG_LOUD, ("state = %d\n", state)); wdi_SendP2pActionFrameStateCb(req, state, pCtx); - + if(OFF_CHNL_TX_STATE_COMPLETE == state) { WDI_CMD_P2pSendResponseActionFrameComplete(pAdapter, ctx); - // restore Dialog Token in P2PInfo since we are sending - // response action frame, self dialog token shall not be + // restore Dialog Token in P2PInfo since we are sending + // response action frame, self dialog token shall not be // modified RT_TRACE_F(COMP_P2P, DBG_LOUD, ("restore token from %u to %u\n", info->DialogToken, ctx->oldToken)); info->DialogToken = ctx->oldToken; @@ -643,7 +643,7 @@ wdi_SendP2pRspActionFrameStateCb( if(WDI_P2P_ACTION_FRAME_GO_NEGOTIATION_CONFIRM == ctx->rspType) { wdi_IndicateRxP2pRspActionFrame(pAdapter, ctx); - } + } } else if(OFF_CHNL_TX_STATE_RETRY == state) { @@ -664,7 +664,7 @@ wdi_SendActionFrameStateCb( BOOLEAN bHandled = FALSE; N63C_SEND_ACTION_CTX *ctx = (N63C_SEND_ACTION_CTX *)pCtx; ADAPTER *pAdapter = ctx->pAdapter; - + RT_TRACE(COMP_OID_SET, DBG_TRACE, ("wdi_SendActionFrameStateCb (0x%x)\n", state)); do @@ -677,12 +677,12 @@ wdi_SendActionFrameStateCb( } if(OFF_CHNL_TX_STATE_COMPLETE == state) - { + { RT_TRACE_F(COMP_OID_SET, DBG_LOUD, ("complete\n")); bHandled = TRUE; break; } - + if(OFF_CHNL_TX_STATE_FRAME_SENT == state) { RT_TRACE_F(COMP_OID_SET, DBG_LOUD, ("frame sent\n")); @@ -700,7 +700,7 @@ wdi_SendActionFrameStateCb( { WDI_SendAction_SkipProbeTemporarilly(req); } - + RT_TRACE_F(COMP_OID_SET, DBG_LOUD, ("retry with token: %u, reqType: %u, skip probe: %u\n", newToken, ctx->reqType, bSkip)); bSkip = !bSkip; @@ -728,7 +728,7 @@ wdi_SendReqActionFrameStateCb( RT_TRACE(COMP_OID_SET, DBG_TRACE, ("wdi_SendReqActionFrameStateCb (0x%x)\n", state)); wdi_SendActionFrameStateCb(req, state, pCtx); - + if(OFF_CHNL_TX_STATE_COMPLETE == state) { WDI_CMD_SendReqActionFrameComplete(pAdapter, ctx); @@ -750,11 +750,11 @@ wdi_SendRspActionFrameStateCb( { WDI_SEND_ACTION_CTX *ctx = (WDI_SEND_ACTION_CTX *)pCtx; ADAPTER *pAdapter = ctx->pAdapter; - + RT_TRACE(COMP_OID_SET, DBG_TRACE, ("wdi_SendRspActionFrameStateCb (0x%x)\n", state)); wdi_SendActionFrameStateCb(req, state, pCtx); - + if(OFF_CHNL_TX_STATE_COMPLETE == state) { WDI_CMD_SendRspActionFrameComplete(pAdapter, ctx); @@ -780,8 +780,8 @@ Wdi_Task_Scan( BOOLEAN bScanByRoam = FALSE; PMGNT_INFO pMgntInfo =&(pAdapter->MgntInfo); - RT_TRACE(COMP_OID_SET, DBG_LOUD, - ("==> Wdi_Task_Scan(): Input InformationBuffer (%d)\n", + RT_TRACE(COMP_OID_SET, DBG_LOUD, + ("==> Wdi_Task_Scan(): Input InformationBuffer (%d)\n", pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.InputBufferLength)); ScanRequest.dot11BSSType = dot11_BSS_type_infrastructure; @@ -793,21 +793,21 @@ Wdi_Task_Scan( CopyMem(ScanRequest.dot11BSSID, param->BSSID.Address, ETHERNET_ADDRESS_LENGTH); RT_PRINT_ADDR(COMP_SCAN, DBG_LOUD, ("ScanRequest \n"), ScanRequest.dot11BSSID); - RT_TRACE(COMP_OID_SET, DBG_LOUD, ("WIFI_TLV_SSID\n")); + RT_TRACE(COMP_OID_SET, DBG_LOUD, ("WIFI_TLV_SSID\n")); MgntClearSsidsToScan(pAdapter); - + for(itSsidl = 0; itSsidl < param->SSIDList.ElementCount; itSsidl++) { WdiSsid = param->SSIDList.pElements[itSsidl]; - + RT_PRINT_STR(COMP_MLME, DBG_LOUD, "===> Wdi_Task_Scan(): ", WdiSsid.pElements, WdiSsid.ElementCount); - + Ssid.Octet = WdiSsid.pElements; - Ssid.Length = (u2Byte)WdiSsid.ElementCount; - + Ssid.Length = (u2Byte)WdiSsid.ElementCount; + RT_PRINT_STR(COMP_MLME, DBG_LOUD, "===> Wdi_Task_Scan(): SSid ", Ssid.Octet, Ssid.Length); - + MgntAddSsidsToScan(pAdapter, Ssid); } RT_TRACE(COMP_OID_SET, DBG_LOUD, ("Scan Type\n")); @@ -827,11 +827,11 @@ Wdi_Task_Scan( if(param->Optional.VendorIEs_IsPresent) { RT_TRACE(COMP_OID_SET, DBG_LOUD, ("WIFI_TLV_VENDORIE\n")); - - MgntActSet_AdditionalProbeReqIE(pAdapter, + + MgntActSet_AdditionalProbeReqIE(pAdapter, (u1Byte *)param->VendorIEs.pElements, (u4Byte)param->VendorIEs.ElementCount); - } + } // Sinda, 20150512 // Skip all scan triggered by Roam. @@ -857,7 +857,7 @@ Wdi_Task_Scan( { if(param->Optional.VendorIEs_IsPresent) { - MgntActSet_AdditionalProbeReqIE(pAdapter, + MgntActSet_AdditionalProbeReqIE(pAdapter, (u1Byte *)param->VendorIEs.pElements, (u4Byte)param->VendorIEs.ElementCount); } @@ -865,11 +865,11 @@ Wdi_Task_Scan( if(NULL != (req = CustomScan_AllocReq(GET_CUSTOM_SCAN_INFO(pAdapter), NULL, NULL))) { wdi_ConstructScanReq(pAdapter, param, req); - + CustomScan_SetTimeBound(req, param->DwellTime.MaximumScanTime); CustomScan_SetupCbCtx(req, wdi_ScanCb, pAdapter); CustomScan_SetRepeatCount(req, param->ScanModeParameters.ScanRepeatCount); - + CustomScan_IssueReq(GET_CUSTOM_SCAN_INFO(pAdapter), req, CUSTOM_SCAN_SRC_TYPE_SYS, "sys"); } } @@ -878,7 +878,7 @@ Wdi_Task_Scan( WDI_IndicateScanComplete(pAdapter, RT_STATUS_FAILURE); } } - + RT_TRACE(COMP_OID_SET, DBG_LOUD, ("<== Wdi_Task_Scan()\n")); return status; } @@ -897,15 +897,15 @@ Wdi_Task_Connect( WDI_TASK_CONNECT_PARAMETERS *Params = pOidHandle->tlvParser.parsedTlv.paramConnect; PWDI_CONNECT_BSS_ENTRY_CONTAINER connectBssEntry = NULL; PMGNT_INFO pMgntInfo=&pAdapter->MgntInfo; - - PWDI_MESSAGE_HEADER pWdiHeader + + PWDI_MESSAGE_HEADER pWdiHeader = (PWDI_MESSAGE_HEADER)pOidHandle->pInputBuffer; - //Save PMKID + //Save PMKID u4Byte ulIndex, i, j; BOOLEAN blInserted; u1Byte bssidcount=0; - int NumPreferredBSSID = Params->PreferredBSSEntryList.ElementCount; + int NumPreferredBSSID = Params->PreferredBSSEntryList.ElementCount; RT_TRACE(COMP_MLME, DBG_LOUD, ("==> Wdi_Task_Connect()\n")); @@ -918,26 +918,26 @@ Wdi_Task_Connect( N6_ASSIGN_OBJECT_HEADER( SsidList.Header, - NDIS_OBJECT_TYPE_DEFAULT, - DOT11_SSID_LIST_REVISION_1, + NDIS_OBJECT_TYPE_DEFAULT, + DOT11_SSID_LIST_REVISION_1, sizeof(DOT11_SSID_LIST) ); - // Clear all entries + // Clear all entries for( ulIndex=0; ulIndex<NUM_PMKID_CACHE; ulIndex++ ) { pSecInfo->PMKIDList[ulIndex].bUsed = FALSE; } pSecInfo->PMKIDCount = 0; - - FtResetEntryList(pAdapter); + + FtResetEntryList(pAdapter); // TODO: Choose corresponding adapter before assigning parameters for(bssidcount=0;bssidcount<NumPreferredBSSID;bssidcount++) { connectBssEntry = &Params->PreferredBSSEntryList.pElements[bssidcount]; if( connectBssEntry->Optional.PMKID_IsPresent == TRUE ) - { + { // 2. Insert or cover with new PMKID. blInserted = FALSE; for(j=0 ; j<NUM_PMKID_CACHE; j++) @@ -969,9 +969,9 @@ Wdi_Task_Connect( break; } } - } + } } - + if(connectBssEntry->Optional.FTInitialAssocParameters_IsPresent) { FtUpdateEntryInfo(pAdapter, FT_ENTRY_ACTION_UPDATE_MDE, connectBssEntry->BSSID.Address, @@ -986,12 +986,12 @@ Wdi_Task_Connect( connectBssEntry->FTReAssocParameters.MDE.pElements, connectBssEntry->FTReAssocParameters.MDE.ElementCount); RT_PRINT_DATA(COMP_MLME, DBG_LOUD, "FTReAssocParameters MDE:\n", connectBssEntry->FTReAssocParameters.MDE.pElements, connectBssEntry->FTReAssocParameters.MDE.ElementCount); - + FtUpdateEntryInfo(pAdapter, FT_ENTRY_ACTION_UPDATE_FTE, connectBssEntry->BSSID.Address, connectBssEntry->FTReAssocParameters.FTE.pElements, connectBssEntry->FTReAssocParameters.FTE.ElementCount); RT_PRINT_DATA(COMP_MLME, DBG_LOUD, "FTReAssocParameters FTE:\n", connectBssEntry->FTReAssocParameters.FTE.pElements, connectBssEntry->FTReAssocParameters.FTE.ElementCount); - + FtUpdateEntryInfo(pAdapter, FT_ENTRY_ACTION_UPDATE_PMKR0_NAME, connectBssEntry->BSSID.Address, connectBssEntry->FTReAssocParameters.PMKR0Name.pmkname.Name, sizeof(WDI_TYPE_PMK_NAME)); RT_PRINT_DATA(COMP_MLME, DBG_LOUD, "FTReAssocParameters PMKR0:\n", @@ -1019,14 +1019,14 @@ Wdi_Task_Connect( // TODO: HiddenNetwork / MFPEnabled / HostFIPSModeEnabled pMgntInfo->bRoamRequest = Params->ConnectParameters.ConnectionSettings.RoamRequest; RT_TRACE( COMP_MLME, DBG_LOUD, ("bRoamRequest %d\n", pMgntInfo->bRoamRequest) ); - + pMgntInfo->SafeModeEnabled = Params->ConnectParameters.ConnectionSettings.HostFIPSModeEnabled; - + if(pMgntInfo->SafeModeEnabled && !pMgntInfo->pHTInfo->bEnableHT) - pMgntInfo->pStaQos->QosCapability = QOS_DISABLE; + pMgntInfo->pStaQos->QosCapability = QOS_DISABLE; else - pMgntInfo->pStaQos->QosCapability = pMgntInfo->pStaQos->QosCapabilityBackup; - + pMgntInfo->pStaQos->QosCapability = pMgntInfo->pStaQos->QosCapabilityBackup; + RT_TRACE(COMP_OID_SET, DBG_LOUD, ("Wdi_task_connect(): bExcludeUnencrypted %d HostFIPSModeEnabled %d QosCapability 0x%x QosCapabilityBackup 0x%x enableHT %d\n", pMgntInfo->bExcludeUnencrypted, pMgntInfo->SafeModeEnabled, pMgntInfo->pStaQos->QosCapability, pMgntInfo->pStaQos->QosCapabilityBackup, pMgntInfo->pHTInfo->bEnableHT)); //3 DesiredSSIDList @@ -1040,9 +1040,9 @@ Wdi_Task_Connect( RT_PRINT_STR(COMP_MLME, DBG_LOUD, ("Desired SSID \n"), SsidList.SSIDs[i].ucSSID, SsidList.SSIDs[i].uSSIDLength); } pNdisCommon->dot11DesiredSSIDList = SsidList; - + //3 Authentication Algorithm - N6CSet_DOT11_AUTHENTICATION_ALOGORITHM(pAdapter, Params->ConnectParameters.AuthenticationAlgorithms.pElements[0]); + N6CSet_DOT11_AUTHENTICATION_ALOGORITHM(pAdapter, Params->ConnectParameters.AuthenticationAlgorithms.pElements[0]); RT_TRACE_F(COMP_SEC, DBG_LOUD, ("AuthenticationAlgorithms count = %d\n", Params->ConnectParameters.AuthenticationAlgorithms.ElementCount)); //3 Unicast Cipher Algorithm @@ -1052,20 +1052,20 @@ Wdi_Task_Connect( //3 Multicast Cipher Algorithm N6CSet_DOT11_MULTICAST_CIPHER_ALGORITHM(pAdapter, Params->ConnectParameters.MulticastCipherAlgorithms.pElements[0]); RT_TRACE_F(COMP_SEC, DBG_LOUD, ("MulticastCipherAlgorithms count = %d\n", Params->ConnectParameters.MulticastCipherAlgorithms.ElementCount)); - - + + //3 Additional Association Request IEs if(Params->ConnectParameters.Optional.AssociationRequestVendorIE_IsPresent) { if(Params->ConnectParameters.AssociationRequestVendorIE.ElementCount > 0) { RT_TRACE(COMP_MLME, DBG_LOUD, ("Wdi_Task_Connect(): set association request additional IE\n")); - MgntActSet_AdditionalAssocReqIE(pAdapter, - Params->ConnectParameters.AssociationRequestVendorIE.pElements, + MgntActSet_AdditionalAssocReqIE(pAdapter, + Params->ConnectParameters.AssociationRequestVendorIE.pElements, Params->ConnectParameters.AssociationRequestVendorIE.ElementCount ); - - RT_PRINT_DATA(COMP_MLME, DBG_TRACE, ("Wdi_Task_Connect(): AssociationRequestVendorIE\n"), + + RT_PRINT_DATA(COMP_MLME, DBG_TRACE, ("Wdi_Task_Connect(): AssociationRequestVendorIE\n"), Params->ConnectParameters.AssociationRequestVendorIE.pElements, Params->ConnectParameters.AssociationRequestVendorIE.ElementCount); } @@ -1084,11 +1084,11 @@ Wdi_Task_Connect( { RT_TRACE(COMP_MLME, DBG_LOUD, ("Wdi_Task_Connect(): set disallowed BSSIDs\n")); MgntActSet_ExcludedMacAddressList( - pAdapter, - (pu1Byte)Params->ConnectParameters.DisallowedBSSIDs.pElements, + pAdapter, + (pu1Byte)Params->ConnectParameters.DisallowedBSSIDs.pElements, Params->ConnectParameters.DisallowedBSSIDs.ElementCount ); - + for(; i < Params->ConnectParameters.DisallowedBSSIDs.ElementCount; i++) { RT_PRINT_ADDR(COMP_MLME, DBG_TRACE, ("Wdi_Task_Connect(): disallowed BSSID:"), @@ -1120,7 +1120,7 @@ Wdi_Task_Connect( PTLV_WDI_STRUCT pTlvData = NULL; ULONG BytesProcessed = 0; ULONG Prefix = sizeof(WDI_MESSAGE_HEADER); - + pTlvData = (PTLV_WDI_STRUCT)((pu1Byte)pOidHandle->pInputBuffer + sizeof(WDI_MESSAGE_HEADER)); // WDI_CONNECT_BSS_ENTRY @@ -1130,20 +1130,20 @@ Wdi_Task_Connect( DOT11_SSID_LIST SsidList; u1Byte NumSsid = 0; PRT_SECURITY_T pSecInfo = &(pAdapter->MgntInfo.SecurityInfo); - + InputBufferLength = pTlvData->Length; N6_ASSIGN_OBJECT_HEADER( SsidList.Header, - NDIS_OBJECT_TYPE_DEFAULT, - DOT11_SSID_LIST_REVISION_1, + NDIS_OBJECT_TYPE_DEFAULT, + DOT11_SSID_LIST_REVISION_1, sizeof(DOT11_SSID_LIST) ); SsidList.uNumOfEntries = NumSsid; pTlvData = (PTLV_WDI_STRUCT)((pu1Byte)pTlvData->Value); - + while(BytesProcessed < InputBufferLength) { // Parse Type @@ -1154,7 +1154,7 @@ Wdi_Task_Connect( RT_TRACE(COMP_MLME, DBG_LOUD, ("unknown TLV 0x%x\n", pTlvData->Type)); } break; - + case WDI_TLV_CONNECTION_SETTINGS: { u1Byte RoamRequest = 0; @@ -1168,7 +1168,7 @@ Wdi_Task_Connect( ExcludeUnencrypted = *(pu1Byte)(pTlvData->Value + 2); MFPEnabled = *(pu1Byte)(pTlvData->Value + 3); HostFIPSModeEnabled = *(pu1Byte)(pTlvData->Value + 4); - + RT_TRACE(COMP_MLME, DBG_LOUD, ("WDI_TLV_CONNECTION_SETTINGS\n")); RT_TRACE(COMP_MLME, DBG_LOUD, ("RoamRequest = %d, HiddenNetwork = %d, ExcludeUnencrypted = %d, MFPEnabled = %d, HostFIPSModeEnabled = %d\n", RoamRequest, HiddenNetwork, ExcludeUnencrypted, MFPEnabled, HostFIPSModeEnabled)); @@ -1208,7 +1208,7 @@ Wdi_Task_Connect( case WDI_TLV_MULTICAST_CIPHER_ALGO_LIST: { u4Byte AlgorithmId = (*((pu4Byte)(pTlvData->Value))); - + RT_TRACE(COMP_MLME, DBG_LOUD, ("WDI_TLV_MULTICAST_CIPHER_ALGO_LIST\n")); switch( AlgorithmId ) @@ -1222,7 +1222,7 @@ Wdi_Task_Connect( pSecInfo->GroupEncAlgorithm = RT_ENC_ALG_WEP40; RT_TRACE( COMP_SEC, DBG_LOUD, ("Wdi_Task_Connect(): DOT11_CIPHER_ALGO_WEP\n") ); break; - + case WDI_CIPHER_ALGO_WEP40: pSecInfo->GroupEncAlgorithm = RT_ENC_ALG_WEP40; RT_TRACE( COMP_SEC, DBG_LOUD, ("Wdi_Task_Connect(): DOT11_CIPHER_ALGO_WEP40\n") ); @@ -1239,8 +1239,8 @@ Wdi_Task_Connect( break; case DOT11_CIPHER_ALGO_WAPI_SMS4: //For WAPI IHV service support add by ylb 20111114 - pSecInfo->GroupEncAlgorithm = RT_ENC_ALG_SMS4; - RT_TRACE( COMP_SEC, DBG_LOUD, ("Wdi_Task_Connect(): DOT11_CIPHER_ALGO_WAPI_SMS4\n") ); + pSecInfo->GroupEncAlgorithm = RT_ENC_ALG_SMS4; + RT_TRACE( COMP_SEC, DBG_LOUD, ("Wdi_Task_Connect(): DOT11_CIPHER_ALGO_WAPI_SMS4\n") ); break; case WDI_CIPHER_ALGO_WEP104: pSecInfo->GroupEncAlgorithm = RT_ENC_ALG_WEP104; @@ -1263,7 +1263,7 @@ Wdi_Task_Connect( case WDI_TLV_UNICAST_CIPHER_ALGO_LIST: { u4Byte AlgorithmId = (*((pu4Byte)(pTlvData->Value))); - + RT_TRACE(COMP_MLME, DBG_LOUD, ("WDI_TLV_UNICAST_CIPHER_ALGO_LIST\n")); N6CSet_DOT11_UNICAST_CIPHER_ALGORITHM(pAdapter, (DOT11_CIPHER_ALGORITHM)AlgorithmId); @@ -1293,7 +1293,7 @@ Wdi_Task_Connect( RT_TRACE(COMP_MLME, DBG_LOUD, ("WDI_TLV_ALLOWED_BSSIDS_LIST\n")); } break; - + } // Parse Length @@ -1302,7 +1302,7 @@ Wdi_Task_Connect( // Parse Content BytesProcessed += (4 + pTlvData->Length); - + pTlvData = (PTLV_WDI_STRUCT)((pu1Byte)pOidHandle->pInputBuffer + Prefix + 4 + BytesProcessed); } @@ -1322,12 +1322,12 @@ Wdi_Task_Connect( { pMgntInfo->Ssid.Octet = pNdisCommon->dot11DesiredSSIDList.SSIDs[0].ucSSID; pMgntInfo->Ssid.Length = (u2Byte)pNdisCommon->dot11DesiredSSIDList.SSIDs[0].uSSIDLength; - + pMgntInfo->bDisconnectRequest = FALSE; RT_TRACE(COMP_MLME, DBG_LOUD, ("This is roam request, go to roam flow\n")); MgntLinkStatusSetRoamingState(pAdapter, 0, RT_ROAMING_BY_DEAUTH, ROAMINGSTATE_SCANNING); DrvIFIndicateRoamingStart(pAdapter); - + if( MgntRoamRetry(pAdapter, FALSE) == FALSE ) ndisStatus = NDIS_STATUS_FAILURE; else @@ -1349,7 +1349,7 @@ Wdi_Task_Disconnect( WDI_TASK_DISCONNECT_PARAMETERS *param = pOidHandle->tlvParser.parsedTlv.paramDisconnect; NDIS_OID_REQUEST *req = NULL; - + FunctionIn(COMP_OID_SET); do @@ -1358,7 +1358,7 @@ Wdi_Task_Disconnect( { RT_TRACE_F(COMP_OID_SET, DBG_WARNING, ("N6CSet_DOT11_DISCONNECT_REQUEST returns: 0x%08X\n", status)); break; - } + } }while(FALSE); // M4 indication is not required since bWaitComplete in RT_SUPPORT_TASKs is FALSE @@ -1389,12 +1389,12 @@ Wdi_Task_CreatePort( NDIS_OID_REQUEST *req = NULL; WDI_TASK_CREATE_PORT_PARAMETERS *param = pOidHandle->tlvParser.parsedTlv.paramCreatePort; - + FunctionIn(COMP_OID_SET); do { - RT_TRACE_F(COMP_OID_SET, DBG_LOUD, ("NdisPortNumber:%d OpModeMask: 0x%08X\n", + RT_TRACE_F(COMP_OID_SET, DBG_LOUD, ("NdisPortNumber:%d OpModeMask: 0x%08X\n", param->CreatePortParameters.NdisPortNumber, param->CreatePortParameters.OpModeMask)); @@ -1412,19 +1412,19 @@ Wdi_Task_CreatePort( ) // TODO: OpModeMask is a bitmap with combination of possible op modes { status = N62C_OID_DOT11_CREATE_MAC(pAdapter, req); - + if(NDIS_STATUS_SUCCESS != status && NDIS_STATUS_PENDING != status) { RT_TRACE_F(COMP_OID_SET, DBG_WARNING, ("N62C_OID_DOT11_CREATE_MAC returns error: 0x%08X\n", status)); Wdi_Xlat_FreeOid(req); } - + break; } else {// cases which we don't need to create mac DOT11_MAC_INFO *macInfo = req->DATA.METHOD_INFORMATION.InformationBuffer; - + status = NDIS_STATUS_SUCCESS; macInfo->uNdisPortNumber = 0; @@ -1436,7 +1436,7 @@ Wdi_Task_CreatePort( } }while(FALSE); - + FunctionOut(COMP_OID_SET); return status; } @@ -1452,9 +1452,9 @@ Wdi_Task_DeletePort( NDIS_OID_REQUEST *req = NULL; PADAPTER pTargetAdapter = NULL; WDI_TASK_DELETE_PORT_PARAMETERS *param = pOidHandle->tlvParser.parsedTlv.paramDeletePort; - + FunctionIn(COMP_OID_SET); - + do { if(NULL == (req = Wdi_Xlat_AllocDeleteMacOid(pOidHandle, param))) @@ -1462,36 +1462,36 @@ Wdi_Task_DeletePort( status = NDIS_STATUS_RESOURCES; break; } - + // delete mac if(0 != param->DeletePortParameters.PortNumber) { //Delete group peer. WDI_DeleteGroupPeer(pAdapter, param->DeletePortParameters.PortNumber); - + status = N62C_OID_DOT11_DELETE_MAC(pAdapter, req); - + if(NDIS_STATUS_SUCCESS != status && NDIS_STATUS_PENDING != status) { RT_TRACE_F(COMP_OID_SET, DBG_WARNING, ("N62C_OID_DOT11_DELETE_MAC returns error: 0x%08X\n", status)); Wdi_Xlat_FreeOid(req); } - + break; } else {// cases which we don't need to delete mac status = NDIS_STATUS_SUCCESS; - + //Delete group peer. WDI_DeleteGroupPeer(pAdapter, param->DeletePortParameters.PortNumber); - + WDI_CMD_DeletePortComplete(pAdapter, req, status); break; } - + }while(FALSE); - + FunctionOut(COMP_OID_SET); return status; } @@ -1513,16 +1513,16 @@ Wdi_Task_SetApCipherKeyMappingKey( if(!pEntry) return NDIS_STATUS_INVALID_DATA; - + CopyMem(pEntry->perSTAKeyInfo.PTK, pKeyMaterial, keyLen); // Added by Annie, 2005-07-12. - + if(WDI_CIPHER_ALGO_TKIP == cipherAlgo) { pEntry->perSTAKeyInfo.TempEncKey = pEntry->perSTAKeyInfo.PTK+TKIP_ENC_KEY_POS; - pEntry->perSTAKeyInfo.TxMICKey = pEntry->perSTAKeyInfo.PTK+(TKIP_MIC_KEY_POS); + pEntry->perSTAKeyInfo.TxMICKey = pEntry->perSTAKeyInfo.PTK+(TKIP_MIC_KEY_POS); pEntry->perSTAKeyInfo.RxMICKey = pEntry->perSTAKeyInfo.PTK+(TKIP_MIC_KEY_POS+TKIP_MIC_KEY_LEN); - //Add for AP mode HW enc,by CCW + //Add for AP mode HW enc,by CCW ucIndex = AP_FindFreeEntry(pAdapter , pEntry->MacAddr); if(ucIndex == TOTAL_CAM_ENTRY) { @@ -1531,12 +1531,12 @@ Wdi_Task_SetApCipherKeyMappingKey( } //set key - AP_Setkey(pAdapter , + AP_Setkey(pAdapter , pEntry->perSTAKeyInfo.pWLanSTA->MacAddr, - ucIndex, // Entey index + ucIndex, // Entey index CAM_TKIP, - 0, // Parise key - pEntry->perSTAKeyInfo.TempEncKey); + 0, // Parise key + pEntry->perSTAKeyInfo.TempEncKey); pEntry->keyindex = ucIndex; } @@ -1544,28 +1544,28 @@ Wdi_Task_SetApCipherKeyMappingKey( { // AES mode AP-WPA AES,CCW AESCCMP_BLOCK blockKey; AUTH_PKEY_MGNT_TAG *pKeyMgnt = &pEntry->perSTAKeyInfo; - + RT_TRACE(COMP_SEC, DBG_LOUD, ("===>CCMP Set Station Key.\n")); RT_PRINT_ADDR(COMP_SEC, DBG_LOUD, "===> Peer Address : ", addr); - - //Add for AP mode HW enc,by CCW + + //Add for AP mode HW enc,by CCW ucIndex = AP_FindFreeEntry(pAdapter, pEntry->MacAddr); if(ucIndex == TOTAL_CAM_ENTRY) { RT_TRACE_F(COMP_OID_SET, DBG_WARNING, ("[Warning]: Cam Entry is FULL!!!\n")); return NDIS_STATUS_INVALID_DATA; } - - //Set Key + + //Set Key PlatformMoveMemory(blockKey.x , pEntry->perSTAKeyInfo.PTK, 16); AES_SetKey(blockKey.x, AESCCMP_BLK_SIZE * 8, (u4Byte *)pEntry->perSTAKeyInfo.AESKeyBuf); //set hw key - AP_Setkey(pAdapter , + AP_Setkey(pAdapter , pEntry->perSTAKeyInfo.pWLanSTA->MacAddr, - ucIndex, // Entey index + ucIndex, // Entey index CAM_AES, - 0, // Parise key - pEntry->perSTAKeyInfo.PTK); + 0, // Parise key + pEntry->perSTAKeyInfo.PTK); pEntry->keyindex = ucIndex; } @@ -1599,7 +1599,7 @@ Wdi_Task_SetApCipherDefaultKey( else if(WDI_CIPHER_ALGO_CCMP == cipherAlgo) { AESCCMP_BLOCK blockKey; - + PlatformMoveMemory(blockKey.x, pGlInfo->GTK, 16); pMgntInfo->SecurityInfo.GroupTransmitKeyIdx = (u1Byte)keyId; AES_SetKey(blockKey.x, AESCCMP_BLK_SIZE * 8, (u4Byte *)pGlInfo->AESGTK); @@ -1618,7 +1618,7 @@ Wdi_Task_Set_Radio_State( PRT_NDIS6_COMMON pNdisCommon = pAdapter->pNdisCommon; ULONG InputBufferLength = pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.InputBufferLength; WDI_SET_RADIO_STATE_PARAMETERS *Params = pOidHandle->tlvParser.parsedTlv.paramSetRadioState; - + RT_TRACE(COMP_MLME, DBG_LOUD, ("==> Wdi_Task_Set_Radio_State()\n")); if( Params->SoftwareRadioState == TRUE ) @@ -1657,8 +1657,8 @@ Wdi_Task_Roam( u4Byte ulIndex, i, j; BOOLEAN blInserted; u1Byte bssidcount=0; - int NumPreferredBSSID = Params->PreferredBSSEntryList.ElementCount; - + int NumPreferredBSSID = Params->PreferredBSSEntryList.ElementCount; + RT_TRACE(COMP_MLME, DBG_LOUD, ("==> Wdi_Task_Roam()\n")); @@ -1671,28 +1671,28 @@ Wdi_Task_Roam( N6_ASSIGN_OBJECT_HEADER( SsidList.Header, - NDIS_OBJECT_TYPE_DEFAULT, - DOT11_SSID_LIST_REVISION_1, + NDIS_OBJECT_TYPE_DEFAULT, + DOT11_SSID_LIST_REVISION_1, sizeof(DOT11_SSID_LIST) ); // TODO: Choose corresponding adapter before assigning parameters - - // Clear all entries + + // Clear all entries for( ulIndex=0; ulIndex<NUM_PMKID_CACHE; ulIndex++ ) { pSecInfo->PMKIDList[ulIndex].bUsed = FALSE; } pSecInfo->PMKIDCount = 0; - - FtResetEntryList(pAdapter); + + FtResetEntryList(pAdapter); // TODO: Choose corresponding adapter before assigning parameters for(bssidcount=0;bssidcount<NumPreferredBSSID;bssidcount++) { connectBssEntry = &Params->PreferredBSSEntryList.pElements[bssidcount]; if( connectBssEntry->Optional.PMKID_IsPresent == TRUE ) - { + { // 2. Insert or cover with new PMKID. blInserted = FALSE; for(j=0 ; j<NUM_PMKID_CACHE; j++) @@ -1724,9 +1724,9 @@ Wdi_Task_Roam( break; } } - } + } } - + if(connectBssEntry->Optional.FTInitialAssocParameters_IsPresent) { FtUpdateEntryInfo(pAdapter, FT_ENTRY_ACTION_UPDATE_MDE, connectBssEntry->BSSID.Address, @@ -1741,12 +1741,12 @@ Wdi_Task_Roam( connectBssEntry->FTReAssocParameters.MDE.pElements, connectBssEntry->FTReAssocParameters.MDE.ElementCount); RT_PRINT_DATA(COMP_MLME, DBG_LOUD, "FTReAssocParameters MDE:\n", connectBssEntry->FTReAssocParameters.MDE.pElements, connectBssEntry->FTReAssocParameters.MDE.ElementCount); - + FtUpdateEntryInfo(pAdapter, FT_ENTRY_ACTION_UPDATE_FTE, connectBssEntry->BSSID.Address, connectBssEntry->FTReAssocParameters.FTE.pElements, connectBssEntry->FTReAssocParameters.FTE.ElementCount); RT_PRINT_DATA(COMP_MLME, DBG_LOUD, "FTReAssocParameters FTE:\n", connectBssEntry->FTReAssocParameters.FTE.pElements, connectBssEntry->FTReAssocParameters.FTE.ElementCount); - + FtUpdateEntryInfo(pAdapter, FT_ENTRY_ACTION_UPDATE_PMKR0_NAME, connectBssEntry->BSSID.Address, connectBssEntry->FTReAssocParameters.PMKR0Name.pmkname.Name, sizeof(WDI_TYPE_PMK_NAME)); RT_PRINT_DATA(COMP_MLME, DBG_LOUD, "FTReAssocParameters PMKR0:\n", @@ -1768,26 +1768,26 @@ Wdi_Task_Roam( RT_PRINT_DATA( COMP_MLME, DBG_LOUD, "PMKID: ", pSecInfo->PMKIDList[ulIndex].PMKID, connectBssEntry->PMKID.ElementCount); } } - + pAdapter->MgntInfo.bExcludeUnencrypted = Params->ConnectParameters.ConnectionSettings.ExcludeUnencrypted; // TODO: HiddenNetwork / MFPEnabled / HostFIPSModeEnabled pMgntInfo->SafeModeEnabled = Params->ConnectParameters.ConnectionSettings.HostFIPSModeEnabled; - + if(pMgntInfo->SafeModeEnabled && !pMgntInfo->pHTInfo->bEnableHT) - pMgntInfo->pStaQos->QosCapability = QOS_DISABLE; + pMgntInfo->pStaQos->QosCapability = QOS_DISABLE; else - pMgntInfo->pStaQos->QosCapability = pMgntInfo->pStaQos->QosCapabilityBackup; - + pMgntInfo->pStaQos->QosCapability = pMgntInfo->pStaQos->QosCapabilityBackup; + RT_TRACE(COMP_OID_SET, DBG_LOUD, ("Wdi_task_roam(): bExcludeUnencrypted %d HostFIPSModeEnabled %d QosCapability 0x%x\n", pMgntInfo->bExcludeUnencrypted, pMgntInfo->SafeModeEnabled, pMgntInfo->pStaQos->QosCapability)); - + //3 RoamNeededReason if( Params->ConnectParameters.ConnectionSettings.RoamRequest == TRUE ) { AssocStatus = Params->ConnectParameters.ConnectionSettings.RoamNeededReason; RT_TRACE_F(COMP_MLME, DBG_LOUD, ("RoamNeededReason %d\n", AssocStatus)); } - + //3 DesiredSSIDList SsidList.uNumOfEntries = Params->ConnectParameters.SSIDList.ElementCount; @@ -1809,19 +1809,19 @@ Wdi_Task_Roam( //3 Multicast Cipher Algorithm N6CSet_DOT11_MULTICAST_CIPHER_ALGORITHM(pAdapter, Params->ConnectParameters.MulticastCipherAlgorithms.pElements[0]); - + //3 Additional Association Request IEs if(Params->ConnectParameters.Optional.AssociationRequestVendorIE_IsPresent) { if(Params->ConnectParameters.AssociationRequestVendorIE.ElementCount > 0) { RT_TRACE(COMP_MLME, DBG_LOUD, ("Wdi_Task_Roam(): set association request additional IE\n")); - MgntActSet_AdditionalAssocReqIE(pAdapter, - Params->ConnectParameters.AssociationRequestVendorIE.pElements, + MgntActSet_AdditionalAssocReqIE(pAdapter, + Params->ConnectParameters.AssociationRequestVendorIE.pElements, Params->ConnectParameters.AssociationRequestVendorIE.ElementCount ); - - RT_PRINT_DATA(COMP_MLME, DBG_TRACE, ("Wdi_Task_Roam(): AssociationRequestVendorIE\n"), + + RT_PRINT_DATA(COMP_MLME, DBG_TRACE, ("Wdi_Task_Roam(): AssociationRequestVendorIE\n"), Params->ConnectParameters.AssociationRequestVendorIE.pElements, Params->ConnectParameters.AssociationRequestVendorIE.ElementCount); } @@ -1840,11 +1840,11 @@ Wdi_Task_Roam( { RT_TRACE(COMP_MLME, DBG_LOUD, ("Wdi_Task_Roam(): set disallowed BSSIDs\n")); MgntActSet_ExcludedMacAddressList( - pAdapter, - (pu1Byte)Params->ConnectParameters.DisallowedBSSIDs.pElements, + pAdapter, + (pu1Byte)Params->ConnectParameters.DisallowedBSSIDs.pElements, Params->ConnectParameters.DisallowedBSSIDs.ElementCount ); - + for(; i < Params->ConnectParameters.DisallowedBSSIDs.ElementCount; i++) { RT_PRINT_ADDR(COMP_MLME, DBG_TRACE, ("Wdi_Task_Roam(): disallowed BSSID:"), @@ -1871,7 +1871,7 @@ Wdi_Task_Roam( } } } - + if( pMgntInfo->bMediaConnect || pMgntInfo->bIbssStarter) { if( pMgntInfo->mIbss ){ @@ -1885,7 +1885,7 @@ Wdi_Task_Roam( MgntDisconnectAP(pAdapter, disas_lv_ss); } } - + RT_TRACE(COMP_MLME, DBG_LOUD, ("pMgntInfo->PrepareRoamState %d\n", pMgntInfo->PrepareRoamState)); switch(pMgntInfo->PrepareRoamState) { @@ -1909,13 +1909,13 @@ Wdi_Task_Roam( RT_TRACE(COMP_MLME, DBG_WARNING, ("No matched roaming state\n")); break; } - + pMgntInfo->bPrepareRoaming = FALSE; pMgntInfo->PrepareRoamState = RT_PREPARE_ROAM_NONE; pMgntInfo->PrepareRoamingCount = 0; - + DrvIFIndicateRoamingStart(pAdapter); - + if( MgntRoamRetry(pAdapter, FALSE) == FALSE ) ndisStatus = NDIS_STATUS_FAILURE; else @@ -1937,7 +1937,7 @@ WdiSimpleSetProperty( PMGNT_INFO pMgntInfo = &(pAdapter->MgntInfo); PRT_NDIS6_COMMON pNdisCommon = pAdapter->pNdisCommon; - PWDI_MESSAGE_HEADER pWdiHeader + PWDI_MESSAGE_HEADER pWdiHeader = (PWDI_MESSAGE_HEADER)pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.InformationBuffer; // We complete the OID. Need to populate some fields @@ -1955,11 +1955,11 @@ WdiSimpleSetProperty( return ndisStatus; } -// +// // Translate from RT_PS_MODE to WDI_POWER_SAVE_LEVEL // 2005.02.15, by rcnjko. // -int +int TranslatePsToWdiPs( IN POWER_LEVEL_CONFIG PowerMode ) @@ -1969,20 +1969,20 @@ TranslatePsToWdiPs( switch(PowerMode) { case POWER_SAVING_NO_POWER_SAVING: - WdiPsMode = WDI_POWER_SAVE_LEVEL_NO_POWER_SAVE; - break; + WdiPsMode = WDI_POWER_SAVE_LEVEL_NO_POWER_SAVE; + break; case POWER_SAVING_FAST_PSP: - WdiPsMode = WDI_POWER_SAVE_LEVEL_FAST_PSP; - break; + WdiPsMode = WDI_POWER_SAVE_LEVEL_FAST_PSP; + break; case POWER_SAVING_MAX_PSP: - WdiPsMode = WDI_POWER_SAVE_LEVEL_MAX_PSP; - break; + WdiPsMode = WDI_POWER_SAVE_LEVEL_MAX_PSP; + break; case POWER_SAVING_MAXIMUM_LEVEL: - WdiPsMode = WDI_POWER_SAVE_LEVEL_MAXIMUM_LEVEL; - break; + WdiPsMode = WDI_POWER_SAVE_LEVEL_MAXIMUM_LEVEL; + break; default: RT_TRACE(COMP_DBG, DBG_SERIOUS, ("TranslatePsToWdiPs(): Unknown PowerMode: 0x%X !!!\n", PowerMode)); - WdiPsMode = WDI_POWER_SAVE_LEVEL_NO_POWER_SAVE; + WdiPsMode = WDI_POWER_SAVE_LEVEL_NO_POWER_SAVE; break; } @@ -2041,15 +2041,15 @@ Wdi_Set_Add_Cipher_Keys( cpMacAddr(MacAddress, CipherKey.PeerMacAddress.Address); bDefaultKey = FALSE; - RT_PRINT_ADDR(COMP_SCAN, DBG_LOUD, "WDI_TLV_PEER_MAC_ADDRESS(): ", MacAddress); + RT_PRINT_ADDR(COMP_SCAN, DBG_LOUD, "WDI_TLV_PEER_MAC_ADDRESS(): ", MacAddress); } if(CipherKey.Optional.CipherKeyID_IsPresent) { KeyIndex = CipherKey.CipherKeyID.CipherKeyID; - RT_TRACE(COMP_SEC, DBG_LOUD, ("WDI_TLV_CIPHER_KEY_ID 0x%x\n", KeyIndex)); + RT_TRACE(COMP_SEC, DBG_LOUD, ("WDI_TLV_CIPHER_KEY_ID 0x%x\n", KeyIndex)); } - + { cipherAlgo = CipherKey.CipherKeyTypeInfo.CipherAlgorithm; direction = CipherKey.CipherKeyTypeInfo.Direction; @@ -2061,7 +2061,7 @@ Wdi_Set_Add_Cipher_Keys( switch(cipherAlgo) { case WDI_CIPHER_ALGO_WEP: - rtEncAlgo = RT_ENC_ALG_WEP; + rtEncAlgo = RT_ENC_ALG_WEP; break; case WDI_CIPHER_ALGO_WEP40: @@ -2070,59 +2070,59 @@ Wdi_Set_Add_Cipher_Keys( case WDI_CIPHER_ALGO_WEP104: rtEncAlgo = RT_ENC_ALG_WEP104; - break; - - case WDI_CIPHER_ALGO_TKIP: + break; + + case WDI_CIPHER_ALGO_TKIP: rtEncAlgo = RT_ENC_ALG_TKIP; break; - case WDI_CIPHER_ALGO_CCMP: - rtEncAlgo = RT_ENC_ALG_AESCCMP; + case WDI_CIPHER_ALGO_CCMP: + rtEncAlgo = RT_ENC_ALG_AESCCMP; break; - case WDI_CIPHER_ALGO_BIP: + case WDI_CIPHER_ALGO_BIP: break; default: break; - } - } + } + } - if(CipherKey.Optional.ReceiveSequenceCount_IsPresent) + if(CipherKey.Optional.ReceiveSequenceCount_IsPresent) { PlatformMoveMemory(&KeyRSC, CipherKey.ReceiveSequenceCount.ReceiveSequenceCount, 6); -// RT_TRACE(COMP_SEC, DBG_LOUD, ("WIFI_TLV_CIPHER_KEY_RECEIVE_SEQUENCE_COUNT 0x%"i64fmt"x\n", KeyRSC)); +// RT_TRACE(COMP_SEC, DBG_LOUD, ("WIFI_TLV_CIPHER_KEY_RECEIVE_SEQUENCE_COUNT 0x%"i64fmt"x\n", KeyRSC)); } if(CipherKey.Optional.CCMPKey_IsPresent) - { + { KeyLen = CipherKey.CCMPKey.ElementCount; pKeyMaterial = CipherKey.CCMPKey.pElements; - bValidKeyRSC = TRUE; + bValidKeyRSC = TRUE; RT_PRINT_DATA(COMP_SEC, DBG_LOUD,("WDI_TLV_CIPHER_KEY_CCMP_KEY\n"),pKeyMaterial,KeyLen); } if(CipherKey.Optional.TKIPInfo_IsPresent) - { + { // Tkip Enc Key(16) + STA Rx MIC Key(8) + STA Tx MIC Key(8). RT_PRINT_DATA(COMP_SEC, DBG_LOUD, ("TKIPKey \n"), CipherKey.TKIPInfo.TKIPKey.pElements, CipherKey.TKIPInfo.TKIPKey.ElementCount); RT_PRINT_DATA(COMP_SEC, DBG_LOUD, ("TKIPMIC \n"), CipherKey.TKIPInfo.TKIPMIC.pElements, CipherKey.TKIPInfo.TKIPMIC.ElementCount); - + PlatformMoveMemory(pTkipKeyMaterial, CipherKey.TKIPInfo.TKIPKey.pElements, CipherKey.TKIPInfo.TKIPKey.ElementCount); - PlatformMoveMemory(pTkipKeyMaterial+CipherKey.TKIPInfo.TKIPKey.ElementCount, CipherKey.TKIPInfo.TKIPMIC.pElements, CipherKey.TKIPInfo.TKIPMIC.ElementCount); + PlatformMoveMemory(pTkipKeyMaterial+CipherKey.TKIPInfo.TKIPKey.ElementCount, CipherKey.TKIPInfo.TKIPMIC.pElements, CipherKey.TKIPInfo.TKIPMIC.ElementCount); + + RT_PRINT_DATA(COMP_SEC, DBG_LOUD, ("pTkipKeyMaterial \n"), pTkipKeyMaterial, TKIP_KEY_LEN); + + pKeyMaterial = pTkipKeyMaterial; + KeyLen = CipherKey.TKIPInfo.TKIPKey.ElementCount + CipherKey.TKIPInfo.TKIPMIC.ElementCount; - RT_PRINT_DATA(COMP_SEC, DBG_LOUD, ("pTkipKeyMaterial \n"), pTkipKeyMaterial, TKIP_KEY_LEN); - - pKeyMaterial = pTkipKeyMaterial; - KeyLen = CipherKey.TKIPInfo.TKIPKey.ElementCount + CipherKey.TKIPInfo.TKIPMIC.ElementCount; - - bValidKeyRSC = TRUE; - RT_PRINT_DATA(COMP_SEC, DBG_LOUD,("WDI_TLV_CIPHER_KEY_TKIP_KEY_INFO\n"),pKeyMaterial,KeyLen); + bValidKeyRSC = TRUE; + RT_PRINT_DATA(COMP_SEC, DBG_LOUD,("WDI_TLV_CIPHER_KEY_TKIP_KEY_INFO\n"),pKeyMaterial,KeyLen); } if(CipherKey.Optional.BIPKey_IsPresent) - { + { if( CipherKey.BIPKey.ElementCount == BIP_KEY_LEN) { PlatformMoveMemory( pSecInfo->BIPKeyBuffer ,CipherKey.BIPKey.pElements, CipherKey.BIPKey.ElementCount); @@ -2135,13 +2135,13 @@ Wdi_Set_Add_Cipher_Keys( { ndisStatus = NDIS_STATUS_INVALID_DATA; } - - return ndisStatus; - } - + + return ndisStatus; + } + if(CipherKey.Optional.WEPKey_IsPresent) - { - if(rtEncAlgo == RT_ENC_ALG_WEP) + { + if(rtEncAlgo == RT_ENC_ALG_WEP) { if (CipherKey.WEPKey.ElementCount == NATIVE_802_11_WEP40_KEY_LENGTH) { @@ -2154,13 +2154,13 @@ Wdi_Set_Add_Cipher_Keys( RT_TRACE( COMP_SEC, DBG_LOUD, ("Wdi_Set_Add_Cipher_Keys(): DOT11_CIPHER_ALGO_WEP104\n") ); } } - + KeyLen = CipherKey.WEPKey.ElementCount; pKeyMaterial = CipherKey.WEPKey.pElements; - RT_PRINT_DATA(COMP_SEC, DBG_LOUD,("WDI_TLV_CIPHER_KEY_WEP_KEY\n"),pKeyMaterial,KeyLen); - } - + RT_PRINT_DATA(COMP_SEC, DBG_LOUD,("WDI_TLV_CIPHER_KEY_WEP_KEY\n"),pKeyMaterial,KeyLen); + } + RT_TRACE(COMP_SEC, DBG_LOUD,("==>CipherType %s\n", (WDI_CIPHER_KEY_TYPE_PAIRWISE_KEY == cipherType)?"WDI_CIPHER_KEY_TYPE_PAIRWISE_KEY":( (WDI_CIPHER_KEY_TYPE_GROUP_KEY == cipherType)?"WDI_CIPHER_KEY_TYPE_GROUP_KEY":"WDI_CIPHER_KEY_TYPE_IGTK"))); if(0 == i && !ACTING_AS_AP(pAdapter)) { @@ -2169,12 +2169,12 @@ Wdi_Set_Add_Cipher_Keys( pSecInfo->PairwiseEncAlgorithm = rtEncAlgo; } else if(WDI_CIPHER_KEY_TYPE_GROUP_KEY == cipherType) - { - pSecInfo->GroupEncAlgorithm = rtEncAlgo; + { + pSecInfo->GroupEncAlgorithm = rtEncAlgo; } RT_TRACE(COMP_SEC, DBG_LOUD,("==> pSecInfo->PairwiseEncAlgorithm=0x%x\n",pSecInfo->PairwiseEncAlgorithm)); - - } + + } { if( ACTING_AS_AP(pAdapter)) { @@ -2201,7 +2201,7 @@ Wdi_Set_Add_Cipher_Keys( KeyRSC); } else - { + { for(i=0;i<4;i++){ // Save for Reconnent for Ad-hoc ,by CCW // PlatformMoveMemory( pNdisCommon->RegDefaultKeyBuf[i], pKeyMaterial, KeyLen); @@ -2222,13 +2222,13 @@ Wdi_Set_Add_Cipher_Keys( PlatformMoveMemory( pNdisCommon->RegDefaultKeyBuf[i], pKeyMaterial, KeyLen); pNdisCommon->RegDefaultKey[i].Length = (u2Byte)KeyLen; } - else if(rtEncAlgo == RT_ENC_ALG_WEP104) + else if(rtEncAlgo == RT_ENC_ALG_WEP104) { PlatformMoveMemory( pNdisCommon->RegDefaultKeyWBuf[i], pKeyMaterial, KeyLen); pNdisCommon->RegDefaultKeyW[i].Length =(u2Byte)KeyLen; } - } + } } } else @@ -2253,21 +2253,21 @@ Wdi_Set_Add_Cipher_Keys( PlatformMoveMemory( pNdisCommon->RegDefaultKeyBuf[i], pKeyMaterial, KeyLen); pNdisCommon->RegDefaultKey[i].Length = (u2Byte)KeyLen; } - else if(rtEncAlgo == RT_ENC_ALG_WEP104) + else if(rtEncAlgo == RT_ENC_ALG_WEP104) { PlatformMoveMemory( pNdisCommon->RegDefaultKeyWBuf[i], pKeyMaterial, KeyLen); pNdisCommon->RegDefaultKeyW[i].Length =(u2Byte)KeyLen; } } PlatformRequestPreAuthentication( pAdapter, PRE_AUTH_INDICATION_REASON_ASSOCIATION ); - + } else { // TODO: [WDI] security for Ad-hoc mode - + } - } + } } } @@ -2295,7 +2295,7 @@ Wdi_Set_Delete_Cipher_Keys( WDI_SET_DELETE_CIPHER_KEYS_PARAMETERS *Params = pOidHandle->tlvParser.parsedTlv.paramSetDeleteDefaultCipherKeys; WDI_SET_DELETE_CIPHER_KEYS_CONTAINER CipherKeyInfo = {0}; - PWDI_MESSAGE_HEADER pWdiHeader + PWDI_MESSAGE_HEADER pWdiHeader = (PWDI_MESSAGE_HEADER)pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.InformationBuffer; BOOLEAN bDefaultKey = TRUE; @@ -2305,7 +2305,7 @@ Wdi_Set_Delete_Cipher_Keys( ULONG cipherAlgo = 0; ULONG direction = WDI_CIPHER_KEY_DIRECTION_BOTH; u1Byte static_key = TRUE; - ULONG cipherType = WDI_CIPHER_KEY_TYPE_PAIRWISE_KEY; + ULONG cipherType = WDI_CIPHER_KEY_TYPE_PAIRWISE_KEY; u4Byte i = 0; @@ -2323,17 +2323,17 @@ Wdi_Set_Delete_Cipher_Keys( CipherKeyInfo = Params->CipherKeyInfo.pElements[i]; if(CipherKeyInfo.Optional.PeerMacAddress_IsPresent) { - RT_TRACE(COMP_SEC, DBG_LOUD, ("WDI_TLV_PEER_MAC_ADDRESS\n")); + RT_TRACE(COMP_SEC, DBG_LOUD, ("WDI_TLV_PEER_MAC_ADDRESS\n")); cpMacAddr(MacAddress, CipherKeyInfo.PeerMacAddress.Address); bDefaultKey = FALSE; } if(CipherKeyInfo.Optional.CipherKeyID_IsPresent) { - RT_TRACE(COMP_SEC, DBG_LOUD, ("WDI_TLV_CIPHER_KEY_ID\n")); + RT_TRACE(COMP_SEC, DBG_LOUD, ("WDI_TLV_CIPHER_KEY_ID\n")); KeyIndex = CipherKeyInfo.CipherKeyID.CipherKeyID; } - + { cipherAlgo = CipherKeyInfo.CipherKeyTypeInfo.CipherAlgorithm; direction = CipherKeyInfo.CipherKeyTypeInfo.Direction; @@ -2345,7 +2345,7 @@ Wdi_Set_Delete_Cipher_Keys( switch(cipherAlgo) { case WDI_CIPHER_ALGO_WEP: - rtEncAlgo = RT_ENC_ALG_WEP; + rtEncAlgo = RT_ENC_ALG_WEP; break; case WDI_CIPHER_ALGO_WEP40: @@ -2354,40 +2354,40 @@ Wdi_Set_Delete_Cipher_Keys( case WDI_CIPHER_ALGO_WEP104: rtEncAlgo = RT_ENC_ALG_WEP104; - break; - - case WDI_CIPHER_ALGO_TKIP: + break; + + case WDI_CIPHER_ALGO_TKIP: rtEncAlgo = RT_ENC_ALG_TKIP; break; - case WDI_CIPHER_ALGO_CCMP: - rtEncAlgo = RT_ENC_ALG_AESCCMP; + case WDI_CIPHER_ALGO_CCMP: + rtEncAlgo = RT_ENC_ALG_AESCCMP; break; - case WDI_CIPHER_ALGO_BIP: + case WDI_CIPHER_ALGO_BIP: break; default: break; - } - } + } + } RT_TRACE(COMP_SEC, DBG_LOUD, ("[WDI] [Property] WDI_SET_DELETE_CIPHER_KEYS: delete Key\n")); { // - // 061028, rcnjko: WDK said we shall ignore AlgorithmId if bDelete is set, - // so we use GroupEncAlgorithm instead. + // 061028, rcnjko: WDK said we shall ignore AlgorithmId if bDelete is set, + // so we use GroupEncAlgorithm instead. // if( KeyIndex > 3 && KeyIndex < 6 ) { // 802.11w BIP key Key index 5 or 6 - + PlatformZeroMemory(pSecInfo->BIPKeyBuffer, MAX_KEY_LEN); } else if( !pAdapter->MgntInfo.bRSNAPSKMode) { MgntActSet_802_11_REMOVE_KEY( - pAdapter, + pAdapter, rtEncAlgo, KeyIndex, MacAddress, @@ -2403,18 +2403,18 @@ Wdi_Set_Delete_Cipher_Keys( RT_TRACE( COMP_OID_SET, DBG_WARNING, (" <- [WDI] Property WIFI_SET_DELETE_CIPHER_KEYS, MgntActSet_RSNA_REMOVE_DEAULT_KEY return FALSE !!!\n")); return NDIS_STATUS_INVALID_DATA; } - } + } } - } + } } else if(WDI_TLV_DELETE_CIPHER_KEY_INFO== pTlvData->Type) - { + { InputBufferLength = pTlvData->Length; pTlvData = (PTLV_WDI_STRUCT)((pu1Byte)pTlvData->Value); Prefix += 4; - + while(BytesProcessed < InputBufferLength) { // Parse Type @@ -2425,7 +2425,7 @@ Wdi_Set_Delete_Cipher_Keys( RT_TRACE(COMP_SEC, DBG_LOUD, ("unknown TLV 0x%x\n", pTlvData->Type)); } break; - + case WDI_TLV_PEER_MAC_ADDRESS: { RT_TRACE(COMP_SEC, DBG_LOUD, ("WDI_TLV_PEER_MAC_ADDRESS\n")); @@ -2462,26 +2462,26 @@ Wdi_Set_Delete_Cipher_Keys( // Parse Content BytesProcessed += (4 + pTlvData->Length); - + pTlvData = (PTLV_WDI_STRUCT)((pu1Byte)pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.InformationBuffer + Prefix + BytesProcessed); } RT_TRACE(COMP_SEC, DBG_LOUD, ("[WDI] [Property] WDI_SET_DELETE_CIPHER_KEYS: delete Key\n")); // - // 061028, rcnjko: WDK said we shall ignore AlgorithmId if bDelete is set, - // so we use GroupEncAlgorithm instead. + // 061028, rcnjko: WDK said we shall ignore AlgorithmId if bDelete is set, + // so we use GroupEncAlgorithm instead. // rtEncAlgo = pSecInfo->GroupEncAlgorithm; if( KeyIndex > 3 && KeyIndex < 6 ) { // 802.11w BIP key Key index 5 or 6 - + PlatformZeroMemory(pSecInfo->BIPKeyBuffer, MAX_KEY_LEN); } else if( !pAdapter->MgntInfo.bRSNAPSKMode) { MgntActSet_802_11_REMOVE_KEY( - pAdapter, + pAdapter, rtEncAlgo, KeyIndex, MacAddress, @@ -2523,7 +2523,7 @@ Wdi_Set_Default_Key_ID( // Set default key id: 0 ~ 3. KeyId &= 0x3; - // The following code will cause 8187 failed to link to AP. + // The following code will cause 8187 failed to link to AP. pSecInfo->DefaultTransmitKeyIdx = (u1Byte)KeyId; pNdisCommon->RegDefaultKeyId = (u1Byte)KeyId; @@ -2542,9 +2542,9 @@ Wdi_Set_Receive_Packet_Filter( NDIS_STATUS ndisStatus = NDIS_STATUS_SUCCESS; ULONG BytesRead = 0, BytesNeeded = 0; - PWDI_MESSAGE_HEADER pWdiHeader + PWDI_MESSAGE_HEADER pWdiHeader = (PWDI_MESSAGE_HEADER)pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.InformationBuffer; - ULONG InputBufferLength + ULONG InputBufferLength = pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.InputBufferLength;; WDI_SET_RECEIVE_PACKET_FILTER_PARAMETERS *Params = pOidHandle->tlvParser.parsedTlv.paramSetReceivePacketFilter; @@ -2562,7 +2562,7 @@ Wdi_Set_Receive_Packet_Filter( pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.InputBufferLength, &BytesRead, &BytesNeeded); - + return ndisStatus; } @@ -2581,7 +2581,7 @@ Wdi_Set_Network_List_Offload( NDIS_STATUS ndisStatus = NDIS_STATUS_SUCCESS; PADAPTER pDefaultAdapter = GetDefaultAdapter(pAdapter); PRT_NDIS6_COMMON pNdisCommon = pDefaultAdapter->pNdisCommon; - PRT_NLO_INFO pNLOInfo = &(pDefaultAdapter->MgntInfo.NLOInfo); + PRT_NLO_INFO pNLOInfo = &(pDefaultAdapter->MgntInfo.NLOInfo); u4Byte ChannelIndex = 0; u4Byte Index = 0; u4Byte ItemCnt = 0; @@ -2601,7 +2601,7 @@ Wdi_Set_Network_List_Offload( pNLOInfo->FastScanPeriod = 0; pNLOInfo->SlowScanPeriod = 0; pNdisCommon->ScanPeriod = 0; - + RT_TRACE( COMP_POWER, DBG_LOUD , (" ===>SsidOffload_IsPresent == 0 \n") ); return NDIS_STATUS_SUCCESS; } @@ -2633,12 +2633,12 @@ Wdi_Set_Network_List_Offload( for( i=0 ; i<pOffloadItem->UnicastAlgorithms.ElementCount ; ++i, ++Index) { - // Copy SSID - CopySsid( pNLOInfo->dDot11OffloadNetworkList[Index].ssidbuf, + // Copy SSID + CopySsid( pNLOInfo->dDot11OffloadNetworkList[Index].ssidbuf, pNLOInfo->dDot11OffloadNetworkList[Index].ssidlen, pOffloadItem->SsidToScan.pElements, pOffloadItem->SsidToScan.ElementCount); - + RT_TRACE(COMP_POWER, DBG_LOUD, ("The %u OFFLOAD NETWORK SSID: %s\n", Index+1, pNLOInfo->dDot11OffloadNetworkList[Index].ssidbuf)); pAlgorithmItem = &(pOffloadItem->UnicastAlgorithms.pElements[i]); @@ -2658,15 +2658,15 @@ Wdi_Set_Network_List_Offload( pNLOInfo->dDot11OffloadNetworkList[Index].bPrivacy = TRUE; pNLOInfo->dDot11OffloadNetworkList[Index].chiper = 0x0; break; - case WDI_CIPHER_ALGO_TKIP : - if( pAlgorithmItem->AuthAlgorithm == WDI_AUTH_ALGO_WPA || + case WDI_CIPHER_ALGO_TKIP : + if( pAlgorithmItem->AuthAlgorithm == WDI_AUTH_ALGO_WPA || pAlgorithmItem->AuthAlgorithm == WDI_AUTH_ALGO_WPA_PSK ) { pNLOInfo->dDot11OffloadNetworkList[Index].SecLvl = RT_SEC_LVL_WPA; pNLOInfo->dDot11OffloadNetworkList[Index].bPrivacy = TRUE; pNLOInfo->dDot11OffloadNetworkList[Index].chiper = WPA_TKIP; } - else if( pAlgorithmItem->AuthAlgorithm == WDI_AUTH_ALGO_RSNA || + else if( pAlgorithmItem->AuthAlgorithm == WDI_AUTH_ALGO_RSNA || pAlgorithmItem->AuthAlgorithm == WDI_AUTH_ALGO_RSNA_PSK ) { pNLOInfo->dDot11OffloadNetworkList[Index].SecLvl = RT_SEC_LVL_WPA2; @@ -2682,14 +2682,14 @@ Wdi_Set_Network_List_Offload( } break; case WDI_CIPHER_ALGO_CCMP : - if( pAlgorithmItem->AuthAlgorithm == WDI_AUTH_ALGO_WPA || + if( pAlgorithmItem->AuthAlgorithm == WDI_AUTH_ALGO_WPA || pAlgorithmItem->AuthAlgorithm == WDI_AUTH_ALGO_WPA_PSK ) { pNLOInfo->dDot11OffloadNetworkList[Index].SecLvl = RT_SEC_LVL_WPA; pNLOInfo->dDot11OffloadNetworkList[Index].bPrivacy = TRUE; pNLOInfo->dDot11OffloadNetworkList[Index].chiper = WPA_AES; } - else if( pAlgorithmItem->AuthAlgorithm == WDI_AUTH_ALGO_RSNA || + else if( pAlgorithmItem->AuthAlgorithm == WDI_AUTH_ALGO_RSNA || pAlgorithmItem->AuthAlgorithm == WDI_AUTH_ALGO_RSNA_PSK ) { pNLOInfo->dDot11OffloadNetworkList[Index].SecLvl = RT_SEC_LVL_WPA2; @@ -2711,29 +2711,29 @@ Wdi_Set_Network_List_Offload( RT_TRACE( COMP_POWER, DBG_LOUD , (" ===> Unknow UnicastCipher : %x\n", pAlgorithmItem->CipherAlgorithm) ); break; } - + RT_TRACE(COMP_POWER , DBG_LOUD , (" Seclvl : %d\n", pNLOInfo->dDot11OffloadNetworkList[Index].SecLvl) ); RT_TRACE(COMP_POWER , DBG_LOUD , (" bPrivacy : %d\n", pNLOInfo->dDot11OffloadNetworkList[Index].bPrivacy) ); RT_TRACE(COMP_POWER , DBG_LOUD , (" chiper : %d\n", pNLOInfo->dDot11OffloadNetworkList[Index].chiper) ); RT_TRACE( COMP_POWER, DBG_LOUD, (" Channel Hint:\n")); - - // Save channel info + + // Save channel info // DOT11_MAX_CHANNEL_HINTS 4 for( ChannelIndex = 0 ; ChannelIndex < pOffloadItem->ChannellHintList.ElementCount ; ChannelIndex++ ) { pNLOInfo->dDot11OffloadNetworkList[Index].channelNumberHit[ChannelIndex] = pChannelItem[ChannelIndex].ChannelNumber; RT_TRACE( COMP_POWER, DBG_LOUD, (" %u", pNLOInfo->dDot11OffloadNetworkList[Index].channelNumberHit[ChannelIndex])); } - + RT_TRACE( COMP_POWER, DBG_LOUD, ("\n")); - - // Show Entry information !! + + // Show Entry information !! RT_TRACE( COMP_POWER, DBG_LOUD , (" ===> Show NLO info Index (%x):\n", Index) ); RT_PRINT_STR(COMP_POWER, DBG_LOUD, (" SSID"), pNLOInfo->dDot11OffloadNetworkList[Index].ssidbuf, pNLOInfo->dDot11OffloadNetworkList[Index].ssidlen); RT_TRACE( COMP_POWER , DBG_LOUD , (" chiper : %x \n", pNLOInfo->dDot11OffloadNetworkList[Index].chiper) ); } - } + } } else { @@ -2757,9 +2757,9 @@ Wdi_Set_Privacy_Exemption_List( ULONG BytesRead = 0, BytesNeeded = 0; PRT_NDIS6_COMMON pNdisCommon = pAdapter->pNdisCommon; PNDIS_OID_REQUEST pNdisRequest = pOidHandle->pNdisRequest; - PWDI_MESSAGE_HEADER pWdiHeader + PWDI_MESSAGE_HEADER pWdiHeader = (PWDI_MESSAGE_HEADER)pNdisRequest->DATA.METHOD_INFORMATION.InformationBuffer; - ULONG InputBufferLength + ULONG InputBufferLength = pNdisRequest->DATA.METHOD_INFORMATION.InputBufferLength; WDI_SET_PRIVACY_EXEMPTION_LIST_PARAMETERS *Params = pOidHandle->tlvParser.parsedTlv.paramSetPrivacyExemptionList; WDI_PRIVACY_EXEMPTION_LIST_CONTAINER PrivacyList = {0}; @@ -2780,34 +2780,34 @@ Wdi_Set_Privacy_Exemption_List( for(i = 0; i < Params->PrivacyExemptionEntry.ElementCount; i++) { PrivacyList = Params->PrivacyExemptionEntry.pElements[i]; - pNdisCommon->PrivacyExemptionEntries[i].usEtherType = + pNdisCommon->PrivacyExemptionEntries[i].usEtherType = PrivacyList.EtherType; - pNdisCommon->PrivacyExemptionEntries[i].usExemptionActionType = - PrivacyList.ExemptionActionType; - pNdisCommon->PrivacyExemptionEntries[i].usExemptionPacketType = - PrivacyList.ExemptionPacketType; + pNdisCommon->PrivacyExemptionEntries[i].usExemptionActionType = + PrivacyList.ExemptionActionType; + pNdisCommon->PrivacyExemptionEntries[i].usExemptionPacketType = + PrivacyList.ExemptionPacketType; } - RT_PRINT_DATA(COMP_OID_SET, DBG_LOUD, - "Privacy exempt list:", - pNdisCommon->PrivacyExemptionEntries, - (int)(pNdisCommon->PrivacyExemptionEntrieNum * sizeof(DOT11_PRIVACY_EXEMPTION))); + RT_PRINT_DATA(COMP_OID_SET, DBG_LOUD, + "Privacy exempt list:", + pNdisCommon->PrivacyExemptionEntries, + (int)(pNdisCommon->PrivacyExemptionEntrieNum * sizeof(DOT11_PRIVACY_EXEMPTION))); } - + return ndisStatus; } NDIS_STATUS -Wdi_Set_Power_State( +Wdi_Set_Power_State( IN PADAPTER pAdapter, IN PRT_OID_HANDLER pOidHandle ) { NDIS_STATUS ndisStatus = NDIS_STATUS_SUCCESS; - + ndisStatus = N6SdioWdi_Mgnt_SetPower(pAdapter, pOidHandle); return ndisStatus; @@ -2815,15 +2815,15 @@ Wdi_Set_Power_State( NDIS_STATUS -Wdi_Abort_Task( +Wdi_Abort_Task( IN PADAPTER pAdapter, IN PRT_OID_HANDLER pOidHandle ) { NDIS_STATUS ndisStatus = NDIS_STATUS_SUCCESS; - PWDI_MESSAGE_HEADER pWdiHeader + PWDI_MESSAGE_HEADER pWdiHeader = (PWDI_MESSAGE_HEADER) pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.InformationBuffer; - ULONG InputBufferLength + ULONG InputBufferLength = pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.InputBufferLength; WDI_TASK_ABORT_PARAMETERS *Params = pOidHandle->tlvParser.parsedTlv.paramAbort; @@ -2875,7 +2875,7 @@ Wdi_Set_Add_Wol_Pattern( u1Byte Index, ptnIndex; RT_TRACE(COMP_OID_SET, DBG_LOUD, ("==> Wdi_Set_Add_Wol_Pattern()\n")); - + pWdiHeader->Status = NDIS_STATUS_SUCCESS; pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.BytesWritten = sizeof(WDI_MESSAGE_HEADER); @@ -2895,20 +2895,20 @@ Wdi_Set_Add_Wol_Pattern( for(Index = 0; Index < Params->WakePacketPattern.ElementCount; Index++, pPatternElements++) { RT_TRACE(COMP_OID_SET, DBG_LOUD, ("SET OID_PM_ADD_WOL_PATTERN[%d]:\n", Index)); - + if(pPatternElements->PacketPattern.ElementCount <= MAX_WOL_PATTERN_SIZE) { PlatformMoveMemory(WoLBitMapPatternContent, pPatternElements->PacketPattern.pElements, pPatternElements->PacketPattern.ElementCount); - RT_PRINT_DATA( COMP_OID_SET | COMP_POWER, DBG_LOUD, ("WoLBitMapPatternContent...\n"), + RT_PRINT_DATA( COMP_OID_SET | COMP_POWER, DBG_LOUD, ("WoLBitMapPatternContent...\n"), WoLBitMapPatternContent, sizeof(WoLBitMapPatternContent)); } if(pPatternElements->PacketPatternMask.ElementCount <= MAX_WOL_BIT_MASK_SIZE) { - PlatformMoveMemory(WoLBitMapPatternMask, pPatternElements->PacketPatternMask.pElements, pPatternElements->PacketPatternMask.ElementCount); - RT_PRINT_DATA( COMP_OID_SET | COMP_POWER, DBG_LOUD, ("WoLBitMapPatternMask...\n"), + PlatformMoveMemory(WoLBitMapPatternMask, pPatternElements->PacketPatternMask.pElements, pPatternElements->PacketPatternMask.ElementCount); + RT_PRINT_DATA( COMP_OID_SET | COMP_POWER, DBG_LOUD, ("WoLBitMapPatternMask...\n"), WoLBitMapPatternMask, sizeof(WoLBitMapPatternMask)); } - + //Find the index of the first empty entry. for(Index = 0; Index < MAX_SUPPORT_WOL_PATTERN_NUM(pAdapter); Index++) { @@ -2921,12 +2921,12 @@ Wdi_Set_Add_Wol_Pattern( if(pPmWoLPatternInfo[Index].PatternId == 0) break; } - + if(Index >= MAX_SUPPORT_WOL_PATTERN_NUM(pAdapter)) { ndisStatus = NDIS_STATUS_RESOURCES; RT_TRACE(COMP_POWER, DBG_LOUD, - ("SET OID_PNP_ADD_WOL_PATTERN: Return status(%#X). The number of wake up pattern is more than %d or the pattern Id is exist.\n", + ("SET OID_PNP_ADD_WOL_PATTERN: Return status(%#X). The number of wake up pattern is more than %d or the pattern Id is exist.\n", ndisStatus, MAX_SUPPORT_WOL_PATTERN_NUM(pAdapter))); return ndisStatus; } @@ -2946,9 +2946,9 @@ Wdi_Set_Add_Wol_Pattern( //Skip IPv4/IPv6 TCP SYN pattern because it will hit HW bug for the CRC. // We offload this pattern to FW. pPmWoLPatternInfo[Index].PatternType = eUnicastPattern; - RT_TRACE(COMP_OID_SET, DBG_LOUD, + RT_TRACE(COMP_OID_SET, DBG_LOUD, ("OID_PM_ADD_WOL_PATTERN: IPv4/IPv6 TCP SYN pattern.\n")); - + } else if(PlatformCompareMemory(WoLBitMapPatternContent, MULTICAST_ADDR, sizeof(MULTICAST_ADDR)) == 0) { //Multicast @@ -2962,12 +2962,12 @@ Wdi_Set_Add_Wol_Pattern( { pPmWoLPatternInfo[Index].PatternType = eDontCareDA; } - + { - GetWOLWakeUpPattern(pAdapter, - (pu1Byte)&WoLBitMapPatternMask, - pPatternElements->PacketPatternMask.ElementCount, - (pu1Byte)&WoLBitMapPatternContent, + GetWOLWakeUpPattern(pAdapter, + (pu1Byte)&WoLBitMapPatternMask, + pPatternElements->PacketPatternMask.ElementCount, + (pu1Byte)&WoLBitMapPatternContent, pPatternElements->PacketPattern.ElementCount, Index, FALSE @@ -2976,7 +2976,7 @@ Wdi_Set_Add_Wol_Pattern( pPSC->WoLPatternNum++; } } - + } //2 Wake Packet Magic Packet @@ -3019,7 +3019,7 @@ Wdi_Set_Add_Wol_Pattern( if(Params->WakePacketEapolRequestIdPatternId) { RT_TRACE(COMP_OID_SET, DBG_LOUD, ("SET OID_PM_ADD_WOL_PATTERN: Support EapolRequestIdMessage.\n")); - + if(!pPSC->EapolRequestIdMessagePatternId) { pPSC->EapolRequestIdMessagePatternId = Params->WakePacketEapolRequestIdPatternId; @@ -3047,7 +3047,7 @@ Wdi_Set_Remove_Wol_Pattern( PMGNT_INFO pMgntInfo = &(pAdapter->MgntInfo); PRT_POWER_SAVE_CONTROL pPSC = GET_POWER_SAVE_CONTROL(pMgntInfo); PRT_PM_WOL_PATTERN_INFO pPmWoLPatternInfo = &(pPSC->PmWoLPatternInfo[0]); - + u4Byte RemovePatternId = Params->PatternId; RT_TRACE(COMP_OID_SET, DBG_LOUD, ("==> Wdi_Set_Remove_Wol_Pattern()\n")); @@ -3059,41 +3059,41 @@ Wdi_Set_Remove_Wol_Pattern( if(RemovePatternId == pPSC->MagicPacketPatternId) { RT_TRACE(COMP_OID_SET, DBG_LOUD, ("SET_OID_PM_REMOVE_WOL_PATTERN: Remove MagicPacket.\n")); - + pPSC->MagicPacketPatternId = 0; pPSC->WoLPktNoPtnNum--; } else if(RemovePatternId == pPSC->EapolRequestIdMessagePatternId) { RT_TRACE(COMP_OID_SET, DBG_LOUD, ("SET_OID_PM_REMOVE_WOL_PATTERN: Remove EapolRequestIdMessage.\n")); - + pPSC->EapolRequestIdMessagePatternId = 0; pPSC->WoLPktNoPtnNum--; } else if(RemovePatternId == pPSC->IPv4TcpSynPatternId) { RT_TRACE(COMP_OID_SET, DBG_LOUD, ("SET_OID_PM_REMOVE_WOL_PATTERN: Remove IPv4TcpSyn.\n")); - + pPSC->IPv4TcpSynPatternId = 0; pPSC->WoLPktNoPtnNum--; } else if(RemovePatternId == pPSC->IPv6TcpSynPatternId) { RT_TRACE(COMP_OID_SET, DBG_LOUD, ("SET_OID_PM_REMOVE_WOL_PATTERN: Remove IPv6TcpSyn.\n")); - + pPSC->IPv6TcpSynPatternId = 0; pPSC->WoLPktNoPtnNum--; } else { u1Byte Index; - + for(Index = 0; Index < MAX_SUPPORT_WOL_PATTERN_NUM(pAdapter); Index++) { if(pPmWoLPatternInfo[Index].PatternId == RemovePatternId) break; } - + if(Index >= MAX_SUPPORT_WOL_PATTERN_NUM(pAdapter)) { RT_TRACE(COMP_OID_SET, DBG_LOUD,("SET OID_PM_REMOVE_WOL_PATTERN: Cannot find the wake up pattern Id(%08X).\n", RemovePatternId)); @@ -3106,9 +3106,9 @@ Wdi_Set_Remove_Wol_Pattern( pPmWoLPatternInfo[Index].CrcRemainder = 0xffff; pPmWoLPatternInfo[Index].IsPatternMatch = 0; pPmWoLPatternInfo[Index].IsSupportedByFW = 0; - - pAdapter->HalFunc.SetHwRegHandler(pAdapter, HW_VAR_WF_MASK, (pu1Byte)(&Index)); - pAdapter->HalFunc.SetHwRegHandler(pAdapter, HW_VAR_WF_CRC, (pu1Byte)(&Index)); + + pAdapter->HalFunc.SetHwRegHandler(pAdapter, HW_VAR_WF_MASK, (pu1Byte)(&Index)); + pAdapter->HalFunc.SetHwRegHandler(pAdapter, HW_VAR_WF_CRC, (pu1Byte)(&Index)); pPmWoLPatternInfo[Index].HwWFMIndex = 0xff; // reset the value after clear HW/CAM entry. pPSC->WoLPatternNum--; @@ -3139,7 +3139,7 @@ Wdi_Set_Multicast_List( NDIS_STATUS ndisStatus = NDIS_STATUS_SUCCESS; ULONG BytesRead = 0, BytesNeeded = 0; PWDI_MESSAGE_HEADER pWdiHeader = (PWDI_MESSAGE_HEADER)pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.InformationBuffer; - ULONG InputBufferLength = pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.InputBufferLength; + ULONG InputBufferLength = pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.InputBufferLength; WDI_SET_MULTICAST_LIST_PARAMETERS *param = pOidHandle->tlvParser.parsedTlv.paramSetMulticastList; WDI_MAC_ADDRESS Address = {0}; DOT11_MAC_ADDRESS MulticastList[MAX_MCAST_LIST_NUM]; @@ -3155,7 +3155,7 @@ Wdi_Set_Multicast_List( Address = param->MulticastList.pElements[i]; CopyMem(MulticastList[i], Address.Address, sizeof(DOT11_MAC_ADDRESS)); RT_PRINT_ADDR(COMP_OID_SET, DBG_TRACE, ("Wdi_Set_Multicast_List MulticastList\n"), MulticastList[i]); - RT_PRINT_ADDR(COMP_OID_SET, DBG_TRACE, ("Wdi_Set_Multicast_List Address.Address\n"), Address.Address); + RT_PRINT_ADDR(COMP_OID_SET, DBG_TRACE, ("Wdi_Set_Multicast_List Address.Address\n"), Address.Address); } ndisStatus = N6CSet_DOT11_MULTICAST_LIST(pAdapter, @@ -3168,7 +3168,7 @@ Wdi_Set_Multicast_List( { // Shall we need to clear multicast list since parameter was empty? } - + return ndisStatus; } @@ -3183,9 +3183,9 @@ Wdi_Set_Add_Pm_Protocol_Offload( PRT_POWER_SAVE_CONTROL pPSC = GET_POWER_SAVE_CONTROL(pMgntInfo); PWDI_MESSAGE_HEADER pWdiHeader = (PWDI_MESSAGE_HEADER) pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.InformationBuffer; WDI_SET_ADD_PM_PROTOCOL_OFFLOAD_PARAMETERS_PARAMETERS *Params = pOidHandle->tlvParser.parsedTlv.paramSetAddProtocolOffload; - + RT_TRACE(COMP_OID_SET, DBG_LOUD, ("==> Wdi_Set_Add_Pm_Protocol_Offload()\n")); - + pWdiHeader->Status = NDIS_STATUS_SUCCESS; pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.BytesWritten = sizeof(WDI_MESSAGE_HEADER); @@ -3193,21 +3193,21 @@ Wdi_Set_Add_Pm_Protocol_Offload( //2 DOT11 RSN REKey Offload if(Params->DOT11RSNREKeyOffload.ProtocolOffloadId) { - RT_TRACE(COMP_OID_SET, DBG_LOUD, ("ProtocolOffloadId = %d\n", + RT_TRACE(COMP_OID_SET, DBG_LOUD, ("ProtocolOffloadId = %d\n", Params->DOT11RSNREKeyOffload.ProtocolOffloadId)); - - pMgntInfo->PowerSaveControl.PMProtocolOffloadIDs[eGTKOffloadIdx] + + pMgntInfo->PowerSaveControl.PMProtocolOffloadIDs[eGTKOffloadIdx] = Params->DOT11RSNREKeyOffload.ProtocolOffloadId; - + //Copy kck, kek - PlatformMoveMemory(&(pMgntInfo->PMDot11RSNRekeyPara.KCK), - Params->DOT11RSNREKeyOffload.KCK_CONTENT, 32); + PlatformMoveMemory(&(pMgntInfo->PMDot11RSNRekeyPara.KCK), + Params->DOT11RSNREKeyOffload.KCK_CONTENT, 32); - RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("KCK_CONTENT:\n"), + RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("KCK_CONTENT:\n"), pMgntInfo->PMDot11RSNRekeyPara.KCK, 16); - RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("KEK_CONTENT:\n"), + RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("KEK_CONTENT:\n"), pMgntInfo->PMDot11RSNRekeyPara.KEK, 16); - + pMgntInfo->PMDot11RSNRekeyPara.KeyReplayCounter = Params->DOT11RSNREKeyOffload.ReplayCounter; if(pPSC->RegGTKOffloadEnable) @@ -3218,18 +3218,18 @@ Wdi_Set_Add_Pm_Protocol_Offload( //2 ipv4 ARP Offload if(Params->ipv4ARPOffload.ProtocolOffloadId) { - pMgntInfo->PowerSaveControl.PMProtocolOffloadIDs[eARPOffloadIdx] + pMgntInfo->PowerSaveControl.PMProtocolOffloadIDs[eARPOffloadIdx] = Params->ipv4ARPOffload.ProtocolOffloadId; //Copy RemoteIPv4Address, HostIPv4Address & MacAddress - PlatformMoveMemory(&(pMgntInfo->PMIPV4ARPPara.RemoteIPv4Address), - Params->ipv4ARPOffload.RemoteIPV4Address, 14); - - RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("RemoteIPv4Address:\n"), + PlatformMoveMemory(&(pMgntInfo->PMIPV4ARPPara.RemoteIPv4Address), + Params->ipv4ARPOffload.RemoteIPV4Address, 14); + + RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("RemoteIPv4Address:\n"), pMgntInfo->PMIPV4ARPPara.RemoteIPv4Address, 4); - RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("HostIPv4Address:\n"), + RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("HostIPv4Address:\n"), pMgntInfo->PMIPV4ARPPara.HostIPv4Address, 4); - RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("MacAddress:\n"), + RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("MacAddress:\n"), pMgntInfo->PMIPV4ARPPara.MacAddress, 6); if(pPSC->RegARPOffloadEnable) @@ -3241,7 +3241,7 @@ Wdi_Set_Add_Pm_Protocol_Offload( if(Params->ipv6ARPOffload.ProtocolOffloadId) { RT_TRACE(COMP_OID_SET, DBG_LOUD, ("SET OID_PM_ADD_PROTOCOL_OFFLOAD. (NS IPv6)\n")); - + if((pMgntInfo->PowerSaveControl.PMProtocolOffloadIDs[eNSOffloadIdx1] != 0) && (pMgntInfo->PowerSaveControl.PMProtocolOffloadIDs[eNSOffloadIdx2] != 0)) { @@ -3252,43 +3252,43 @@ Wdi_Set_Add_Pm_Protocol_Offload( { u1Byte IPv6NSIndex = 0; RT_PM_IPV6_NS_PARAMETERS *NsParams; - + if( pMgntInfo->PowerSaveControl.PMProtocolOffloadIDs[eNSOffloadIdx1] == 0) { - pMgntInfo->PowerSaveControl.PMProtocolOffloadIDs[eNSOffloadIdx1] + pMgntInfo->PowerSaveControl.PMProtocolOffloadIDs[eNSOffloadIdx1] = Params->ipv6ARPOffload.ProtocolOffloadId; IPv6NSIndex = 0; RT_TRACE( COMP_OID_SET, DBG_LOUD, ("==> eNSOffloadIdx1: \n")); } else { - pMgntInfo->PowerSaveControl.PMProtocolOffloadIDs[eNSOffloadIdx2] + pMgntInfo->PowerSaveControl.PMProtocolOffloadIDs[eNSOffloadIdx2] = Params->ipv6ARPOffload.ProtocolOffloadId; IPv6NSIndex = 1; RT_TRACE( COMP_OID_SET, DBG_LOUD, ("==> eNSOffloadIdx2: \n")); } NsParams = &(pMgntInfo->PMIPV6NSPara[IPv6NSIndex]); - - PlatformMoveMemory(NsParams->RemoteIPv6Address, + + PlatformMoveMemory(NsParams->RemoteIPv6Address, Params->ipv6ARPOffload.RemoteIPV6Address, 16); - PlatformMoveMemory(NsParams->SolicitedNodeIPv6Address, + PlatformMoveMemory(NsParams->SolicitedNodeIPv6Address, Params->ipv6ARPOffload.SolicitdNodeIPv6Address, 16); - PlatformMoveMemory(NsParams->MacAddress, + PlatformMoveMemory(NsParams->MacAddress, Params->ipv6ARPOffload.MacAddress.Address, 6); - PlatformMoveMemory(NsParams->TargetIPv6Addresses[0], + PlatformMoveMemory(NsParams->TargetIPv6Addresses[0], Params->ipv6ARPOffload.TargetIPV6Address1, 16); - PlatformMoveMemory(NsParams->TargetIPv6Addresses[1], + PlatformMoveMemory(NsParams->TargetIPv6Addresses[1], Params->ipv6ARPOffload.TargetIPV6Address2, 16); - RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("SET PM RemoteIPv6Address: \n"), + RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("SET PM RemoteIPv6Address: \n"), NsParams->RemoteIPv6Address, 16); - RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("SET PM SolicitedNodeIPv6Address: \n"), + RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("SET PM SolicitedNodeIPv6Address: \n"), NsParams->SolicitedNodeIPv6Address, 16); - RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("SET PM MacAddress: \n"), + RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("SET PM MacAddress: \n"), NsParams->MacAddress, 6); - RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("SET PM TargetIPv6Addresses[0]: \n"), + RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("SET PM TargetIPv6Addresses[0]: \n"), NsParams->TargetIPv6Addresses[0], 16); - RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("SET PM TargetIPv6Addresses[1]: \n"), + RT_PRINT_DATA( COMP_OID_SET, DBG_LOUD, ("SET PM TargetIPv6Addresses[1]: \n"), NsParams->TargetIPv6Addresses[1], 16); if(pPSC->RegNSOffloadEnable) @@ -3297,7 +3297,7 @@ Wdi_Set_Add_Pm_Protocol_Offload( } RT_TRACE(COMP_OID_SET, DBG_LOUD, ("<== Wdi_Set_Add_Pm_Protocol_Offload()\n")); - + return ndisStatus; } @@ -3313,9 +3313,9 @@ Wdi_Set_Remove_Pm_Protocol_Offload( WDI_SET_REMOVE_PM_PROTOCOL_OFFLOAD_PARAMETERS *Params = pOidHandle->tlvParser.parsedTlv.paramSetRemoveProtocolOffload; u4Byte MatchId, ProtocolOffloadId = Params->RemovePMOffload; - + RT_TRACE(COMP_OID_SET, DBG_LOUD, ("==> Wdi_Set_Remove_Pm_Protocol_Offload()\n")); - + pWdiHeader->Status = NDIS_STATUS_SUCCESS; pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.BytesWritten = sizeof(WDI_MESSAGE_HEADER); @@ -3324,19 +3324,19 @@ Wdi_Set_Remove_Pm_Protocol_Offload( if(ProtocolOffloadId == pMgntInfo->PowerSaveControl.PMProtocolOffloadIDs[MatchId]) { RT_TRACE(COMP_POWER, DBG_LOUD, ("Find match protocol offload ID idx (%d)\n", MatchId)); - + if(MatchId == eGTKOffloadIdx) { - PlatformZeroMemory(&(pMgntInfo->PMDot11RSNRekeyPara), sizeof(RT_PM_DOT11_RSN_REKEY_PARAMETERS)); + PlatformZeroMemory(&(pMgntInfo->PMDot11RSNRekeyPara), sizeof(RT_PM_DOT11_RSN_REKEY_PARAMETERS)); RT_TRACE( COMP_OID_SET, DBG_LOUD, ("==>REMOVE eGTKOffloadIdx\n")); } else if(MatchId == eARPOffloadIdx) { - PlatformZeroMemory(&(pMgntInfo->PMIPV4ARPPara), sizeof(RT_PM_IPV4_ARP_PARAMETERS)); + PlatformZeroMemory(&(pMgntInfo->PMIPV4ARPPara), sizeof(RT_PM_IPV4_ARP_PARAMETERS)); RT_TRACE( COMP_OID_SET, DBG_LOUD, ("==>REMOVE eARPOffloadIdx\n")); } else if(MatchId == eNSOffloadIdx1 ) - { + { // Disable eNSOffloadIdx1 , set ID = 0 !! pMgntInfo->PowerSaveControl.PMProtocolOffloadIDs[eNSOffloadIdx1] = 0; RT_TRACE( COMP_OID_SET, DBG_LOUD, ("==>REMOVE eNSOffloadIdx1\n")); @@ -3351,7 +3351,7 @@ Wdi_Set_Remove_Pm_Protocol_Offload( } RT_TRACE(COMP_OID_SET, DBG_LOUD, ("<== Wdi_Set_Remove_Pm_Protocol_Offload()\n")); - + return ndisStatus; } @@ -3365,10 +3365,10 @@ Wdi_Set_Connection_Quality( ULONG BytesRead = 0, BytesNeeded = 0; PMGNT_INFO pMgntInfo=&(pAdapter->MgntInfo); PRT_POWER_SAVE_CONTROL pPSC = GET_POWER_SAVE_CONTROL(pMgntInfo); - PWDI_MESSAGE_HEADER pWdiHeader + PWDI_MESSAGE_HEADER pWdiHeader = (PWDI_MESSAGE_HEADER)pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.InformationBuffer; - ULONG InputBufferLength - = pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.InputBufferLength; + ULONG InputBufferLength + = pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.InputBufferLength; WDI_SET_CONNECTION_QUALITY_PARAMETERS *param = pOidHandle->tlvParser.parsedTlv.paramSetConnectionQuality; pWdiHeader->Status = NDIS_STATUS_SUCCESS; @@ -3385,18 +3385,18 @@ Wdi_Set_Connection_Quality( pPSC->ConnectionQuality = param->Quality; RT_TRACE(COMP_OID_SET, DBG_LOUD, ("Wdi_Set_Connection_Quality ConnectionQuality 0x%x\n", pPSC->ConnectionQuality)); - + if(param->Optional.LowLatencyParameters_IsPresent) { pPSC->MaximumOffChannelOperationTime = param->LowLatencyParameters.MaximumOffChannelOperationTime; - pPSC->RoamingNeededLinkQualityThreshold = param->LowLatencyParameters.RoamingNeededLinkQualityThreshold; + pPSC->RoamingNeededLinkQualityThreshold = param->LowLatencyParameters.RoamingNeededLinkQualityThreshold; RT_TRACE(COMP_OID_SET, DBG_LOUD, ("Wdi_Set_Connection_Quality MaximumOffChannelOperationTime 0x%x\n", pPSC->MaximumOffChannelOperationTime)); - RT_TRACE(COMP_OID_SET, DBG_LOUD, ("Wdi_Set_Connection_Quality RoamingNeededLinkQualityThreshold 0x%x\n", pPSC->RoamingNeededLinkQualityThreshold)); + RT_TRACE(COMP_OID_SET, DBG_LOUD, ("Wdi_Set_Connection_Quality RoamingNeededLinkQualityThreshold 0x%x\n", pPSC->RoamingNeededLinkQualityThreshold)); } } - - + + return ndisStatus; } @@ -3413,23 +3413,23 @@ Wdi_Get_Auto_Power_Save( WDI_GET_AUTO_POWER_SAVE_RESULTS adapterPowerSave = {0}; PUCHAR pOutput = NULL; ULONG length = 0; - - PWDI_MESSAGE_HEADER pOidHeader + + PWDI_MESSAGE_HEADER pOidHeader = (PWDI_MESSAGE_HEADER)pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.InformationBuffer; - adapterPowerSave.AutoPowerSaveParameters.EnableAutoPSM = + adapterPowerSave.AutoPowerSaveParameters.EnableAutoPSM = pMgntInfo->bInAutoPowerSavemode; - adapterPowerSave.AutoPowerSaveParameters.BeaconInterval = + adapterPowerSave.AutoPowerSaveParameters.BeaconInterval = pMgntInfo->dot11BeaconPeriod; - adapterPowerSave.AutoPowerSaveParameters.ListenInterval = + adapterPowerSave.AutoPowerSaveParameters.ListenInterval = (UINT8)pMgntInfo->ListenInterval; if(pMgntInfo->ListenIntervalInDX) { - adapterPowerSave.AutoPowerSaveParameters.ListenIntervalInDx = - (UINT8)pMgntInfo->ListenIntervalInDX; + adapterPowerSave.AutoPowerSaveParameters.ListenIntervalInDx = + (UINT8)pMgntInfo->ListenIntervalInDX; } else { @@ -3446,13 +3446,13 @@ Wdi_Get_Auto_Power_Save( else { adapterPowerSave.AutoPowerSaveParameters.PowerMode = WDI_POWER_SAVE_LEVEL_NO_POWER_SAVE; - adapterPowerSave.AutoPowerSaveParameters.PowerModeinDx = WDI_POWER_SAVE_LEVEL_NO_POWER_SAVE; + adapterPowerSave.AutoPowerSaveParameters.PowerModeinDx = WDI_POWER_SAVE_LEVEL_NO_POWER_SAVE; } //2 Todo adapterPowerSave.AutoPowerSaveParameters.Reason = 0; - - adapterPowerSave.AutoPowerSaveParameters.MillisecondsSinceStart = + + adapterPowerSave.AutoPowerSaveParameters.MillisecondsSinceStart = (PlatformGetCurrentTime() - pDefAdapter->DriverUpTime) / 1000; if (pPSC->bLeisurePs && pMgntInfo->dot11PowerSaveMode != eActive) @@ -3461,21 +3461,21 @@ Wdi_Get_Auto_Power_Save( (PlatformGetCurrentTime() - pPSC->LastLPSEnterTime) / 1000; } else if (pPSC->LastLPSEnterTime) - { + { adapterPowerSave.AutoPowerSaveParameters.MillisecondsInPowerSave = (pPSC->LastLPSLeaveTime - pPSC->LastLPSEnterTime) / 1000; - } + } else { adapterPowerSave.AutoPowerSaveParameters.MillisecondsInPowerSave = 0; } //2 Todo - adapterPowerSave.AutoPowerSaveParameters.ReceivedMulticastPackets = - adapterPowerSave.AutoPowerSaveParameters.SentMulticastPackets = - adapterPowerSave.AutoPowerSaveParameters.ReceivedUnicastPackets = + adapterPowerSave.AutoPowerSaveParameters.ReceivedMulticastPackets = + adapterPowerSave.AutoPowerSaveParameters.SentMulticastPackets = + adapterPowerSave.AutoPowerSaveParameters.ReceivedUnicastPackets = adapterPowerSave.AutoPowerSaveParameters.SentUnicastPacket = 0; - + ndisStatus = GenerateWdiGetAutoPowerSave( //pAdapterCapabilities, &adapterPowerSave, @@ -3495,7 +3495,7 @@ Wdi_Get_Auto_Power_Save( return ndisStatus; } - if (pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.OutputBufferLength >= + if (pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.OutputBufferLength >= (length + sizeof(WDI_MESSAGE_HEADER))) { PlatformMoveMemory( @@ -3508,9 +3508,9 @@ Wdi_Get_Auto_Power_Save( { ndisStatus = NDIS_STATUS_BUFFER_TOO_SHORT; pOidHandle->pNdisRequest->DATA.METHOD_INFORMATION.BytesNeeded += (length + sizeof(WDI_MESSAGE_HEADER)); - RT_TRACE(COMP_INIT, DBG_WARNING, ("[Error] GenerateWdiGetAdapterCapabilities() failed with status(%x)\n", ndisStatus)); + RT_TRACE(COMP_INIT, DBG_WARNING, ("[Error] GenerateWdiGetAdapterCapabilities() failed with status(%x)\n", ndisStatus)); } - + if(pOutput) { FreeGenerated(pOutput); @@ -3518,7 +3518,7 @@ Wdi_Get_Auto_Power_Save( } pOidHeader->Status = ndisStatus; - + return ndisStatus; } @@ -3532,10 +3532,10 @@ Wdi_IHV_Request( PTLV_WDI_STRUCT pTlvData = NULL; ULONG BytesWritten = 0, BytesRead = 0, BytesNeeded = 0; PNDIS_OID_REQUEST pNdisRequest = pOidHandle->pNdisRequest; - PWDI_MESSAGE_HEADER pWdiHeader + PWDI_MESSAGE_HEADER pWdiHeader = (PWDI_MESSAGE_HEADER)pNdisRequest->DATA.METHOD_INFORMATION.InformationBuffer; //20150915-KenSun -//Temp Workaround for setting a private OID +//Temp Workaround for setting a private OID #if 1 PCCX_NIC_SPECIFIC_EXTENSION ccxData; PIHV_CCX_TLV pTlv = NULL; @@ -3589,9 +3589,9 @@ Wdi_IHV_Request( //Because WDI would always pass 2046 in pNdisRequest->DATA.METHOD_INFORMATION.OutputBufferLength //which is not the same value that passed in RTK Appilcations. (All RTK appilcation pass 0 outputbufferlength when issuing a SET OID request) //Therefore, we cannot use it as refence. -//For interfacing with WDI, we have to make sure BytesWriiten is sizeof(WDI_MESSAGE_HEADER) when dealing with a SET method request. +//For interfacing with WDI, we have to make sure BytesWriiten is sizeof(WDI_MESSAGE_HEADER) when dealing with a SET method request. // -#if 1 +#if 1 ccxData = (PCCX_NIC_SPECIFIC_EXTENSION)pTlvData->Value; if(ccxData->event == CCX_EVENT_OID) { @@ -3631,7 +3631,7 @@ Wdi_Get_Statistics( WDI_MAC_STATISTICS_CONTAINER MacStatistics[2]; WDI_PHY_STATISTICS_CONTAINER PhyStatistics[WDI_802_11_MAX_NUM_PHY_TYPES]; PNDIS_OID_REQUEST pNdisRequest = pOidHandle->pNdisRequest; - PWDI_MESSAGE_HEADER pOidHeader + PWDI_MESSAGE_HEADER pOidHeader = (PWDI_MESSAGE_HEADER)pNdisRequest->DATA.METHOD_INFORMATION.InformationBuffer; FunctionIn(COMP_OID_QUERY); @@ -3652,7 +3652,7 @@ Wdi_Get_Statistics( MacStatistics[0].CCMPFormatErrors = pAdapter->RxStats.NumRxCCMPDecryptErrorsUnicast; MacStatistics[0].CCMPReplays = pAdapter->RxStats.NumRxCCMPReplayUnicast; MacStatistics[0].CCMPDecryptErrors = pAdapter->RxStats.NumRxCCMPDecryptErrorsUnicast; - MacStatistics[0].WEPUndecryptableCount = pAdapter->RxStats.NumRxWEPUndecryptableUnicast; + MacStatistics[0].WEPUndecryptableCount = pAdapter->RxStats.NumRxWEPUndecryptableUnicast; MacStatistics[0].WEPICVErrorCount = pAdapter->RxStats.NumRxWEPICVErrorUnicast; MacStatistics[0].DecryptSuccessCount = pAdapter->RxStats.NumRxDecryptSuccessUnicast; MacStatistics[0].DecryptFailureCount = pAdapter->RxStats.NumRxDecryptFailureUnicast; @@ -3668,11 +3668,11 @@ Wdi_Get_Statistics( MacStatistics[1].CCMPFormatErrors = pAdapter->RxStats.NumRxCCMPDecryptErrorsMulticast + pAdapter->RxStats.NumRxCCMPDecryptErrorsBroadcast; MacStatistics[1].CCMPReplays = pAdapter->RxStats.NumRxCCMPReplayMulticast; MacStatistics[1].CCMPDecryptErrors = pAdapter->RxStats.NumRxCCMPDecryptErrorsMulticast + pAdapter->RxStats.NumRxCCMPDecryptErrorsBroadcast; - MacStatistics[1].WEPUndecryptableCount = pAdapter->RxStats.NumRxWEPUndecryptableMulticast + pAdapter->RxStats.NumRxWEPUndecryptableBroadcast; + MacStatistics[1].WEPUndecryptableCount = pAdapter->RxStats.NumRxWEPUndecryptableMulticast + pAdapter->RxStats.NumRxWEPUndecryptableBroadcast; MacStatistics[1].WEPICVErrorCount = pAdapter->RxStats.NumRxWEPICVErrorMulticast + pAdapter->RxStats.NumRxWEPICVErrorBroadcast; MacStatistics[1].DecryptSuccessCount = pAdapter->RxStats.NumRxDecryptSuccessMulticast + pAdapter->RxStats.NumRxDecryptSuccessBroadcast; MacStatistics[1].DecryptFailureCount = pAdapter->RxStats.NumRxDecryptFailureMulticast + pAdapter->RxStats.NumRxDecryptFailureBroadcast; - + Params.PeerMACStatistics.ElementCount = 2; Params.PeerMACStatistics.pElements = MacStatistics; @@ -3704,24 +3704,24 @@ Wdi_Get_Statistics( PhyStatistics[0].PhyType = WDI_PHY_TYPE_VHT; break; - + } PhyStatistics[0].TransmittedFrameCount = pAdapter->TxStats.NumTxOkTotal; PhyStatistics[0].GroupTransmittedFrameCount = pAdapter->TxStats.NumTxMulticast + pAdapter->TxStats.NumTxBroadcast; - PhyStatistics[0].FailedCount = pAdapter->TxStats.NumTxErrTotal; - PhyStatistics[0].RetryCount = pAdapter->TxStats.NumTxRetryCount; + PhyStatistics[0].FailedCount = pAdapter->TxStats.NumTxErrTotal; + PhyStatistics[0].RetryCount = pAdapter->TxStats.NumTxRetryCount; PhyStatistics[0].MultipleRetryCount = 0; // TODO PhyStatistics[0].MaxTXLifetimeExceededCount = 0; // TODO - PhyStatistics[0].TransmittedFragmentCount = pAdapter->TxStats.NumTxOkTotal; + PhyStatistics[0].TransmittedFragmentCount = pAdapter->TxStats.NumTxOkTotal; PhyStatistics[0].RTSSuccessCount = 0; // TODO PhyStatistics[0].RTSFailureCount = 0; // TODO PhyStatistics[0].ACKFailureCount = 0; // TODO PhyStatistics[0].ReceivedFrameCount = pAdapter->RxStats.NumRxFramgment; - PhyStatistics[0].GroupReceivedFrameCount = pAdapter->RxStats.NumRxFramgment; + PhyStatistics[0].GroupReceivedFrameCount = pAdapter->RxStats.NumRxFramgment; PhyStatistics[0].PromiscuousReceivedFrameCount = 0; // TODO PhyStatistics[0].MaxRXLifetimeExceededCount = 0; // TODO PhyStatistics[0].FrameDuplicateCount = 0; // TODO - PhyStatistics[0].ReceivedFragmentCount = pAdapter->RxStats.NumRxFramgment; + PhyStatistics[0].ReceivedFragmentCount = pAdapter->RxStats.NumRxFramgment; PhyStatistics[0].PromiscuousReceivedFragmentCount = 0; // TODO PhyStatistics[0].FCSErrorCount = pAdapter->RxStats.NumRxErrTotalUnicast + pAdapter->RxStats.NumRxErrTotalMulticast; Params.PhyStatistics.ElementCount = 1; @@ -3730,7 +3730,7 @@ Wdi_Get_Statistics( else { u1Byte count = 0; - + PlatformZeroMemory(&MacStatistics[0], sizeof(WDI_MAC_STATISTICS_CONTAINER)*2); cpMacAddr(MacStatistics[0].MACAddress.Address, BroadcastAddress); Params.PeerMACStatistics.ElementCount = 1; @@ -3761,7 +3761,7 @@ Wdi_Get_Statistics( return ndisStatus; } - if (pNdisRequest->DATA.METHOD_INFORMATION.OutputBufferLength >= + if (pNdisRequest->DATA.METHOD_INFORMATION.OutputBufferLength >= (length + sizeof(WDI_MESSAGE_HEADER))) { PlatformMoveMemory( @@ -3774,9 +3774,9 @@ Wdi_Get_Statistics( { ndisStatus = NDIS_STATUS_BUFFER_TOO_SHORT; pNdisRequest->DATA.METHOD_INFORMATION.BytesNeeded += (length + sizeof(WDI_MESSAGE_HEADER)); - RT_TRACE(COMP_INIT, DBG_WARNING, ("[Error] GenerateWdiGetStatistics() failed with status(%x)\n", ndisStatus)); + RT_TRACE(COMP_INIT, DBG_WARNING, ("[Error] GenerateWdiGetStatistics() failed with status(%x)\n", ndisStatus)); } - + if(pOutput) { FreeGenerated(pOutput); @@ -3784,9 +3784,9 @@ Wdi_Get_Statistics( } pOidHeader->Status = ndisStatus; - + FunctionOut(COMP_OID_QUERY); - + return ndisStatus; } @@ -3798,7 +3798,7 @@ WDI_OID_TASK_OPEN( ) { NDIS_STATUS ndisStatus = NDIS_STATUS_SUCCESS; - + RT_TRACE(COMP_OID_SET, DBG_LOUD, ("Not Support WDI_OID_TASK_OPEN\n")); return ndisStatus; @@ -3813,7 +3813,7 @@ WDI_OID_TASK_CLOSE( { NDIS_STATUS ndisStatus = NDIS_STATUS_SUCCESS; - + RT_TRACE(COMP_OID_SET, DBG_LOUD, ("Not Support WDI_OID_TASK_CLOSE\n")); return ndisStatus; @@ -3837,7 +3837,7 @@ WDI_OID_TASK_P2P_DISCOVER( { NDIS_STATUS status = NDIS_STATUS_SUCCESS; WDI_TASK_P2P_DISCOVER_PARAMETERS *param = pOidHandle->tlvParser.parsedTlv.paramP2pDiscover; - + FunctionIn(COMP_OID_SET); do @@ -3846,7 +3846,7 @@ WDI_OID_TASK_P2P_DISCOVER( P2P_INFO *info = GET_P2P_INFO(pAdapter); FRAME_BUF *buf = NULL; - + // additional ie if(param->Optional.VendorIEs_IsPresent) { @@ -3856,20 +3856,20 @@ WDI_OID_TASK_P2P_DISCOVER( ); } - RT_TRACE_F(COMP_P2P, DBG_LOUD, ("DiscoveryType = %d, ScanType = %d\n", + RT_TRACE_F(COMP_P2P, DBG_LOUD, ("DiscoveryType = %d, ScanType = %d\n", param->DiscoverMode.DiscoveryType, param->DiscoverMode.ScanType)); // construct req if(NULL != (req = CustomScan_AllocReq(GET_CUSTOM_SCAN_INFO(pAdapter), NULL, NULL))) { static u1Byte bcst[6] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}; - + buf = CustomScan_GetProbeReqBuf(req); if(param->SSIDList.ElementCount) { WDI_SSID *ssid = ¶m->SSIDList.pElements[0]; - + RT_PRINT_STR(COMP_OID_SET, DBG_LOUD, "to probe with ssid", ssid->pElements, ssid->ElementCount); P2P_Construct_ProbeReqEx(buf, info, bcst, (u1Byte)ssid->ElementCount, (u1Byte *)ssid->pElements); } @@ -3892,10 +3892,10 @@ WDI_OID_TASK_P2P_DISCOVER( if(WDI_P2P_SCAN_TYPE_PASSIVE == param->DiscoverMode.ScanType) CustomScan_ForcePassiveScan(req); - + CustomScan_SetTimeBound(req, param->DwellTime.MaximumScanTime); CustomScan_SetupCbCtx(req, wdi_P2PDiscoveryCb, pAdapter); - + CustomScan_IssueReq(GET_CUSTOM_SCAN_INFO(pAdapter), req, CUSTOM_SCAN_SRC_TYPE_P2P, "wdi-p2p-discovery"); } }while(FALSE); @@ -3936,7 +3936,7 @@ WDI_OID_TASK_DOT11_RESET( WDI_TASK_DOT11_RESET_PARAMETERS *param = pOidHandle->tlvParser.parsedTlv.paramDot11Reset; NDIS_OID_REQUEST *req = NULL; - + FunctionIn(COMP_OID_SET); do @@ -3959,7 +3959,7 @@ WDI_OID_TASK_DOT11_RESET( N63CResetNetworkListOffload(pAdapter); - // MAC Address Randomization + // MAC Address Randomization if(param->Optional.ResetMACAddress_IsPresent && pAdapter->MgntInfo.RegSupportMACRandom) { cpMacAddr( pAdapter->CurrentAddress, param->ResetMACAddress.Address); @@ -3968,7 +3968,7 @@ WDI_OID_TASK_DOT11_RESET( } // cleanup - if(req && NDIS_STATUS_SUCCESS != status) + if(req && NDIS_STATUS_SUCCESS != status) Wdi_Xlat_FreeOid(req); FunctionOut(COMP_OID_SET); @@ -3996,7 +3996,7 @@ WDI_OID_TASK_P2P_SEND_REQUEST_ACTION_FRAME( NDIS_STATUS status = NDIS_STATUS_SUCCESS; WDI_TASK_P2P_SEND_REQUEST_ACTION_FRAME_PARAMETERS *param = pOidHandle->tlvParser.parsedTlv.paramP2pSendRequestActionFrame; VOID *req = NULL; - + FunctionIn(COMP_OID_SET); do @@ -4026,7 +4026,7 @@ WDI_OID_TASK_P2P_SEND_REQUEST_ACTION_FRAME( break; } }while(FALSE); - + FunctionOut(COMP_OID_SET); return status; @@ -4042,12 +4042,12 @@ WDI_OID_TASK_P2P_SEND_RESPONSE_ACTION_FRAME( NDIS_STATUS status = NDIS_STATUS_SUCCESS; WDI_TASK_P2P_SEND_RESPONSE_ACTION_FRAME_PARAMETERS *param = pOidHandle->tlvParser.parsedTlv.paramP2pSendResponseActionFrame; VOID *req = NULL; - + FunctionIn(COMP_OID_SET); do { - // termincate any ongoing scan for sending rsp + // termincate any ongoing scan for sending rsp WDI_SendAction_TerminateReq(pAdapter); if(WDI_P2P_ACTION_FRAME_GO_NEGOTIATION_RESPONSE == param->ResponseParams.ResponseFrameType) @@ -4079,7 +4079,7 @@ WDI_OID_TASK_P2P_SEND_RESPONSE_ACTION_FRAME( break; } }while(FALSE); - + FunctionOut(COMP_OID_SET); return status; @@ -4103,7 +4103,7 @@ WDI_OID_TASK_CREATE_PORT( { NDIS_STATUS status = NDIS_STATUS_SUCCESS; PORT_HELPER *pPortHelper = pAdapter->pPortCommonInfo->pPortHelper; - + status = Wdi_Task_CreatePort(pAdapter, pOidHandle); if(NDIS_STATUS_PENDING == status) @@ -4113,7 +4113,7 @@ WDI_OID_TASK_CREATE_PORT( PlatformReleaseSpinLock(pAdapter, RT_PENDED_OID_SPINLOCK); status = NDIS_STATUS_SUCCESS; } - + return status; } @@ -4128,7 +4128,7 @@ WDI_OID_TASK_DELETE_PORT( PORT_HELPER *pPortHelper = pAdapter->pPortCommonInfo->pPortHelper; status = Wdi_Task_DeletePort(pAdapter, pOidHandle); - + if(NDIS_STATUS_PENDING == status) {// WDI always return success regardless of our status here, so we need to record pended req here PlatformAcquireSpinLock(pAdapter, RT_PENDED_OID_SPINLOCK); @@ -4151,7 +4151,7 @@ WDI_OID_TASK_START_AP( WDI_TASK_START_AP_PARAMETERS *param = pOidHandle->tlvParser.parsedTlv.paramStartAp; NDIS_OID_REQUEST *req = NULL; - + FunctionIn(COMP_OID_SET); do @@ -4171,7 +4171,7 @@ WDI_OID_TASK_START_AP( Wdi_Xlat_FreeOid(req); req = NULL; - + // Start AP if(NULL == (req = Wdi_Xlat_AllocStartApReqOid(pOidHandle, param))) { @@ -4187,13 +4187,13 @@ WDI_OID_TASK_START_AP( RT_TRACE_F(COMP_OID_SET, DBG_WARNING, ("N63C_OID_DOT11_WFD_START_GO_REQUEST returns: 0x%08X\n", status)); break; } - + }while(FALSE); // M4 indication is not required since bWaitComplete in RT_SUPPORT_TASKs is FALSE // cleanup - if(req) + if(req) Wdi_Xlat_FreeOid(req); FunctionOut(COMP_OID_SET); @@ -4209,17 +4209,17 @@ WDI_OID_TASK_STOP_AP( ) { NDIS_STATUS status = NDIS_STATUS_SUCCESS; - + FunctionIn(COMP_OID_SET); if(RT_AP_TYPE_VWIFI_AP == MgntActQuery_ApType(pAdapter)) { status = N6CSet_DOT11_DISCONNECT_REQUEST(pAdapter, NULL, 0, 0, 0); - + if(NDIS_STATUS_SUCCESS != status) { RT_TRACE_F(COMP_OID_SET, DBG_WARNING, ("N6CSet_DOT11_DISCONNECT_REQUEST returns: 0x%08X\n", status)); - } + } } else { @@ -4242,14 +4242,14 @@ WDI_OID_TASK_SEND_AP_ASSOCIATION_RESPONSE( WDI_TASK_SEND_AP_ASSOCIATION_RESPONSE_PARAMETERS *param = pOidHandle->tlvParser.parsedTlv.paramSendApAssociationResponse; NDIS_OID_REQUEST *req = NULL; - + FunctionIn(COMP_OID_SET); do { MGNT_INFO *pMgntInfo = NULL; RT_WLAN_STA *pEntry = NULL; - + pMgntInfo = &pAdapter->MgntInfo; if(NULL == (req = Wdi_Xlat_AllocIncomingAssociationDecisionOid(pOidHandle, param))) @@ -4263,7 +4263,7 @@ WDI_OID_TASK_SEND_AP_ASSOCIATION_RESPONSE( status = NDIS_STATUS_INVALID_STATE; break; } - + if(NDIS_STATUS_SUCCESS != (status = N62C_OID_DOT11_INCOMING_ASSOCIATION_DECISION(pAdapter, req))) { RT_TRACE_F(COMP_MLME, DBG_WARNING, ("N62C_OID_DOT11_INCOMING_ASSOCIATION_DECISION returns: 0x%08X\n", status)); @@ -4273,21 +4273,21 @@ WDI_OID_TASK_SEND_AP_ASSOCIATION_RESPONSE( pOidHandle->pvCtx = req; AP_SendAsocRsp( - pAdapter, - pEntry, - TRUE == param->IncomingRequestInfo.AssocRequestParams.IsReassociationRequest, - FALSE, + pAdapter, + pEntry, + TRUE == param->IncomingRequestInfo.AssocRequestParams.IsReassociationRequest, + FALSE, param->AssocResponseParameters.ReasonCode ); // If succeeded, WDI_CMD_SendApAssociationResponseComplete is called from DrvIFIndicateIncommingAssociationComplete - + }while(FALSE); // cleanup if(NDIS_STATUS_SUCCESS != status) { - if(req) + if(req) Wdi_Xlat_FreeOid(req); } @@ -4299,7 +4299,7 @@ WDI_OID_TASK_SEND_AP_ASSOCIATION_RESPONSE( NDIS_STATUS -WDI_OID_TASK_CHANGE_OPERATION_MODE( +WDI_OID_TASK_CHANGE_OPERATION_MODE( IN PADAPTER pAdapter, IN PRT_OID_HANDLER pOidHandle ) @@ -4308,7 +4308,7 @@ WDI_OID_TASK_CHANGE_OPERATION_MODE( WDI_TASK_CHANGE_OPERATION_MODE_PARAMETERS *param = pOidHandle->tlvParser.parsedTlv.paramChangeOperationMode; NDIS_OID_REQUEST *req = NULL; - + FunctionIn(COMP_OID_SET); do @@ -4318,7 +4318,7 @@ WDI_OID_TASK_CHANGE_OPERATION_MODE( status = NDIS_STATUS_RESOURCES; break; } - + if(NDIS_STATUS_SUCCESS != (status = N6C_OID_DOT11_CURRENT_OPERATION_MODE(pAdapter, req))) { RT_TRACE_F(COMP_OID_SET, DBG_WARNING, ("N6C_OID_DOT11_CURRENT_OPERATION_MODE returns: 0x%08X\n", status)); @@ -4327,11 +4327,11 @@ WDI_OID_TASK_CHANGE_OPERATION_MODE( // Indicate completed successfully WDI_CMD_ChangeOpModeComplete(pAdapter, req, status); - + }while(FALSE); // cleanup - if(req && NDIS_STATUS_SUCCESS != status) + if(req && NDIS_STATUS_SUCCESS != status) Wdi_Xlat_FreeOid(req); FunctionOut(COMP_OID_SET); @@ -4348,9 +4348,9 @@ WDI_OID_TASK_SEND_REQUEST_ACTION_FRAME( NDIS_STATUS status = NDIS_STATUS_SUCCESS; WDI_TASK_SEND_REQUEST_ACTION_FRAME_PARAMETERS *param = pOidHandle->tlvParser.parsedTlv.paramSendRequestActionFrame; VOID *req = NULL; - + FunctionIn(COMP_OID_SET); - + do { req = WDI_SendAction_Req(pAdapter, param, wdi_SendReqActionFrameStateCb); @@ -4361,7 +4361,7 @@ WDI_OID_TASK_SEND_REQUEST_ACTION_FRAME( status = NDIS_STATUS_FAILURE; } }while(FALSE); - + FunctionOut(COMP_OID_SET); return status; @@ -4376,7 +4376,7 @@ WDI_OID_TASK_SEND_RESPONSE_ACTION_FRAME( NDIS_STATUS status = NDIS_STATUS_SUCCESS; WDI_TASK_SEND_RESPONSE_ACTION_FRAME_PARAMETERS *param = pOidHandle->tlvParser.parsedTlv.paramSendResponseActionFrame; VOID *req = NULL; - + FunctionIn(COMP_OID_SET); do @@ -4389,7 +4389,7 @@ WDI_OID_TASK_SEND_RESPONSE_ACTION_FRAME( status = NDIS_STATUS_FAILURE; } }while(FALSE); - + FunctionOut(COMP_OID_SET); return status; @@ -4404,7 +4404,7 @@ WDI_OID_SET_P2P_LISTEN_STATE( NDIS_STATUS status = NDIS_STATUS_SUCCESS; WDI_SET_P2P_LISTEN_STATE_PARAMETERS *param = pOidHandle->tlvParser.parsedTlv.paramSetP2pListenState; NDIS_OID_REQUEST *req = NULL; - + FunctionIn(COMP_OID_SET); if( param == NULL ) @@ -4453,7 +4453,7 @@ WDI_OID_SET_P2P_LISTEN_STATE( // TODO: }while(FALSE); - if(req) + if(req) Wdi_Xlat_FreeOid(req); FunctionOut(COMP_OID_SET); @@ -4518,7 +4518,7 @@ WDI_OID_GET_AUTO_POWER_SAVE( ) { NDIS_STATUS ndisStatus = NDIS_STATUS_SUCCESS; - + return Wdi_Get_Auto_Power_Save(pAdapter, pOidHandle); } @@ -4539,7 +4539,7 @@ WDI_OID_GET_ADAPTER_CAPABILITIES( ) { NDIS_STATUS ndisStatus = NDIS_STATUS_SUCCESS; - + ndisStatus = N6SdioWdi_AdapterCapabilities( pAdapter, pOidHandle @@ -4688,7 +4688,7 @@ WDI_OID_SET_ADVERTISEMENT_INFORMATION( NDIS_STATUS status = NDIS_STATUS_SUCCESS; WDI_SET_ADVERTISEMENT_INFORMATION_PARAMETERS *param = pOidHandle->tlvParser.parsedTlv.paramSetAdvertisementInformation; NDIS_OID_REQUEST *req = NULL; - + if( param == NULL ) return NDIS_STATUS_FAILURE; @@ -4706,8 +4706,8 @@ WDI_OID_SET_ADVERTISEMENT_INFORMATION( if(param->AdditionalIEs.AdditionalBeaconIEs.ElementCount) { P2P_AddIe_Set( - &info->AdditionalIEs, P2P_ADD_IE_BEACON, - param->AdditionalIEs.AdditionalBeaconIEs.ElementCount, + &info->AdditionalIEs, P2P_ADD_IE_BEACON, + param->AdditionalIEs.AdditionalBeaconIEs.ElementCount, param->AdditionalIEs.AdditionalBeaconIEs.pElements); RT_PRINT_DATA(COMP_P2P, DBG_LOUD, "WDI_OID_SET_ADVERTISEMENT_INFORMATION(): AdditionalBeaconIEs\n", param->AdditionalIEs.AdditionalBeaconIEs.pElements, param->AdditionalIEs.AdditionalBeaconIEs.ElementCount); @@ -4716,8 +4716,8 @@ WDI_OID_SET_ADVERTISEMENT_INFORMATION( if(param->AdditionalIEs.AdditionalProbeResponseIEs.ElementCount) { P2P_AddIe_Set( - &info->AdditionalIEs, P2P_ADD_IE_PROBE_RESPONSE, - param->AdditionalIEs.AdditionalProbeResponseIEs.ElementCount, + &info->AdditionalIEs, P2P_ADD_IE_PROBE_RESPONSE, + param->AdditionalIEs.AdditionalProbeResponseIEs.ElementCount, param->AdditionalIEs.AdditionalProbeResponseIEs.pElements); RT_PRINT_DATA(COMP_P2P, DBG_LOUD, "WDI_OID_SET_ADVERTISEMENT_INFORMATION(): AdditionalProbeResponseIEs\n", param->AdditionalIEs.AdditionalProbeResponseIEs.pElements, param->AdditionalIEs.AdditionalProbeResponseIEs.ElementCount); @@ -4728,14 +4728,14 @@ WDI_OID_SET_ADVERTISEMENT_INFORMATION( if(param->AdditionalIEs.AdditionalProbeRequestDefaultIEs.ElementCount) { P2P_AddIe_Set( - &info->AdditionalIEs, P2P_ADD_IE_DEFAULT_REQUEST, - param->AdditionalIEs.AdditionalProbeRequestDefaultIEs.ElementCount, + &info->AdditionalIEs, P2P_ADD_IE_DEFAULT_REQUEST, + param->AdditionalIEs.AdditionalProbeRequestDefaultIEs.ElementCount, param->AdditionalIEs.AdditionalProbeRequestDefaultIEs.pElements); RT_PRINT_DATA(COMP_P2P, DBG_LOUD, "WDI_OID_SET_ADVERTISEMENT_INFORMATION(): AdditionalProbeRequestDefaultIEs\n", param->AdditionalIEs.AdditionalProbeRequestDefaultIEs.pElements, param->AdditionalIEs.AdditionalProbeRequestDefaultIEs.ElementCount); } } - + // device info if(param->Optional.DeviceInformation_IsPresent) { @@ -4753,7 +4753,7 @@ WDI_OID_SET_ADVERTISEMENT_INFORMATION( Wdi_Xlat_FreeOid(req); req = NULL; } - + // dev cap if(param->Optional.DeviceCapability_IsPresent) { @@ -4807,12 +4807,12 @@ WDI_OID_SET_ADVERTISEMENT_INFORMATION( Wdi_Xlat_FreeOid(req); req = NULL; } - + // TODO: adv svc }while(FALSE); - if(req) + if(req) Wdi_Xlat_FreeOid(req); FunctionOut(COMP_OID_SET); @@ -4845,7 +4845,7 @@ WDI_OID_GET_NEXT_ACTION_FRAME_DIALOG_TOKEN( ULONG tlvlen = 0; UINT8 *tlv = NULL; - + FunctionIn(COMP_OID_SET); do @@ -4887,7 +4887,7 @@ WDI_OID_GET_NEXT_ACTION_FRAME_DIALOG_TOKEN( } GenerateWdiGetNextActionFrameDialogToken( - ¶m, 0, + ¶m, 0, &pAdapter->pPortCommonInfo->WdiData.TlvContext, &tlvlen, &tlv); @@ -4903,11 +4903,11 @@ WDI_OID_GET_NEXT_ACTION_FRAME_DIALOG_TOKEN( tlv, tlvlen); pNdisRequest->DATA.METHOD_INFORMATION.BytesWritten += tlvlen; - + }while(FALSE); // cleanup; - if(req) + if(req) Wdi_Xlat_FreeOid(req); if(tlv) @@ -4929,7 +4929,7 @@ WDI_OID_SET_P2P_WPS_ENABLED( NDIS_STATUS status = NDIS_STATUS_SUCCESS; WDI_SET_P2P_WPS_ENABLED_PARAMETERS *param = pOidHandle->tlvParser.parsedTlv.paramSetP2pWpsEnabled; NDIS_OID_REQUEST *req = NULL; - + if( param == NULL ) return NDIS_STATUS_FAILURE; @@ -4945,10 +4945,10 @@ WDI_OID_SET_P2P_WPS_ENABLED( RT_TRACE_F(COMP_OID_SET, DBG_WARNING, ("N62C_OID_DOT11_WPS_ENABLED returns: 0x%08X\n", status)); break; } - + }while(FALSE); - if(req) + if(req) Wdi_Xlat_FreeOid(req); FunctionOut(COMP_OID_SET); @@ -4985,7 +4985,7 @@ WDI_OID_SET_FAST_BSS_TRANSITION_PARAMETERS( NDIS_STATUS ndisStatus = NDIS_STATUS_SUCCESS; WDI_SET_FAST_BSS_TRANSITION_PARAMETERS_COMMAND *param = pOidHandle->tlvParser.parsedTlv.paramSetFastBssTransitionParametersCommand; u1Byte targetAddr[6] = {0}; - + if( param == NULL ) return NDIS_STATUS_FAILURE; @@ -5008,7 +5008,7 @@ WDI_OID_SET_FAST_BSS_TRANSITION_PARAMETERS( RT_PRINT_DATA(COMP_MLME, DBG_LOUD, "RSNIE:\n", param->RSNIE.pElements, param->RSNIE.ElementCount); } - + if(param->Optional.MDE_IsPresent) { FtUpdateEntryInfo(pAdapter, FT_ENTRY_ACTION_UPDATE_MDE, targetAddr, @@ -5048,8 +5048,8 @@ WDI_OID_SET_FAST_BSS_TRANSITION_PARAMETERS( // // Description: // Prepare indication data for WDI create port. -// Also add data path (via AddDataPathPeer()) as -// it was copied from the original code in +// Also add data path (via AddDataPathPeer()) as +// it was copied from the original code in // WdiSimpleTask(). // // Note: @@ -5066,12 +5066,12 @@ WDI_CMD_CreatePortComplete( { RT_OID_HANDLER *hTask = &pAdapter->pPortCommonInfo->WdiData.TaskHandle; DOT11_MAC_INFO *macInfo = NULL; - + UINT8 *tlv = NULL; ULONG len = 0; WDI_INDICATION_CREATE_PORT_COMPLETE_PARAMETERS param = {0}; - + macInfo = (DOT11_MAC_INFO *)req->DATA.METHOD_INFORMATION.InformationBuffer; FunctionIn(COMP_OID_SET); @@ -5108,7 +5108,7 @@ WDI_CMD_CreatePortComplete( PlatformAcquireSpinLock(pAdapter, RT_PENDED_OID_SPINLOCK); pAdapter->pNdisCommon->PendedRequest = NULL; PlatformReleaseSpinLock(pAdapter, RT_PENDED_OID_SPINLOCK); - + FunctionOut(COMP_OID_SET); return TRUE; @@ -5122,7 +5122,7 @@ WDI_CMD_DeletePortComplete( ) { RT_OID_HANDLER *hTask = &pAdapter->pPortCommonInfo->WdiData.TaskHandle; - + UINT8 *tlv = NULL; ULONG len = 0; @@ -5149,7 +5149,7 @@ WDI_CMD_DeletePortComplete( // Free pended oid PlatformAcquireSpinLock(pAdapter, RT_PENDED_OID_SPINLOCK); pAdapter->pNdisCommon->PendedRequest = NULL; - PlatformReleaseSpinLock(pAdapter, RT_PENDED_OID_SPINLOCK); + PlatformReleaseSpinLock(pAdapter, RT_PENDED_OID_SPINLOCK); FunctionOut(COMP_OID_SET); @@ -5164,7 +5164,7 @@ WDI_CMD_ResetComplete( ) { RT_OID_HANDLER *hTask = &pAdapter->pPortCommonInfo->WdiData.TaskHandle; - + UINT8 *tlv = NULL; ULONG len = 0; @@ -5177,7 +5177,7 @@ WDI_CMD_ResetComplete( // generate TLV //GenerateWdiIndicationDot11ResetComplete(¶m, 0, &pAdapter->pPortCommonInfo->WdiData.TlvContext, &len, &tlv); - + // copy tlv wdi_task_WriteResult(hTask, tlv, len, status); @@ -5201,7 +5201,7 @@ WDI_CMD_ChangeOpModeComplete( ) { RT_OID_HANDLER *hTask = &pAdapter->pPortCommonInfo->WdiData.TaskHandle; - + UINT8 *tlv = NULL; ULONG len = 0; @@ -5237,7 +5237,7 @@ WDI_CMD_P2PDiscoverComplete( ) { RT_OID_HANDLER *hTask = &pAdapter->pPortCommonInfo->WdiData.TaskHandle; - + UINT8 *tlv = NULL; ULONG len = 0; @@ -5255,7 +5255,7 @@ WDI_CMD_P2PDiscoverComplete( // generate TLV //GenerateWdiIndicationDot11ResetComplete(¶m, 0, &pAdapter->pPortCommonInfo->WdiData.TlvContext, &len, &tlv); - + // copy tlv wdi_task_WriteResult(hTask, tlv, len, status); @@ -5278,10 +5278,10 @@ WDI_CMD_P2pSendRequestActionFrameComplete( { RT_OID_HANDLER *hTask = &pAdapter->pPortCommonInfo->WdiData.TaskHandle; OFF_CHNL_TX_STATUS_FLAG txStatusFlag; - + u4Byte ieOffset = FRAME_OFFSET_P2P_PUB_ACT_ELEMENTS; NDIS_STATUS status = NDIS_STATUS_SUCCESS; - + UINT8 *tlv = NULL; ULONG len = 0; @@ -5300,7 +5300,7 @@ WDI_CMD_P2pSendRequestActionFrameComplete( FRAME_BUF *buf = OffChnlTx_GetTxFrameBuf(ctx->req); RT_ASSERT(buf, ("%s(): buf is NULL!!!n", __FUNCTION__)); - + cpMacAddr(param.SendActionFrameResult.FrameParameters.PeerDeviceAddress.Address, (FrameBuf_Head(buf) + FRAME_OFFSET_ADDRESS1)); param.SendActionFrameResult.FrameParameters.DialogToken = ctx->token; param.SendActionFrameResult.FrameIEs.ElementCount = FrameBuf_Length(buf) - ieOffset; @@ -5308,13 +5308,13 @@ WDI_CMD_P2pSendRequestActionFrameComplete( RT_TRACE_F(COMP_OID_SET, DBG_LOUD, ("token: %u\n", param.SendActionFrameResult.FrameParameters.DialogToken)); } - + // generate TLV GenerateWdiIndicationP2pSendRequestActionFrameComplete( - ¶m, 0, - &pAdapter->pPortCommonInfo->WdiData.TlvContext, + ¶m, 0, + &pAdapter->pPortCommonInfo->WdiData.TlvContext, &len, &tlv); - + // copy tlv wdi_task_WriteResult(hTask, tlv, len, status); @@ -5337,10 +5337,10 @@ WDI_CMD_P2pSendResponseActionFrameComplete( { RT_OID_HANDLER *hTask = &pAdapter->pPortCommonInfo->WdiData.TaskHandle; OFF_CHNL_TX_STATUS_FLAG txStatusFlag; - + u4Byte ieOffset = FRAME_OFFSET_P2P_PUB_ACT_ELEMENTS; NDIS_STATUS status = NDIS_STATUS_SUCCESS; - + UINT8 *tlv = NULL; ULONG len = 0; @@ -5351,13 +5351,13 @@ WDI_CMD_P2pSendResponseActionFrameComplete( status = (TEST_FLAG(txStatusFlag.perTxAttemptFlag, OFF_CHNL_TX_PER_TX_ATTEMPT_FLAG_FRAME_SENT) ? NDIS_STATUS_SUCCESS : NDIS_STATUS_FAILURE); FunctionIn(COMP_OID_SET); - + if(NDIS_STATUS_SUCCESS == status) { FRAME_BUF *buf = OffChnlTx_GetTxFrameBuf(ctx->req); RT_ASSERT(buf, ("%s(): buf is NULL!!!n", __FUNCTION__)); - + cpMacAddr(param.SendActionFrameResult.FrameParameters.PeerDeviceAddress.Address, (FrameBuf_Head(buf) + FRAME_OFFSET_ADDRESS1)); param.SendActionFrameResult.FrameParameters.DialogToken = ctx->token; param.SendActionFrameResult.FrameIEs.ElementCount = FrameBuf_Length(buf) - ieOffset; @@ -5365,13 +5365,13 @@ WDI_CMD_P2pSendResponseActionFrameComplete( RT_TRACE_F(COMP_OID_SET, DBG_LOUD, ("token: %u\n", param.SendActionFrameResult.FrameParameters.DialogToken)); } - + // generate TLV GenerateWdiIndicationP2pSendResponseActionFrameComplete( - ¶m, 0, - &pAdapter->pPortCommonInfo->WdiData.TlvContext, + ¶m, 0, + &pAdapter->pPortCommonInfo->WdiData.TlvContext, &len, &tlv); - + // copy tlv wdi_task_WriteResult(hTask, tlv, len, status); @@ -5391,11 +5391,11 @@ WDI_CMD_SendReqActionFrameComplete( IN PADAPTER pAdapter, IN const WDI_SEND_ACTION_CTX *ctx ) -{ +{ NDIS_STATUS status = NDIS_STATUS_SUCCESS; RT_OID_HANDLER *hTask = &pAdapter->pPortCommonInfo->WdiData.TaskHandle; OFF_CHNL_TX_STATUS_FLAG txStatusFlag = {0}; - + UINT8 *tlv = NULL; ULONG len = 0; @@ -5413,13 +5413,13 @@ WDI_CMD_SendReqActionFrameComplete( { RT_TRACE(COMP_MLME, DBG_WARNING, ("Action Req frame send failure.\n")); } - + #if 0 //GenerateWdiIndicationSendRequestActionFrameComplete( - // ¶m, 0, - // &pAdapter->pPortCommonInfo->WdiData.TlvContext, + // ¶m, 0, + // &pAdapter->pPortCommonInfo->WdiData.TlvContext, // &len, &tlv); - + wdi_task_WriteResult(hTask, tlv, len, status); FreeGenerated(tlv); @@ -5434,11 +5434,11 @@ WDI_CMD_SendRspActionFrameComplete( IN PADAPTER pAdapter, IN const WDI_SEND_ACTION_CTX *ctx ) -{ +{ NDIS_STATUS status = NDIS_STATUS_SUCCESS; RT_OID_HANDLER *hTask = &pAdapter->pPortCommonInfo->WdiData.TaskHandle; OFF_CHNL_TX_STATUS_FLAG txStatusFlag = {0}; - + UINT8 *tlv = NULL; ULONG len = 0; @@ -5453,13 +5453,13 @@ WDI_CMD_SendRspActionFrameComplete( { RT_TRACE(COMP_MLME, DBG_WARNING, ("Action Rsp frame send failure.\n")); } - + #if 0 GenerateWdiIndicationSendRequestActionFrameComplete( - ¶m, 0, - &pAdapter->pPortCommonInfo->WdiData.TlvContext, + ¶m, 0, + &pAdapter->pPortCommonInfo->WdiData.TlvContext, &len, &tlv); - + wdi_task_WriteResult(hTask, tlv, len, status); FreeGenerated(tlv); @@ -5487,11 +5487,13 @@ WDI_CMD_SendApAssociationResponseComplete( FunctionIn(COMP_MLME); // prepare structure, ref N62CAPIndicateIncomAssocComplete +#if !defined(NTDDI_WIN10_RS3) param.Optional.ActivePhyList_IsPresent = FALSE; +#endif cpMacAddr(param.AssocResponseResult.PeerMACAddress.Address, sta->MacAddr); - param.AssocResponseResult.IsReassociationRequest = + param.AssocResponseResult.IsReassociationRequest = Type_Reasoc_Rsp == GET_80211_HDR_TYPE(sta->AP_SendAsocResp) ? TRUE : FALSE; - param.AssocResponseResult.IsReAssociationResponse = + param.AssocResponseResult.IsReAssociationResponse = param.AssocResponseResult.IsReassociationRequest; if(RT_802_11AuthModeOpen == sta->AuthMode) param.AssocResponseResult.AuthAlgorithm = WDI_AUTH_ALGO_80211_OPEN; @@ -5509,7 +5511,7 @@ WDI_CMD_SendApAssociationResponseComplete( param.AssocResponseResult.AuthAlgorithm = WDI_AUTH_ALGO_WPA_NONE; else if(RT_802_11AuthModeWPA2PSK == sta->AuthMode) param.AssocResponseResult.AuthAlgorithm = WDI_AUTH_ALGO_WPA_PSK; - else + else param.AssocResponseResult.AuthAlgorithm = WDI_AUTH_ALGO_80211_OPEN; if(RT_ENC_ALG_NO_CIPHER == sta->perSTAKeyInfo.PairwiseCipherSuite[0]) @@ -5543,7 +5545,7 @@ WDI_CMD_SendApAssociationResponseComplete( param.AssocResponseResult.UnicastCipherAlgorithm = WDI_CIPHER_ALGO_NONE; param.AssocResponseFrame.ElementCount = MMPDU_BODY_LEN(sta->AP_SendAsocRespLength); - param.AssocResponseFrame.pElements = MMPDU_BODY(sta->AP_SendAsocResp); + param.AssocResponseFrame.pElements = MMPDU_BODY(sta->AP_SendAsocResp); if(pAdapter->MgntInfo.beaconframe.Length) { @@ -5555,13 +5557,13 @@ WDI_CMD_SendApAssociationResponseComplete( param.BeaconIEs.ElementCount = 0; param.BeaconIEs.pElements = NULL; } - + // generate TLV GenerateWdiIndicationSendApAssociationResponseComplete( - ¶m, 0, - &pAdapter->pPortCommonInfo->WdiData.TlvContext, + ¶m, 0, + &pAdapter->pPortCommonInfo->WdiData.TlvContext, &len, &tlv); - + // copy tlv wdi_task_WriteResult(hTask, tlv, len, status); @@ -5569,7 +5571,7 @@ WDI_CMD_SendApAssociationResponseComplete( FreeGenerated(tlv); ndisStatus = WDI_AddDatapathPeer(pAdapter, sta->MacAddr); - + // Free the OID Wdi_Xlat_FreeOid(req); @@ -5577,7 +5579,7 @@ WDI_CMD_SendApAssociationResponseComplete( OidHandle_Complete(pAdapter, OIDHANDLE_TYPE_TASK); if( ndisStatus != NDIS_STATUS_SUCCESS ) - { + { RT_TRACE(COMP_MLME, DBG_WARNING, ("WDI_CMD_SendApAssociationResponseComplete: fail to create peer, so disconnect with this AP[%2x:%2x:%2x:%2x:%2x:%2x]\n", sta->MacAddr[0], sta->MacAddr[1], sta->MacAddr[2], sta->MacAddr[3], sta->MacAddr[4], sta->MacAddr[5])); // 1. Send disassoc frame to the STA. @@ -5612,7 +5614,7 @@ WDI_CMD_PreIndicateRxP2pActionFrameCb( ADAPTER *pAdapter = pP2PInfo->pAdapter; FunctionIn(COMP_OID_SET); - + if(P2P_EVENT_RECEIVED_PROVISION_DISCOVERY_RESPONSE == EventID || P2P_EVENT_RECEIVED_INVITATION_RESPONSE == EventID || P2P_EVENT_RECEIVED_GO_NEGOTIATION_RESPONSE == EventID @@ -5621,7 +5623,7 @@ WDI_CMD_PreIndicateRxP2pActionFrameCb( { WDI_SendAction_TerminateReq(pAdapter); } - + FunctionOut(COMP_OID_SET); return; @@ -5732,7 +5734,7 @@ WDI_CANCEL_OID_TASK_SEND_RESPONSE_ACTION_FRAME( return NDIS_STATUS_SUCCESS; } -NDIS_STATUS +NDIS_STATUS WDI_PRE_M4_OID_TASK_SCAN( IN PADAPTER pAdapter, IN PRT_OID_HANDLER pOidHandle diff --git a/network/wlan/WDI/PLATFORM/NDIS6/WDI_Common.c b/network/wlan/WDI/PLATFORM/NDIS6/WDI_Common.c index 1b478b21..bfb1cce8 100644 --- a/network/wlan/WDI/PLATFORM/NDIS6/WDI_Common.c +++ b/network/wlan/WDI/PLATFORM/NDIS6/WDI_Common.c @@ -24,7 +24,7 @@ wdi_UnsolicitedIndication( NDIS_OID_REQUEST *req = NULL; RT_TRACE(COMP_MLME, DBG_LOUD, ("==>wdi_UnsolicitedIndication(): status indication code = %x, length=%d\n", Indication, Length)); - + indic = (NDIS_STATUS_INDICATION *)pInput; wdiHdr = (WDI_MESSAGE_HEADER *)(pInput + sizeof(*indic)); @@ -59,12 +59,12 @@ wdi_UnsolicitedIndication( pAdapter->pNdisCommon->hNdisAdapter, indic ); - + RT_TRACE(COMP_MLME, DBG_LOUD, ("<== wdi_UnsolicitedIndication()\n")); } // -// The following helper functions are used to determined if a +// The following helper functions are used to determined if a // BSS has the capability of specific wireless mode. // 2005.01.13, by rcnjko. // @@ -106,7 +106,7 @@ WDIWithWirelessG( { return FALSE; } - + // Check supported rates. for(i = 0; i < pRtBss->bdSupportRateEXLen; i++) { @@ -119,12 +119,12 @@ WDIWithWirelessG( } // Check if it contains ERP information element. - // <NOTE> Some AP, WAG-302, will not always claim OFDM rates in their ProbeRsp or Beacon + // <NOTE> Some AP, WAG-302, will not always claim OFDM rates in their ProbeRsp or Beacon // but it is in G mode. 2005.08.23, by rcnjko. if(pRtBss->bERPInfoValid) { return TRUE; - } + } return FALSE; } @@ -158,7 +158,7 @@ WDIWithWirelessA( //// // This routine determine if we should report the BSS scanned -// to upper layer. +// to upper layer. // 2005.01.13, by rcnjko. // BOOLEAN @@ -169,19 +169,19 @@ WDIFilterRtBss( { PRT_NDIS6_COMMON pNdisCommon = Adapter->pNdisCommon; BOOLEAN bAcceptable = TRUE; - BOOLEAN bHasB, bHasG, bHasA; + BOOLEAN bHasB, bHasG, bHasA; // Determine the capability of wireless mode of the BSS. bHasB = WDIWithWirelessB(pRtBss); bHasG = WDIWithWirelessG(pRtBss); bHasA = WDIWithWirelessA(pRtBss); - - // <RJ_TODO> - // 1. Maybe we may need to use a table in the future. + + // <RJ_TODO> + // 1. Maybe we may need to use a table in the future. // 2. Currently, we only consider B/G case. if( bHasB && !bHasG && !bHasA ) { // The BSS is pure B. - if( pNdisCommon->RegWirelessMode4ScanList == WIRELESS_MODE_G || + if( pNdisCommon->RegWirelessMode4ScanList == WIRELESS_MODE_G || pNdisCommon->RegWirelessMode4ScanList == WIRELESS_MODE_A ) { // We are pure A or pure G. bAcceptable = FALSE; @@ -219,7 +219,7 @@ wdiext_IndicateP2PDeviceFound( // get info of last rx frame if(RTIsListEmpty(&dev->rxFrameQ)) return; - + if(!pAdapter->pPortCommonInfo->WdiData.TaskHandle.pNdisRequest) return; @@ -280,13 +280,13 @@ wdiext_IndicateP2PDeviceFound( // Gen tlv if(NDIS_STATUS_SUCCESS != GenerateWdiIndicationBssEntryList( - ¶m, - sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), - &pAdapter->pPortCommonInfo->WdiData.TlvContext, + ¶m, + sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), + &pAdapter->pPortCommonInfo->WdiData.TlvContext, &buflen, &((UINT8 *)buf))) return; - wdi_UnsolicitedIndication(pAdapter, + wdi_UnsolicitedIndication(pAdapter, FALSE, (PVOID)req->RequestId, NDIS_STATUS_WDI_INDICATION_BSS_ENTRY_LIST, @@ -302,7 +302,7 @@ wdiext_IndicateP2PDeviceFound( VOID wdiext_IndicateP2PActionFrameReceived( - IN VOID *pvP2PInfo, + IN VOID *pvP2PInfo, IN u4Byte eid, IN MEMORY_BUFFER *info ) @@ -346,22 +346,22 @@ wdiext_IndicateP2PActionFrameReceived( param.FrameInfo.FrameParams.ActionFrameType = WDI_P2P_ACTION_FRAME_INVITATION_RESPONSE; else return; - + cpMacAddr(param.FrameInfo.FrameParams.PeerDeviceAddress.Address, evtData->Packet.Buffer + FRAME_OFFSET_ADDRESS2); param.FrameInfo.FrameParams.DialogToken = *(evtData->Packet.Buffer + FRAME_OFFSET_P2P_PUB_ACT_DIALOG_TOKEN); param.FrameInfo.FrameIEs.ElementCount = evtData->Packet.Length - ieOffset; param.FrameInfo.FrameIEs.pElements = evtData->Packet.Buffer + ieOffset; } - + // gen TLV if(NDIS_STATUS_SUCCESS != GenerateWdiIndicationP2pActionFrameReceived( - ¶m, - sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), - &pAdapter->pPortCommonInfo->WdiData.TlvContext, + ¶m, + sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), + &pAdapter->pPortCommonInfo->WdiData.TlvContext, &buflen, &((UINT8 *)buf))) return; - wdi_UnsolicitedIndication(pAdapter, + wdi_UnsolicitedIndication(pAdapter, FALSE, NULL, NDIS_STATUS_WDI_INDICATION_P2P_ACTION_FRAME_RECEIVED, @@ -371,7 +371,7 @@ wdiext_IndicateP2PActionFrameReceived( // cleanup FreeGenerated((UINT8 *)buf); - + FunctionOut(COMP_OID_SET); return; @@ -394,7 +394,7 @@ wdiext_IndicateBSSEntry( WDI_MESSAGE_HEADER *reqWdiHdr = NULL; u4Byte devSpecCtx = 0x07060504; LARGE_INTEGER CurrentTime; - + if(!pAdapter->pPortCommonInfo->WdiData.TaskHandle.pNdisRequest) return; @@ -417,7 +417,7 @@ wdiext_IndicateBSSEntry( RT_TRACE(COMP_MLME, DBG_LOUD, ("Indicate actual scan result of BSS list\n")); MgntActQuery_802_11_BSSID_LIST(pAdapter, &RtBssList, TRUE); #endif - } + } req = pAdapter->pPortCommonInfo->WdiData.TaskHandle.pNdisRequest; reqWdiHdr = (WDI_MESSAGE_HEADER *)req->DATA.METHOD_INFORMATION.InformationBuffer; @@ -468,7 +468,7 @@ wdiext_IndicateBSSEntry( else { FunctionOut(COMP_MLME); - return; + return; } // WDI_SIGNAL_INFO_CONTAINER SignalInfo @@ -487,23 +487,23 @@ wdiext_IndicateBSSEntry( entry.DeviceSpecificContext.pElements = (UINT8 *)&devSpecCtx; NdisGetCurrentSystemTime(&CurrentTime); - + // WDI_AGE_INFO_CONTAINER EntryAgeInfo entry.EntryAgeInfo.HostTimeStamp = CurrentTime.QuadPart;// [SDIO-482] in JIRA entry.EntryAgeInfo.CachedInformation = 0; // Gen tlv if(NDIS_STATUS_SUCCESS != GenerateWdiIndicationBssEntryList( - ¶m, - sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), - &pAdapter->pPortCommonInfo->WdiData.TlvContext, + ¶m, + sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), + &pAdapter->pPortCommonInfo->WdiData.TlvContext, &buflen, &((UINT8 *)buf))) { FunctionOut(COMP_MLME); return; } - - wdi_UnsolicitedIndication(pAdapter, + + wdi_UnsolicitedIndication(pAdapter, FALSE, (PVOID)req->RequestId, NDIS_STATUS_WDI_INDICATION_BSS_ENTRY_LIST, @@ -516,7 +516,7 @@ wdiext_IndicateBSSEntry( } FunctionOut(COMP_MLME); - + return; } @@ -539,7 +539,7 @@ wdiext_IndicateBSSEntryBySSID( u4Byte devSpecCtx = 0x07060504; BOOL bWildCardSSID = TRUE; LARGE_INTEGER CurrentTime; - + if(!pAdapter->pPortCommonInfo->WdiData.TaskHandle.pNdisRequest) return; @@ -565,7 +565,7 @@ wdiext_IndicateBSSEntryBySSID( RT_TRACE(COMP_MLME, DBG_LOUD, ("Indicate actual scan result of BSS list\n")); MgntActQuery_802_11_BSSID_LIST(pAdapter, &RtBssList, TRUE); #endif - } + } req = pAdapter->pPortCommonInfo->WdiData.TaskHandle.pNdisRequest; reqWdiHdr = (WDI_MESSAGE_HEADER *)req->DATA.METHOD_INFORMATION.InformationBuffer; @@ -626,7 +626,7 @@ wdiext_IndicateBSSEntryBySSID( else { FunctionOut(COMP_MLME); - return; + return; } // WDI_SIGNAL_INFO_CONTAINER SignalInfo @@ -645,23 +645,23 @@ wdiext_IndicateBSSEntryBySSID( entry.DeviceSpecificContext.pElements = (UINT8 *)&devSpecCtx; NdisGetCurrentSystemTime(&CurrentTime); - + // WDI_AGE_INFO_CONTAINER EntryAgeInfo entry.EntryAgeInfo.HostTimeStamp = CurrentTime.QuadPart;// [SDIO-482] in JIRA entry.EntryAgeInfo.CachedInformation = 0; // Gen tlv if(NDIS_STATUS_SUCCESS != GenerateWdiIndicationBssEntryList( - ¶m, - sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), - &pAdapter->pPortCommonInfo->WdiData.TlvContext, + ¶m, + sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), + &pAdapter->pPortCommonInfo->WdiData.TlvContext, &buflen, &((UINT8 *)buf))) { FunctionOut(COMP_MLME); return; } - - wdi_UnsolicitedIndication(pAdapter, + + wdi_UnsolicitedIndication(pAdapter, FALSE, (PVOID)req->RequestId, NDIS_STATUS_WDI_INDICATION_BSS_ENTRY_LIST, @@ -674,7 +674,7 @@ wdiext_IndicateBSSEntryBySSID( } FunctionOut(COMP_MLME); - + return; } @@ -720,7 +720,7 @@ wdiext_IndicateAssociationResult( else AssocComeBackTime = 0; } - else + else AssocComeBackTime = 0; if(pMgntInfo->dot11CurrentChannelNumber < 36) BandID = WDI_BAND_ID_2400; @@ -736,7 +736,7 @@ wdiext_IndicateAssociationResult( case WIRELESS_MODE_A: PhyType = WDI_PHY_TYPE_OFDM; break; - + case WIRELESS_MODE_G: PhyType = WDI_PHY_TYPE_ERP; break; @@ -757,7 +757,7 @@ wdiext_IndicateAssociationResult( PhyType = WDI_PHY_TYPE_VHT; break; - + } PlatformZeroMemory(&AsocResult, sizeof(WDI_ASSOCIATION_RESULT_CONTAINER)); @@ -787,12 +787,14 @@ wdiext_IndicateAssociationResult( AsocResult.Optional.BeaconProbeResponse_IsPresent = TRUE; AsocResult.BeaconProbeResponse.ElementCount = MMPDU_BODY_LEN(pMgntInfo->AsocInfo.BeaconLength); AsocResult.BeaconProbeResponse.pElements = MMPDU_BODY(pMgntInfo->AsocInfo.Beacon); +#if 0 AsocResult.Optional.ActivePhyTypeList_IsPresent = TRUE; +#endif AsocResult.ActivePhyTypeList.ElementCount = 1; AsocResult.ActivePhyTypeList.pElements = &PhyType; ndisStatus = GenerateWdiIndicationAssociationResult( - &AsocResultList, + &AsocResultList, sizeof(NDIS_STATUS_INDICATION)+sizeof(WDI_MESSAGE_HEADER), &pAdapter->pPortCommonInfo->WdiData.TlvContext, &length, @@ -802,10 +804,10 @@ wdiext_IndicateAssociationResult( RT_TRACE(COMP_MLME, DBG_LOUD, ("GenerateWdiIndicationAssociationResult(): return length %d\n", length)); RT_PRINT_DATA(COMP_MLME, DBG_TRACE, ("buffer\n"), pOutput, length); RT_TRACE(COMP_MLME, DBG_LOUD, ("SendUnsolictedIndication(): EthertypeEncapTable_IsPresent %d\n", AsocResult.Optional.EthertypeEncapTable_IsPresent)); - + ndisStatus = WDI_AddDatapathPeer(pAdapter, AsocResult.BSSID.Address); - - wdi_UnsolicitedIndication(pAdapter, + + wdi_UnsolicitedIndication(pAdapter, FALSE, (PVOID)pAdapter->pPortCommonInfo->WdiData.TaskHandle.pNdisRequest->RequestId, NDIS_STATUS_WDI_INDICATION_ASSOCIATION_RESULT, @@ -833,7 +835,7 @@ wdiext_IndicateAssociationResult( // RT_STATUS wdiext_IndicateFtAssocNeeded( - IN PADAPTER pAdapter + IN PADAPTER pAdapter ) { RT_STATUS rtStatus = RT_STATUS_SUCCESS; @@ -851,18 +853,18 @@ wdiext_IndicateFtAssocNeeded( { RT_TRACE_F(COMP_INDIC, DBG_WARNING, ("Too short of AuthSeq2Length = %d\n", pMgntInfo->AsocInfo.AuthSeq1Length)); rtStatus = RT_STATUS_INVALID_DATA; - break; + break; } if(pMgntInfo->AsocInfo.AuthSeq2Length < sMacHdrLng) { RT_TRACE_F(COMP_INDIC, DBG_WARNING, ("Too short of AuthSeq2Length = %d\n", pMgntInfo->AsocInfo.AuthSeq2Length)); rtStatus = RT_STATUS_INVALID_DATA; - break; + break; } cpMacAddr(param.BssId.Address, pMgntInfo->Bssid); - + param.AuthRequest.ElementCount = MMPDU_BODY_LEN(pMgntInfo->AsocInfo.AuthSeq1Length); param.AuthRequest.pElements = MMPDU_BODY(pMgntInfo->AsocInfo.AuthSeq1); @@ -870,21 +872,21 @@ wdiext_IndicateFtAssocNeeded( param.AuthResponse.pElements = MMPDU_BODY(pMgntInfo->AsocInfo.AuthSeq2); // Gen tlv - if(NDIS_STATUS_SUCCESS != (ndisStatus = + if(NDIS_STATUS_SUCCESS != (ndisStatus = GenerateWdiIndicationFtAssocParamsNeeded( - ¶m, - sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), - &pAdapter->pPortCommonInfo->WdiData.TlvContext, + ¶m, + sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), + &pAdapter->pPortCommonInfo->WdiData.TlvContext, &indicBufLen, &((UINT8 *)pIndicBuf)))) { RT_TRACE_F(COMP_INDIC, DBG_SERIOUS, ("Fail (ndisStatus = 0x%08X) from GenerateWdiIndicationFtAssocParamsNeeded()\n", ndisStatus)); rtStatus = RT_STATUS_OS_API_FAILED; - break; + break; } RT_PRINT_DATA(COMP_INDIC, DBG_LOUD, "NDIS_STATUS_WDI_INDICATION_FT_ASSOC_PARAMS_NEEDED:\n", pIndicBuf, indicBufLen); - wdi_UnsolicitedIndication(pAdapter, + wdi_UnsolicitedIndication(pAdapter, FALSE, NULL, NDIS_STATUS_WDI_INDICATION_FT_ASSOC_PARAMS_NEEDED, @@ -930,8 +932,8 @@ wdiext_IndicateDisassociation( param.Optional.NeedPeerStateCleanup_IsPresent = FALSE; cpMacAddr(param.DisconnectIndicationParameters.MacAddress.Address, addr); - param.DisconnectIndicationParameters.DisassociationWABIReason = bDisassoc - ? WDI_ASSOC_STATUS_PEER_DISASSOCIATED + param.DisconnectIndicationParameters.DisassociationWABIReason = bDisassoc + ? WDI_ASSOC_STATUS_PEER_DISASSOCIATED : WDI_ASSOC_STATUS_PEER_DEAUTHENTICATED; if(frameLen) @@ -947,23 +949,23 @@ wdiext_IndicateDisassociation( param.DeauthFrame.pElements = frame + sMacHdrLng; } } - + // Gen tlv if(NDIS_STATUS_SUCCESS != GenerateWdiIndicationDisassociation( - ¶m, - sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), - &pAdapter->pPortCommonInfo->WdiData.TlvContext, + ¶m, + sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), + &pAdapter->pPortCommonInfo->WdiData.TlvContext, &buflen, &((UINT8 *)buf))) return; - wdi_UnsolicitedIndication(pAdapter, + wdi_UnsolicitedIndication(pAdapter, FALSE, NULL, NDIS_STATUS_WDI_INDICATION_DISASSOCIATION, NDIS_STATUS_SUCCESS, buf, buflen); - + // cleanup FreeGenerated((UINT8 *)buf); @@ -987,24 +989,24 @@ wdiext_IndicateRadioStatus( Params.RadioState.HardwareState = (pMgntInfo->RfOffReason&RF_CHANGE_BY_HW)?0:1; RT_TRACE(COMP_RF, DBG_LOUD, ("wdiext_IndicateRadioStatus(): Params.RadioState.SoftwareState is %d, Params.RadioState.HardwareState is %d\n", Params.RadioState.SoftwareState, Params.RadioState.HardwareState)); - + ndisStatus = GenerateWdiIndicationRadioStatus( &Params, - sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), + sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), &pAdapter->pPortCommonInfo->WdiData.TlvContext, &length, &pOutput); if(NDIS_STATUS_SUCCESS == ndisStatus) { - wdi_UnsolicitedIndication(pAdapter, + wdi_UnsolicitedIndication(pAdapter, TRUE, NULL, NDIS_STATUS_WDI_INDICATION_RADIO_STATUS, NDIS_STATUS_SUCCESS, pOutput, length); - + FreeGenerated(pOutput); pOutput = NULL; } @@ -1023,7 +1025,7 @@ wdiext_IndicateLinkStateChanged( PUCHAR pOutput = NULL; ULONG length = 0; NDIS_STATUS ndisStatus = NDIS_STATUS_SUCCESS; - + if (pMgntInfo->mAssoc || pMgntInfo->mIbss) { Params.LinkStateChangeParameters.LinkQuality = GetSignalQuality(pAdapter); @@ -1044,7 +1046,7 @@ wdiext_IndicateLinkStateChanged( RT_TRACE(COMP_MLME, DBG_LOUD, ("wdiext_IndicateLinkStateChanged(): Params.LinkStateChangeParameters.TxLinkSpeed is %d\n", Params.LinkStateChangeParameters.TxLinkSpeed)); RT_TRACE(COMP_MLME, DBG_LOUD, ("wdiext_IndicateLinkStateChanged(): Params.LinkStateChangeParameters.RxLinkSpeed is %d\n", Params.LinkStateChangeParameters.RxLinkSpeed)); - + ndisStatus = GenerateWdiIndicationLinkStateChange( &Params, sizeof(NDIS_STATUS_INDICATION)+sizeof(WDI_MESSAGE_HEADER), @@ -1080,7 +1082,7 @@ wdiext_IndicateRoamingNeeded( NDIS_STATUS ndisStatus = NDIS_STATUS_SUCCESS; pMgntInfo->bPrepareRoaming = TRUE; - + Params.RoamingReason = IndicationReason; RT_TRACE_F(COMP_MLME, DBG_LOUD, ("Params.RoamingReason %d\n", Params.RoamingReason)); @@ -1143,20 +1145,20 @@ wdiext_IndicateP2POpChnl( // Gen tlv if(NDIS_STATUS_SUCCESS != GenerateWdiIndicationP2pGroupOperatingChannel( - ¶m, - sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), - &pAdapter->pPortCommonInfo->WdiData.TlvContext, + ¶m, + sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), + &pAdapter->pPortCommonInfo->WdiData.TlvContext, &buflen, &((UINT8 *)buf))) return; - wdi_UnsolicitedIndication(pAdapter, + wdi_UnsolicitedIndication(pAdapter, FALSE, (PVOID)req->RequestId, NDIS_STATUS_WDI_INDICATION_P2P_GROUP_OPERATING_CHANNEL, NDIS_STATUS_SUCCESS, buf, buflen); - + // cleanup FreeGenerated((UINT8 *)buf); @@ -1173,7 +1175,7 @@ wdi_FindGroupPeerByPort( PADAPTER pDefaultAdapter = GetDefaultAdapter(pAdapter); PRT_PEER_ENTRY pPeerEntry = NULL; u1Byte i; - + for(i = 0; i < MP_DEFAULT_NUMBER_OF_PORT; i++) { pPeerEntry = &pDefaultAdapter->RxPeerTable[i]; @@ -1185,7 +1187,7 @@ wdi_FindGroupPeerByPort( } } } - + return NULL; } @@ -1198,24 +1200,24 @@ wdi_FindPeerByAddr( PADAPTER pDefaultAdapter = GetDefaultAdapter(pAdapter); PRT_PEER_ENTRY pPeerEntry = NULL; u1Byte i = 0, count = 0; - + count = pDefaultAdapter->RxPeerUsedCount; for(i = MP_DEFAULT_NUMBER_OF_PORT; i < MAX_PEER_NUM; i++) { if( count == 0 ) break; - + pPeerEntry = &pDefaultAdapter->RxPeerTable[i]; if( pPeerEntry->bUsed == TRUE ) { - count--; + count--; if( PlatformCompareMemory(pPeerEntry->PeerAddr, pAddr, 6) == 0 ) { return (PVOID)pPeerEntry; } } } - + return NULL; } @@ -1230,18 +1232,18 @@ wdi_GetAvailablePeer( PRT_PEER_ENTRY pCurPeerEntry = NULL, pPeerEntry = NULL; u1Byte i = 0, UnusedIndex = 0, count = 0; BOOLEAN bFound = FALSE; - + FunctionIn(COMP_MLME); - + count = pDefaultAdapter->RxPeerUsedCount; - + for(i = MP_DEFAULT_NUMBER_OF_PORT; i < MAX_PEER_NUM; i++) { if( (count == 0) && (bFound == TRUE) ) break; - + pPeerEntry = &pDefaultAdapter->RxPeerTable[i]; - + if( (pPeerEntry->bUsed == FALSE) && (bFound == FALSE) ) { bFound = TRUE; @@ -1252,32 +1254,32 @@ wdi_GetAvailablePeer( count--; if( PlatformCompareMemory(pPeerEntry->PeerAddr, pAddr, 6) == 0 ) { - RT_TRACE(COMP_MLME, DBG_WARNING, ("wdi_GetAvailablePeer: The addres [%2x:%2x:%2x:%2x:%2x:%2x] had associated with specified Peer %d\n", pAddr[0], pAddr[1], pAddr[2], pAddr[3], pAddr[4], pAddr[5], pPeerEntry->uPeerId)); + RT_TRACE(COMP_MLME, DBG_WARNING, ("wdi_GetAvailablePeer: The addres [%2x:%2x:%2x:%2x:%2x:%2x] had associated with specified Peer %d\n", pAddr[0], pAddr[1], pAddr[2], pAddr[3], pAddr[4], pAddr[5], pPeerEntry->uPeerId)); FunctionOut(COMP_MLME); return (PVOID)pPeerEntry; } } } - + if( (i == MAX_PEER_NUM) && (bFound == FALSE) ) { - RT_TRACE(COMP_MLME, DBG_WARNING, ("wdi_GetAvailablePeer: Peer is already full, so cannot find an unused peer to associate [%2x:%2x:%2x:%2x:%2x:%2x]\n", pAddr[0], pAddr[1], pAddr[2], pAddr[3], pAddr[4], pAddr[5])); + RT_TRACE(COMP_MLME, DBG_WARNING, ("wdi_GetAvailablePeer: Peer is already full, so cannot find an unused peer to associate [%2x:%2x:%2x:%2x:%2x:%2x]\n", pAddr[0], pAddr[1], pAddr[2], pAddr[3], pAddr[4], pAddr[5])); FunctionOut(COMP_MLME); return NULL; } - + pDefaultAdapter->RxPeerUsedCount++; - + pCurPeerEntry = &pDefaultAdapter->RxPeerTable[UnusedIndex]; pCurPeerEntry->bUsed = TRUE; pCurPeerEntry->uPeerId = UnusedIndex; pCurPeerEntry->uPortId = (u2Byte)PortId; PlatformMoveMemory(pCurPeerEntry->PeerAddr, pAddr, 6); - RT_TRACE(COMP_MLME, DBG_LOUD, ("wdi_GetAvailablePeer: Port %d associate the addres [%2x:%2x:%2x:%2x:%2x:%2x] at Peer %d\n", (u2Byte)PortId, pAddr[0], pAddr[1], pAddr[2], pAddr[3], pAddr[4], pAddr[5], UnusedIndex)); - + RT_TRACE(COMP_MLME, DBG_LOUD, ("wdi_GetAvailablePeer: Port %d associate the addres [%2x:%2x:%2x:%2x:%2x:%2x] at Peer %d\n", (u2Byte)PortId, pAddr[0], pAddr[1], pAddr[2], pAddr[3], pAddr[4], pAddr[5], UnusedIndex)); + FunctionOut(COMP_MLME); - + return (PVOID)pCurPeerEntry; } @@ -1299,17 +1301,17 @@ wdi_NotifyPeerData( WDI_EXTENDED_TID ExtendTid = (WDI_EXTENDED_TID)ExTid; KIRQL Irql = 0; BOOLEAN bLackResource = FALSE; - + PlatformAcquireSpinLock(pAdapter, RT_RX_CONTROL_SPINLOCK); if( (pNdisCommon->bRxControlState != RT_RX_STOP) && (pDefaultNdisCommon->bRxDataPathState != RT_RX_PAUSE) ) - { + { pNdisCommon->bRxControlState = RT_RX_NOTIFYING; PlatformReleaseSpinLock(pAdapter, RT_RX_CONTROL_SPINLOCK); - + PlatformAcquireSpinLock(pAdapter, RT_RX_SPINLOCK); bLackResource = RxCheckResource(pAdapter)?FALSE:TRUE; PlatformReleaseSpinLock(pAdapter, RT_RX_SPINLOCK); - + if( bLackResource ) RT_TRACE(COMP_RECV, DBG_WARNING, ("wdi_NotifyPeerData(): RFD is less than lower bound (%d)\n", RFD_LOWER_BOUND)); @@ -1349,7 +1351,7 @@ wdi_NotifyPeerData( } pTempAdapter = GetNextExtAdapter(pTempAdapter); }while(pTempAdapter != NULL ); - + PlatformReleaseSpinLock(pAdapter, RT_RX_CONTROL_SPINLOCK); RT_TRACE(COMP_INIT, DBG_WARNING, ("Driver call RxStopConfirm for Rx manager\n")); pWdi->WdiDataApi.RxStopConfirm(pWdi->DataPathHandle); @@ -1395,23 +1397,23 @@ WDI_Initialize( // WorkAround for 0x9F BSOD pMChars->ResetHandlerEx = N6SdioReset; - + RtlZeroMemory(&WdiChar, sizeof(WdiChar)); WdiChar.WdiVersion = WDI_VERSION_LATEST; WdiChar.Header.Type = NDIS_OBJECT_TYPE_MINIPORT_WDI_CHARACTERISTICS, WdiChar.Header.Size = NDIS_SIZEOF_MINIPORT_WDI_CHARACTERISTICS_REVISION_1; - WdiChar.Header.Revision = NDIS_MINIPORT_DRIVER_WDI_CHARACTERISTICS_REVISION_1; + WdiChar.Header.Revision = NDIS_MINIPORT_DRIVER_WDI_CHARACTERISTICS_REVISION_1; WdiChar.AllocateAdapterHandler = N6SdioWdi_AllocateAdapter; WdiChar.FreeAdapterHandler = N6SdioWdi_FreeAdapter; - WdiChar.OpenAdapterHandler = N6SdioWdi_OpenAdapter; - WdiChar.CloseAdapterHandler = N6SdioWdi_CloseAdapter; + WdiChar.OpenAdapterHandler = N6SdioWdi_OpenAdapter; + WdiChar.CloseAdapterHandler = N6SdioWdi_CloseAdapter; WdiChar.TalTxRxInitializeHandler = N6SdioWdi_TalTxRxInitialize; WdiChar.TalTxRxDeinitializeHandler = N6SdioWdi_TalTxRxDeinitialize; - WdiChar.HangDiagnoseHandler = N6SdioWdi_HangDiagnose; + WdiChar.HangDiagnoseHandler = N6SdioWdi_HangDiagnose; // Optional handler WdiChar.StartOperationHandler = N6SdioWdi_StartOperation; @@ -1432,7 +1434,7 @@ WDI_Initialize( VOID -WDI_DeInitialize( +WDI_DeInitialize( IN NDIS_HANDLE DriverHandle ) { @@ -1440,7 +1442,7 @@ WDI_DeInitialize( } VOID -WDI_InitRxQueue( +WDI_InitRxQueue( IN PADAPTER pAdapter ) { @@ -1463,14 +1465,14 @@ WDI_InitRxQueue( } VOID -WDI_DeInitRxQueue( +WDI_DeInitRxQueue( IN PADAPTER pAdapter ) { PADAPTER pDefaultAdapter = GetDefaultAdapter(pAdapter); u2Byte index = 0; PNET_BUFFER_LIST pNetBufferList=NULL; - + RT_TRACE(COMP_INIT, DBG_LOUD, ("[WDI], WDI_DeInitRxQueue() ==> \n")); PlatformAcquireSpinLock(pAdapter, RT_RX_QUEUE_SPINLOCK); for(index=0; index<MAX_PEER_NUM; index++) @@ -1491,12 +1493,12 @@ WDI_DeInitRxQueue( VOID -WDI_PnPNotiry( +WDI_PnPNotiry( IN PADAPTER pAdapter ) { PWDI_DATA_STRUCT pWdi = &(pAdapter->pPortCommonInfo->WdiData); - + if( pWdi->TaskHandle.Status & RT_OID_HANDLER_STATUS_SET ) { OidHandle_Complete(pAdapter, OIDHANDLE_TYPE_TASK); @@ -1541,11 +1543,11 @@ WdiExt_IndicateApAssocReqReceived( PlatformZeroMemory(¶m, sizeof(param)); - cpMacAddr(param.IncomingRequestInfo.AssocRequestParams.PeerMacAddress.Address, + cpMacAddr(param.IncomingRequestInfo.AssocRequestParams.PeerMacAddress.Address, assocReq + FRAME_OFFSET_ADDRESS2 ); - param.IncomingRequestInfo.AssocRequestParams.IsReassociationRequest = + param.IncomingRequestInfo.AssocRequestParams.IsReassociationRequest = (Type_Reasoc_Req == GET_80211_HDR_TYPE(assocReq)) ? TRUE : FALSE; FillOctetString(osAssocReq, assocReq, (u2Byte)assocReqLen); @@ -1561,20 +1563,20 @@ WdiExt_IndicateApAssocReqReceived( // Gen tlv if(NDIS_STATUS_SUCCESS != GenerateWdiIndicationApAssociationRequestReceived( - ¶m, - sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), - &pAdapter->pPortCommonInfo->WdiData.TlvContext, + ¶m, + sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), + &pAdapter->pPortCommonInfo->WdiData.TlvContext, &buflen, &((UINT8 *)buf))) return; - wdi_UnsolicitedIndication(pAdapter, + wdi_UnsolicitedIndication(pAdapter, FALSE, NULL, NDIS_STATUS_WDI_INDICATION_AP_ASSOCIATION_REQUEST_RECEIVED, NDIS_STATUS_SUCCESS, buf, buflen); - + // cleanup FreeGenerated((UINT8 *)buf); @@ -1593,16 +1595,16 @@ WdiExt_IndicateApAssocRspSent( if(FALSE == OidHandle_VerifyTask(pAdapter, OID_WDI_TASK_SEND_AP_ASSOCIATION_RESPONSE)) { - RT_TRACE(COMP_OID_SET, DBG_WARNING, + RT_TRACE(COMP_OID_SET, DBG_WARNING, ("WdiExt_IndicateApAssocRspSent(): skip indication because OidHandle_VerifyTask() returns FALSE\n")); return; } - + if(task->pvCtx) { if(WDI_CMD_SendApAssociationResponseComplete( - pAdapter, - (NDIS_OID_REQUEST *)task->pvCtx, + pAdapter, + (NDIS_OID_REQUEST *)task->pvCtx, StatusCode_success == status ? RT_STATUS_SUCCESS : RT_STATUS_FAILURE)) {// set pvCtx to NULL only when it is freed in WDI_CMD_SendApAssociationResponseComplete task->pvCtx = NULL; @@ -1621,18 +1623,18 @@ WDIAllocateMetaData( { PWDI_DATA_STRUCT pWdi = &(pAdapter->pPortCommonInfo->WdiData); PWDI_FRAME_METADATA pWdiFrameMeta = NULL; - + pWdiFrameMeta = pWdi->WdiDataApi.AllocateWiFiFrameMetaData(pWdi->DataPathHandle); if( pWdiFrameMeta == NULL ) return RT_STATUS_FAILURE; pWdiFrameMeta->u.rxMetaData.PayloadType = WDI_FRAME_MSDU; pWdiFrameMeta->pNBL = pNBL; - + RT_TRACE(COMP_RECV, DBG_TRACE, ("PayloadType %d\n", pWdiFrameMeta->u.rxMetaData.PayloadType)); MP_SET_PACKET_RFD_RESERVED_0(pNBL, pWdiFrameMeta); - + return RT_STATUS_SUCCESS; } @@ -1673,7 +1675,7 @@ WDI_InsertDataInQueue( FillOctetString(osMpdu, pRfd->Buffer.VirtualAddress + pRfd->FragOffset, pRfd->FragLength); PlatformAcquireSpinLock(pAdapter, RT_RX_QUEUE_SPINLOCK); - + /**************************************************************************************************** * 20150707 Sinda * We insert frames in queue as below rules @@ -1694,12 +1696,12 @@ WDI_InsertDataInQueue( else PeerId = pPeerEntry->uPeerId; } - + if(pPeerEntry->bUsed == TRUE) { RT_TRACE(COMP_RECV, DBG_TRACE, ("WDI_InsertDataInQueue: Port %d, PeerId %d\n", PortNumber, PeerId)); for (pCurrNetBufferList = pNBL; pCurrNetBufferList != NULL; pCurrNetBufferList = pNextNetBufferList) - { + { pNextNetBufferList = NET_BUFFER_LIST_NEXT_NBL(pCurrNetBufferList); NET_BUFFER_LIST_NEXT_NBL(pCurrNetBufferList) = NULL; N6CAddNblWaitQueue(&pDefaultAdapter->RxPeerQueue[PeerId], pCurrNetBufferList, FALSE); @@ -1808,7 +1810,7 @@ WDI_IndicateBssListBySSID( } VOID -WDI_IndicateConnectionComplete( +WDI_IndicateConnectionComplete( PADAPTER pAdapter, RT_STATUS status ) @@ -1817,7 +1819,7 @@ WDI_IndicateConnectionComplete( if(FALSE == OidHandle_VerifyTask(pAdapter, OID_WDI_TASK_CONNECT)) return; - + OidHandle_Complete(pAdapter, OIDHANDLE_TYPE_TASK); } @@ -1827,7 +1829,7 @@ WDI_IndicateAssociationComplete( PADAPTER pAdapter, RT_STATUS status ) -{ +{ if( status == RT_STATUS_SUCCESS ) { wdiext_IndicateAssociationResult(pAdapter); @@ -1837,17 +1839,17 @@ WDI_IndicateAssociationComplete( VOID -WDI_IndicateDisassociation( +WDI_IndicateDisassociation( PADAPTER pAdapter, u2Byte reason, pu1Byte pAddr ) { PMGNT_INFO pMgntInfo = &(pAdapter->MgntInfo); - + if(ACTING_AS_AP(pAdapter)) {// AP mode - RT_WLAN_STA *sta = pMgntInfo->pCurrentSta; + RT_WLAN_STA *sta = pMgntInfo->pCurrentSta; RT_ASSERT(sta, ("%s(): sta is NULL!!!\n", __FUNCTION__)); @@ -1856,7 +1858,7 @@ WDI_IndicateDisassociation( RT_TRACE_F(COMP_AP, DBG_SERIOUS, ("pMgntInfo->pCurrentSta is NULL!\n")); return; } - + wdiext_IndicateDisassociation(pAdapter, sta->MacAddr, 0, NULL, TRUE, reason); } else @@ -1876,17 +1878,17 @@ WDI_IndicateNLODiscovery( ) { WDI_INDICATION_NLO_DISCOVERY_PARAMETERS param; - PWDI_BSS_ENTRY_CONTAINER pEntry; + PWDI_BSS_ENTRY_CONTAINER pEntry; PRT_NLO_INFO pNLOInfo = &(pAdapter->MgntInfo.NLOInfo); PRT_WLAN_BSS pRtBss = NULL; - RT_802_11_BSSID_LIST RtBssList = {0}; + RT_802_11_BSSID_LIST RtBssList = {0}; u4Byte i = 0; u4Byte j = 0; - u4Byte nBss = 0; + u4Byte nBss = 0; ULONG buflen = 0; - pu1Byte buf = NULL; - pu1Byte pBssList = NULL; + pu1Byte buf = NULL; + pu1Byte pBssList = NULL; u4Byte devSpecCtx = 0x07060504; BOOLEAN Hit = FALSE; LARGE_INTEGER CurrentTime; @@ -1898,15 +1900,15 @@ WDI_IndicateNLODiscovery( // zero PlatformZeroMemory(¶m, sizeof(param)); - + //Get scan list RtBssList.NumberOfItems = 0; RtBssList.pbssidentry = pAdapter->bssDescList; - + MgntActQuery_802_11_BSSID_LIST(pAdapter, &RtBssList, FALSE); - PlatformAllocateMemoryWithZero(pAdapter, (PVOID *)&pEntry, sizeof(WDI_BSS_ENTRY_CONTAINER)*RtBssList.NumberOfItems); - + PlatformAllocateMemoryWithZero(pAdapter, (PVOID *)&pEntry, sizeof(WDI_BSS_ENTRY_CONTAINER)*RtBssList.NumberOfItems); + param.DeviceDescriptor.pElements = pEntry; nBss = 0; @@ -1922,14 +1924,14 @@ WDI_IndicateNLODiscovery( } pRtBss = &(RtBssList.pbssidentry[i]); - + // Determine if we shall report the BSS found by RegWirelessMode4ScanList. if(!WDIFilterRtBss(pAdapter, pRtBss)) { // Skip this BSS. continue; } - + for( j=0 ; j<pNLOInfo->NumDot11OffloadNetwork ; ++j ) { // Compare to check whether it is what we desired or not @@ -1942,7 +1944,7 @@ WDI_IndicateNLODiscovery( if( !Hit ) // This BSS is not we desired. continue; - + // WIFI_MAC_ADDRESS_CONTAINER BSSID cpMacAddr(pEntry->BSSID.Address, pRtBss->bdBssIdBuf); @@ -1963,7 +1965,7 @@ WDI_IndicateNLODiscovery( { RT_TRACE(COMP_POWER, DBG_LOUD, ("Unknown BssPacketType: %u\n", pRtBss->BssPacketType)); FunctionOut(COMP_POWER); - return; + return; } // WDI_SIGNAL_INFO_CONTAINER SignalInfo @@ -1975,9 +1977,9 @@ WDI_IndicateNLODiscovery( pEntry->ChannelInfo.ChannelNumber = (UINT32)pRtBss->ChannelNumber; pEntry->ChannelInfo.BandId = (pRtBss->ChannelNumber < 36) ? WDI_BAND_ID_2400 : WDI_BAND_ID_5000; RT_TRACE(COMP_POWER, DBG_LOUD, ("pRtBss->ChannelNumber=%d, ", pRtBss->ChannelNumber)); - RT_TRACE(COMP_POWER, DBG_LOUD, ("%x:%x:%x:%x:%x:%x, ", - pEntry->BSSID.Address[0], pEntry->BSSID.Address[1], - pEntry->BSSID.Address[2], pEntry->BSSID.Address[3], + RT_TRACE(COMP_POWER, DBG_LOUD, ("%x:%x:%x:%x:%x:%x, ", + pEntry->BSSID.Address[0], pEntry->BSSID.Address[1], + pEntry->BSSID.Address[2], pEntry->BSSID.Address[3], pEntry->BSSID.Address[4], pEntry->BSSID.Address[5])); RT_TRACE(COMP_POWER, DBG_LOUD, ("SSID: %s\n", pRtBss->bdSsIdBuf)); @@ -1988,7 +1990,7 @@ WDI_IndicateNLODiscovery( // Get current timestamp NdisGetCurrentSystemTime(&CurrentTime); - + // WDI_AGE_INFO_CONTAINER EntryAgeInfo pEntry->EntryAgeInfo.HostTimeStamp = CurrentTime.QuadPart; // [SDIO-482] in JIRA pEntry->EntryAgeInfo.CachedInformation = 0; @@ -2007,17 +2009,17 @@ WDI_IndicateNLODiscovery( // Gen tlv if(NDIS_STATUS_SUCCESS != GenerateWdiIndicationNloDiscovery( - ¶m, - sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), - &pAdapter->pPortCommonInfo->WdiData.TlvContext, + ¶m, + sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), + &pAdapter->pPortCommonInfo->WdiData.TlvContext, &buflen, &((UINT8 *)buf))) { RT_TRACE(COMP_POWER, DBG_LOUD, ("WDI_IndicateNLODiscovery(): GenerateWdiIndicationNloDiscovery Failed\n")); FunctionOut(COMP_POWER); return; } - - wdi_UnsolicitedIndication( pAdapter, + + wdi_UnsolicitedIndication( pAdapter, FALSE, NULL, NDIS_STATUS_WDI_INDICATION_NLO_DISCOVERY, @@ -2026,8 +2028,8 @@ WDI_IndicateNLODiscovery( buflen); // cleanup - FreeGenerated((UINT8 *)buf); - + FreeGenerated((UINT8 *)buf); + FunctionOut(COMP_POWER); } @@ -2042,7 +2044,7 @@ WDI_IndicateCurrentPhyStatus( VOID -WDI_IndicateP2PEvent( +WDI_IndicateP2PEvent( VOID *pvP2PInfo, u4Byte EventID, MEMORY_BUFFER *pInformation @@ -2051,7 +2053,7 @@ WDI_IndicateP2PEvent( { P2P_INFO *pP2PInfo = (P2P_INFO *)pvP2PInfo; RT_OID_HANDLER *task = &pP2PInfo->pAdapter->pPortCommonInfo->WdiData.TaskHandle; - + if(P2P_EVENT_DEV_FOUND == EventID) { wdiext_IndicateP2PDeviceFound(pP2PInfo->pAdapter, pInformation->Buffer); @@ -2060,8 +2062,8 @@ WDI_IndicateP2PEvent( || P2P_EVENT_RECEIVED_GO_NEGOTIATION_REQUEST == EventID || P2P_EVENT_RECEIVED_INVITATION_REQUEST == EventID ) - {// rx req action - WDI_CMD_PreIndicateRxP2pActionFrameCb(pvP2PInfo, EventID, pInformation); + {// rx req action + WDI_CMD_PreIndicateRxP2pActionFrameCb(pvP2PInfo, EventID, pInformation); wdiext_IndicateP2PActionFrameReceived(pvP2PInfo, EventID, pInformation); WDI_CMD_PostIndicateRxP2pActionFrameCb(pvP2PInfo, EventID, pInformation); } @@ -2072,10 +2074,10 @@ WDI_IndicateP2PEvent( ) {// rx rsp action WDI_CMD_PreIndicateRxP2pActionFrameCb(pvP2PInfo, EventID, pInformation); - + // indicate in the corresp. OffChnlTx complete cb //wdiext_IndicateP2PActionFrameReceived(pvP2PInfo, EventID, pInformation); - + WDI_CMD_PostIndicateRxP2pActionFrameCb(pvP2PInfo, EventID, pInformation); } else if(P2P_EVENT_GO_OPERATING_CHANNEL == EventID) @@ -2083,7 +2085,7 @@ WDI_IndicateP2PEvent( wdiext_IndicateP2POpChnl(pP2PInfo->pAdapter, pP2PInfo); } - return; + return; } @@ -2105,7 +2107,7 @@ WDI_CompleteCreateDeleteMac( } VOID -WDI_IndicateLinkStateChanged( +WDI_IndicateLinkStateChanged( PADAPTER pAdapter, BOOLEAN bForceLinkQuality, u1Byte ucLinkQuality @@ -2122,14 +2124,14 @@ WDI_IndicateActionFrame( { NDIS_STATUS_INDICATION *indic = NULL; WDI_MESSAGE_HEADER *wdiHdr = NULL; - + u1Byte *buf = NULL; ULONG buflen = 0; WDI_INDICATION_ACTION_FRAME_RECEIVED_PARAMETERS param = {0}; RT_TRACE(COMP_OID_SET, DBG_WARNING, ("WDI_IndicateActionFrame +\n")); - + // TODO: fill the valid info into param PlatformMoveMemory(param.SourceAddress.Address,Frame_pSaddr(*posMpdu),6); @@ -2137,13 +2139,13 @@ WDI_IndicateActionFrame( param.ActionFrameBody.ElementCount = posMpdu->Length; // TODO: double check here to make sure channel correct - param.ChannelInfo.ChannelNumber = RT_GetChannelNumber(pAdapter); + param.ChannelInfo.ChannelNumber = RT_GetChannelNumber(pAdapter); param.ChannelInfo.BandId = WDI_BAND_ID_2400; if(NDIS_STATUS_SUCCESS != GenerateWdiIndicationActionFrameReceived( - ¶m, - sizeof(*indic) + sizeof(*wdiHdr), - &pAdapter->pPortCommonInfo->WdiData.TlvContext, + ¶m, + sizeof(*indic) + sizeof(*wdiHdr), + &pAdapter->pPortCommonInfo->WdiData.TlvContext, &buflen, &((UINT8 *)buf))) { RT_TRACE(COMP_OID_SET, DBG_WARNING, ("ActionFrame generate tlv failed\n")); @@ -2173,7 +2175,7 @@ WDI_IndicateActionFrame( NdisMIndicateStatusEx(pAdapter->pNdisCommon->hNdisAdapter, indic); FreeGenerated((UINT8 *)buf); - + return RT_STATUS_SUCCESS; } @@ -2184,12 +2186,12 @@ WDI_IndicateWakeReason( IN pu1Byte pBuffer, IN u2Byte BufferLen ) -{ +{ WDI_INDICATION_WAKE_REASON_PARAMETERS param; PMGNT_INFO pMgntInfo = &(pAdapter->MgntInfo); PRT_POWER_SAVE_CONTROL pPSC = GET_POWER_SAVE_CONTROL(pMgntInfo); - pu1Byte pWakePktbuf = NULL; + pu1Byte pWakePktbuf = NULL; BOOLEAN bIndicate = TRUE; u1Byte *buf = NULL; ULONG buflen = 0; @@ -2207,7 +2209,7 @@ WDI_IndicateWakeReason( RT_TRACE(COMP_POWER, DBG_SERIOUS, ("WDI_IndicateWakeReason(): Unknown pPSC->WakeUpReason(%#x)\n", pPSC->WakeUpReason)); } - param.WakeEventCode = WDI_WAKE_REASON_CODE_PACKET; + param.WakeEventCode = WDI_WAKE_REASON_CODE_PACKET; param.WakePacketPatternId = pPSC->MagicPacketPatternId; PlatformAllocateMemoryWithZero(pAdapter, (PVOID *)&pWakePktbuf, BufferLen); @@ -2241,47 +2243,47 @@ WDI_IndicateWakeReason( bIndicate = FALSE; } } - + if(bIndicate) { RT_TRACE(COMP_POWER, DBG_LOUD, ("WDI_IndicateWakeReason(): WakeEventCode(%#X)\n", param.WakeEventCode)); // Gen tlv if(NDIS_STATUS_SUCCESS != GenerateWdiIndicationWakeReasonFromIhv( - ¶m, - sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), - &pAdapter->pPortCommonInfo->WdiData.TlvContext, + ¶m, + sizeof(NDIS_STATUS_INDICATION) + sizeof(WDI_MESSAGE_HEADER), + &pAdapter->pPortCommonInfo->WdiData.TlvContext, &buflen, &((UINT8 *)buf))) { RT_TRACE(COMP_POWER, DBG_LOUD, ("WDI_IndicateWakeReason(): GenerateWdiIndicationWakeReasonFromIhv Failed\n")); return; } - - wdi_UnsolicitedIndication(pAdapter, + + wdi_UnsolicitedIndication(pAdapter, FALSE, NULL, NDIS_STATUS_WDI_INDICATION_WAKE_REASON, NDIS_STATUS_SUCCESS, buf, buflen); - + // cleanup FreeGenerated((UINT8 *)buf); - } - + } + } VOID -WDI_IndicateRoamingNeeded( +WDI_IndicateRoamingNeeded( PADAPTER pAdapter, RT_PREPARE_ROAM_TYPE IndicationReason ) { PMGNT_INFO pMgntInfo = &(pAdapter->MgntInfo); - + pMgntInfo->PrepareRoamState = IndicationReason; - + switch(IndicationReason) { case RT_PREPARE_ROAM_DEAUTH_DISASSOC: @@ -2299,7 +2301,7 @@ WDI_IndicateRoamingNeeded( } VOID -WDI_IndicateRoamingComplete( +WDI_IndicateRoamingComplete( PADAPTER pAdapter ) { @@ -2307,11 +2309,11 @@ WDI_IndicateRoamingComplete( if(FALSE == OidHandle_VerifyTask(pAdapter, OID_WDI_TASK_ROAM)) return; - + OidHandle_Complete(pAdapter, OIDHANDLE_TYPE_TASK); } -VOID +VOID WDI_AddGroupPeer( IN PADAPTER pAdapter, IN u2Byte PortNumber @@ -2319,44 +2321,44 @@ WDI_AddGroupPeer( { PADAPTER pDefaultAdapter = GetDefaultAdapter(pAdapter); PWDI_DATA_STRUCT pWdi = &(pAdapter->pPortCommonInfo->WdiData); - WDI_MAC_ADDRESS PeerAddr = {0}; + WDI_MAC_ADDRESS PeerAddr = {0}; PRT_PEER_ENTRY pPeerEntry = NULL; u1Byte i = 0; - + FunctionIn(COMP_INIT); - + PlatformAcquireSpinLock(pAdapter, RT_RX_QUEUE_SPINLOCK); for(i = 0; i < MP_DEFAULT_NUMBER_OF_PORT; i++) { pPeerEntry = &pDefaultAdapter->RxPeerTable[i]; if( pPeerEntry->bUsed == FALSE ) { - RT_TRACE(COMP_INIT, DBG_LOUD, ("WDI_AddGroupPeer: create group peer %d for port %d\n", i, PortNumber)); + RT_TRACE(COMP_INIT, DBG_LOUD, ("WDI_AddGroupPeer: create group peer %d for port %d\n", i, PortNumber)); break; } } - + if( i == MP_DEFAULT_NUMBER_OF_PORT ) { - RT_TRACE(COMP_INIT, DBG_WARNING, ("WDI_AddGroupPeer: there is no available group peer for port %d\n", PortNumber)); + RT_TRACE(COMP_INIT, DBG_WARNING, ("WDI_AddGroupPeer: there is no available group peer for port %d\n", PortNumber)); FunctionOut(COMP_INIT); PlatformReleaseSpinLock(pAdapter, RT_RX_QUEUE_SPINLOCK); return ; } - + pPeerEntry->bUsed = TRUE; pPeerEntry->uPeerId = i; pPeerEntry->uPortId = PortNumber; PlatformMoveMemory(pPeerEntry->PeerAddr, MAC_BROADCAST_ADDR, 6); PlatformMoveMemory(PeerAddr.Address, pPeerEntry->PeerAddr, 6); pWdi->WdiDataApi.PeerCreateIndication(pWdi->DataPathHandle, (WDI_PORT_ID)pPeerEntry->uPortId, (WDI_PEER_ID)pPeerEntry->uPeerId, PeerAddr); - + PlatformReleaseSpinLock(pAdapter, RT_RX_QUEUE_SPINLOCK); - + FunctionOut(COMP_INIT); } -VOID +VOID WDI_DeleteGroupPeer( IN PADAPTER pAdapter, IN u2Byte PortNumber @@ -2368,15 +2370,15 @@ WDI_DeleteGroupPeer( WDI_PEER_ID PeerId = 0; PRT_PEER_ENTRY pPeerEntry = NULL; u1Byte i; - + FunctionIn(COMP_INIT); PlatformAcquireSpinLock(pAdapter, RT_RX_QUEUE_SPINLOCK); - + pPeerEntry = (PRT_PEER_ENTRY)wdi_FindGroupPeerByPort(pAdapter, PortNumber); if( pPeerEntry == NULL ) { - RT_TRACE(COMP_INIT, DBG_WARNING, ("wdi_FindPeerByAddr: Cannot find group peer of port %d\n", PortNumber)); + RT_TRACE(COMP_INIT, DBG_WARNING, ("wdi_FindPeerByAddr: Cannot find group peer of port %d\n", PortNumber)); FunctionOut(COMP_INIT); PlatformReleaseSpinLock(pAdapter, RT_RX_QUEUE_SPINLOCK); return ; @@ -2385,23 +2387,23 @@ WDI_DeleteGroupPeer( { PeerId = (WDI_PEER_ID)pPeerEntry->uPeerId; pPeerEntry->bUsed = FALSE; - - PlatformZeroMemory(pPeerEntry->PeerAddr, 6); - + + PlatformZeroMemory(pPeerEntry->PeerAddr, 6); + pWdi->WdiDataApi.PeerDeleteIndication(pWdi->DataPathHandle, (WDI_PORT_ID)PortNumber, PeerId, &ndisStatus); - + WDI_FreeRxFrame(pAdapter, (PNET_BUFFER_LIST)N6CGetHeadNblWaitQueue(pDefaultAdapter->RxPeerQueue[PeerId])); RTInitializeSListHead(&pDefaultAdapter->RxPeerQueue[PeerId]); - + RT_TRACE(COMP_INIT, DBG_LOUD, ("WDI_DeleteGroupPeer: delete group peer %d of port %d, Status: %d\n", PeerId, PortNumber, ndisStatus)); } - + PlatformReleaseSpinLock(pAdapter, RT_RX_QUEUE_SPINLOCK); - + FunctionOut(COMP_INIT); } -NDIS_STATUS +NDIS_STATUS WDI_AddDatapathPeer( IN PADAPTER pAdapter, IN pu1Byte pAddr) @@ -2412,28 +2414,28 @@ WDI_AddDatapathPeer( WDI_PORT_ID PortId = (WDI_PORT_ID)pAdapter->pNdis62Common->PortNumber; WDI_MAC_ADDRESS PeerAddr = {0}; PRT_PEER_ENTRY pPeerEntry = NULL; - + FunctionIn(COMP_MLME); - + PlatformAcquireSpinLock(pAdapter, RT_RX_QUEUE_SPINLOCK); - + pPeerEntry = (PRT_PEER_ENTRY)wdi_GetAvailablePeer(pAdapter, pAddr); if( pPeerEntry != NULL ) - { + { PlatformMoveMemory(PeerAddr.Address, pPeerEntry->PeerAddr, 6); pWdi->WdiDataApi.PeerCreateIndication(pWdi->DataPathHandle, (WDI_PORT_ID)pPeerEntry->uPortId, (WDI_PEER_ID)pPeerEntry->uPeerId, PeerAddr); - + PlatformReleaseSpinLock(pAdapter, RT_RX_QUEUE_SPINLOCK); - + FunctionOut(COMP_MLME); - + return NDIS_STATUS_SUCCESS; } - + PlatformReleaseSpinLock(pAdapter, RT_RX_QUEUE_SPINLOCK); - + FunctionOut(COMP_MLME); - + return NDIS_STATUS_FAILURE; } @@ -2448,11 +2450,11 @@ void WDI_DeleteDatapathPeer( NDIS_STATUS ndisStatus = NDIS_STATUS_SUCCESS; WDI_PEER_ID PeerId = 0; PRT_PEER_ENTRY pPeerEntry = NULL; - + FunctionIn(COMP_MLME); - + PlatformAcquireSpinLock(pAdapter, RT_RX_QUEUE_SPINLOCK); - + pPeerEntry = (PRT_PEER_ENTRY)wdi_FindPeerByAddr(pAdapter, pAddr); if( pPeerEntry == NULL ) { @@ -2461,23 +2463,23 @@ void WDI_DeleteDatapathPeer( PlatformReleaseSpinLock(pAdapter, RT_RX_QUEUE_SPINLOCK); return ; } - RT_TRACE(COMP_INIT, DBG_LOUD, ("WDI_DeleteDatapathPeer: Find the addres [%2x:%2x:%2x:%2x:%2x:%2x] associated at Peer %d\n", pAddr[0], pAddr[1], pAddr[2], pAddr[3], pAddr[4], pAddr[5], pPeerEntry->uPeerId)); - + RT_TRACE(COMP_INIT, DBG_LOUD, ("WDI_DeleteDatapathPeer: Find the addres [%2x:%2x:%2x:%2x:%2x:%2x] associated at Peer %d\n", pAddr[0], pAddr[1], pAddr[2], pAddr[3], pAddr[4], pAddr[5], pPeerEntry->uPeerId)); + pDefaultAdapter->RxPeerUsedCount--; PeerId = (WDI_PEER_ID)pPeerEntry->uPeerId; PortId = (WDI_PORT_ID)pPeerEntry->uPortId; pPeerEntry->bUsed = FALSE; - PlatformZeroMemory(pPeerEntry->PeerAddr, 6); - + PlatformZeroMemory(pPeerEntry->PeerAddr, 6); + pWdi->WdiDataApi.PeerDeleteIndication(pWdi->DataPathHandle, PortId, PeerId, &ndisStatus); - + WDI_FreeRxFrame(pAdapter, (PNET_BUFFER_LIST)N6CGetHeadNblWaitQueue(pDefaultAdapter->RxPeerQueue[PeerId])); RTInitializeSListHead(&pDefaultAdapter->RxPeerQueue[PeerId]); - + PlatformReleaseSpinLock(pAdapter, RT_RX_QUEUE_SPINLOCK); - + RT_TRACE(COMP_MLME, DBG_LOUD, ("WDI_DeleteDatapathPeer: delete peer %d, Status: %d\n", PeerId, ndisStatus)); - + FunctionOut(COMP_MLME); } @@ -2491,7 +2493,7 @@ WDI_FetchNBLByPort( PADAPTER pDefaultAdapter = GetDefaultAdapter(pAdapter); u2Byte index = 0; PRT_SINGLE_LIST_ENTRY pFirst = NULL, pTemp = NULL; - + *ppNetBufferList = NULL; RT_TRACE(COMP_RECV, DBG_LOUD, ("WDI_FetchNBLByPort: fetch frames of all peers at port %d\n", Port_ID)); @@ -2505,7 +2507,7 @@ WDI_FetchNBLByPort( { if(N6CIsNblWaitQueueEmpty(pDefaultAdapter->RxPeerQueue[index])) continue; - + pTemp = RTGetHeadSList(&pDefaultAdapter->RxPeerQueue[index]); if( pFirst == NULL ) { @@ -2518,7 +2520,7 @@ WDI_FetchNBLByPort( RTInitializeSListHead(&pDefaultAdapter->RxPeerQueue[index]); } } - + if( pFirst != NULL ) { *ppNetBufferList = RT_GET_NBL_FROM_QUEUE_LINK(pFirst); @@ -2534,7 +2536,7 @@ WDI_FetchNBLByPort( { if(N6CIsNblWaitQueueEmpty(pDefaultAdapter->RxPeerQueue[index])) continue; - + pTemp = RTGetHeadSList(&pDefaultAdapter->RxPeerQueue[index]); if( pFirst == NULL ) { @@ -2547,7 +2549,7 @@ WDI_FetchNBLByPort( RTInitializeSListHead(&pDefaultAdapter->RxPeerQueue[index]); } } - + if( pFirst != NULL ) { *ppNetBufferList = RT_GET_NBL_FROM_QUEUE_LINK(pFirst); @@ -2577,11 +2579,11 @@ WDI_FreeRxFrame( FunctionOut(COMP_RECV); return; } - + do - { + { //Get next NBL - pNextNBL = NET_BUFFER_LIST_NEXT_NBL(pNetBufferList); + pNextNBL = NET_BUFFER_LIST_NEXT_NBL(pNetBufferList); //Get RFD from NBL pRfd = MP_GET_PACKET_RFD(pNetBufferList); @@ -2617,22 +2619,22 @@ WDI_FreeRxFrame( //Assign NextNBL pointer pNetBufferList = pNextNBL; }while(pNetBufferList!=NULL); - + if (Count == 0) { NdisSetEvent(&pNdisCommon->AllPacketReturnedEvent); - if(pAdapter->MgntInfo.NdisVersion >= RT_NDIS_VERSION_6_20) - { + if(pAdapter->MgntInfo.NdisVersion >= RT_NDIS_VERSION_6_20) + { PADAPTER pTempAdapter = GetFirstExtAdapter(pAdapter); while(pTempAdapter != NULL) { NdisSetEvent(&pTempAdapter->pNdisCommon->AllPacketReturnedEvent); - pTempAdapter = GetNextExtAdapter(pTempAdapter); - } + pTempAdapter = GetNextExtAdapter(pTempAdapter); + } } } - + FunctionOut(COMP_RECV); } @@ -2641,7 +2643,7 @@ WDI_IndicateTKIPMICFailure( PADAPTER pAdapter ) { - PMGNT_INFO pMgntInfo; + PMGNT_INFO pMgntInfo; pMgntInfo = &(pAdapter->MgntInfo); PUCHAR pOutput = NULL; ULONG length = 0; @@ -2650,13 +2652,13 @@ WDI_IndicateTKIPMICFailure( FunctionIn(COMP_SEC); - + Params.FailureInfo.DefaultKeyFailure = FALSE; Params.FailureInfo.KeyIndex=0; //WDI_TKIPFailureParam.PeerMacAddress=pMgntInfo->Bssid; cpMacAddr(Params.FailureInfo.PeerMacAddress.Address, pMgntInfo->Bssid); - - + + ndisStatus = GenerateWdiIndicationTkipMicFailure( &Params, @@ -2696,7 +2698,7 @@ WDI_TxCreditCheck( GLWdiTxRxStatistics.monitorTxPauseReason = pWdi->txPauseReason; // First check if we have pause indication before. - // not to acquire tx lock frequently, so we do not acquire tx lock when read, but remember + // not to acquire tx lock frequently, so we do not acquire tx lock when read, but remember // we should acquire tx lock when need to change the pause reason. if(pWdi->txPauseReason) { @@ -2704,26 +2706,26 @@ WDI_TxCreditCheck( txCredit = *Get_NUM_IDLE_TCB(pAdapter); preTxPauseReason = pWdi->txPauseReason; - + RT_TRACE(COMP_INIT, DBG_LOUD, ("[WDI], WDI_TxCreditCheck(): txCredit=%d\n", txCredit)); - + if(txCredit > (pAdapter->RT_TCB_NUM/4)) { GLWdiTxRxStatistics.numTxResourceAvailable++; - + if( (preTxPauseReason&WDI_TX_PAUSE_REASON_CREDIT) == WDI_TX_PAUSE_REASON_CREDIT) { - RT_TRACE(COMP_INIT, DBG_LOUD, ("[WDI], WDI_TxCreditCheck(): TxPauseReason = 0x%x!!!\n", preTxPauseReason)); + RT_TRACE(COMP_INIT, DBG_LOUD, ("[WDI], WDI_TxCreditCheck(): TxPauseReason = 0x%x!!!\n", preTxPauseReason)); GLWdiTxRxStatistics.numWdiTxRestartIndicate++; RT_TRACE(COMP_INIT, DBG_LOUD, ("[WDI], WDI_TxCreditCheck(): TxSendRestart: %d times!!!\n", GLWdiTxRxStatistics.numWdiTxRestartIndicate)); - + pWdi->txPauseReason &= ~WDI_TX_PAUSE_REASON_CREDIT; PlatformReleaseSpinLock(pAdapter, RT_TX_SPINLOCK); // Before indicate to WDI, release the tx lock. - pWdi->WdiDataApi.TxSendRestartIndication(pWdi->DataPathHandle, - WDI_PORT_ANY, + pWdi->WdiDataApi.TxSendRestartIndication(pWdi->DataPathHandle, + WDI_PORT_ANY, WDI_PEER_ANY, WDI_EXT_TID_UNKNOWN, WDI_TX_PAUSE_REASON_CREDIT); @@ -2749,10 +2751,10 @@ WDI_IndicateFWStalled( PWDI_DATA_STRUCT pWdi = &(pAdapter->pPortCommonInfo->WdiData); NDIS_STATUS_INDICATION statusIndication = {0}; WDI_MESSAGE_HEADER WdiHeader = {0}; - + if(!pWdi->bWdiLEPLDR) return; - + RT_TRACE(COMP_OID_SET, DBG_LOUD, ("==> WDI_IndicateFWStalled\n")); N6_ASSIGN_OBJECT_HEADER( @@ -2818,7 +2820,7 @@ WDI_IndicateGeneralEvent( ) { RT_STATUS rtStatus = RT_STATUS_SUCCESS; - + switch(Event) { default: diff --git a/network/wsk/echosrv/README.md b/network/wsk/echosrv/README.md index 8b93db2d..96cc02d5 100644 --- a/network/wsk/echosrv/README.md +++ b/network/wsk/echosrv/README.md @@ -1,3 +1,13 @@ +<!--- + name: WSK TCP Echo Server + platform: WDM + language: cpp + category: Network + description: A minimal sample driver to demonstrate the usage of the Winsock Kernel (WSK) programming interface. + samplefwlink: http://go.microsoft.com/fwlink/p/?LinkId=617935 +---> + + WSK TCP Echo Server =================== |
