/***************************************************************************** (c) Cambridge Silicon Radio Limited 2012 All rights reserved and confidential information of CSR Refer to LICENSE.txt included with this source for details on the license terms. *****************************************************************************/ /* Note: this is an auto-generated file. */ #include #include "csr_wifi_sme_prim.h" #include "csr_wifi_sme_lib.h" /*----------------------------------------------------------------------------* * NAME * CsrWifiSmeFreeDownstreamMessageContents * * DESCRIPTION * * * PARAMETERS * eventClass: only the value CSR_WIFI_SME_PRIM will be handled * message: the message to free *----------------------------------------------------------------------------*/ void CsrWifiSmeFreeDownstreamMessageContents(u16 eventClass, void *message) { if (eventClass != CSR_WIFI_SME_PRIM) { return; } if (NULL == message) { return; } switch (*((CsrWifiSmePrim *) message)) { case CSR_WIFI_SME_BLACKLIST_REQ: { CsrWifiSmeBlacklistReq *p = (CsrWifiSmeBlacklistReq *)message; kfree(p->setAddresses); p->setAddresses = NULL; break; } case CSR_WIFI_SME_CALIBRATION_DATA_SET_REQ: { CsrWifiSmeCalibrationDataSetReq *p = (CsrWifiSmeCalibrationDataSetReq *)message; kfree(p->calibrationData); p->calibrationData = NULL; break; } case CSR_WIFI_SME_CONNECT_REQ: { CsrWifiSmeConnectReq *p = (CsrWifiSmeConnectReq *)message; kfree(p->connectionConfig.mlmeAssociateReqInformationElements); p->connectionConfig.mlmeAssociateReqInformationElements = NULL; break; } case CSR_WIFI_SME_MIB_GET_NEXT_REQ: { CsrWifiSmeMibGetNextReq *p = (CsrWifiSmeMibGetNextReq *)message; kfree(p->mibAttribute); p->mibAttribute = NULL; break; } case CSR_WIFI_SME_MIB_GET_REQ: { CsrWifiSmeMibGetReq *p = (CsrWifiSmeMibGetReq *)message; kfree(p->mibAttribute); p->mibAttribute = NULL; break; } case CSR_WIFI_SME_MIB_SET_REQ: { CsrWifiSmeMibSetReq *p = (CsrWifiSmeMibSetReq *)message; kfree(p->mibAttribute); p->mibAttribute = NULL; break; } case CSR_WIFI_SME_MULTICAST_ADDRESS_REQ: { CsrWifiSmeMulticastAddressReq *p = (CsrWifiSmeMulticastAddressReq *)message; kfree(p->setAddresses); p->setAddresses = NULL; break; } case CSR_WIFI_SME_PACKET_FILTER_SET_REQ: { CsrWifiSmePacketFilterSetReq *p = (CsrWifiSmePacketFilterSetReq *)message; kfree(p->filter); p->filter = NULL; break; } case CSR_WIFI_SME_PMKID_REQ: { CsrWifiSmePmkidReq *p = (CsrWifiSmePmkidReq *)message; kfree(p->setPmkids); p->setPmkids = NULL; break; } case CSR_WIFI_SME_SCAN_CONFIG_SET_REQ: { CsrWifiSmeScanConfigSetReq *p = (CsrWifiSmeScanConfigSetReq *)message; kfree(p->scanConfig.passiveChannelList); p->scanConfig.passiveChannelList = NULL; break; } case CSR_WIFI_SME_SCAN_FULL_REQ: { CsrWifiSmeScanFullReq *p = (CsrWifiSmeScanFullReq *)message; kfree(p->ssid); p->ssid = NULL; kfree(p->channelList); p->channelList = NULL; kfree(p->probeIe); p->probeIe = NULL; break; } case CSR_WIFI_SME_TSPEC_REQ: { CsrWifiSmeTspecReq *p = (CsrWifiSmeTspecReq *)message; kfree(p->tspec); p->tspec = NULL; kfree(p->tclas); p->tclas = NULL; break; } case CSR_WIFI_SME_WIFI_FLIGHTMODE_REQ: { CsrWifiSmeWifiFlightmodeReq *p = (CsrWifiSmeWifiFlightmodeReq *)message; { u16 i1; for (i1 = 0; i1 < p->mibFilesCount; i1++) { kfree(p->mibFiles[i1].data); p->mibFiles[i1].data = NULL; } } kfree(p->mibFiles); p->mibFiles = NULL; break; } case CSR_WIFI_SME_WIFI_ON_REQ: { CsrWifiSmeWifiOnReq *p = (CsrWifiSmeWifiOnReq *)message; { u16 i1; for (i1 = 0; i1 < p->mibFilesCount; i1++) { kfree(p->mibFiles[i1].data); p->mibFiles[i1].data = NULL; } } kfree(p->mibFiles); p->mibFiles = NULL; break; } case CSR_WIFI_SME_CLOAKED_SSIDS_SET_REQ: { CsrWifiSmeCloakedSsidsSetReq *p = (CsrWifiSmeCloakedSsidsSetReq *)message; kfree(p->cloakedSsids.cloakedSsids); p->cloakedSsids.cloakedSsids = NULL; break; } case CSR_WIFI_SME_WPS_CONFIGURATION_REQ: { CsrWifiSmeWpsConfigurationReq *p = (CsrWifiSmeWpsConfigurationReq *)message; kfree(p->wpsConfig.secondaryDeviceType); p->wpsConfig.secondaryDeviceType = NULL; break; } case CSR_WIFI_SME_SET_REQ: { CsrWifiSmeSetReq *p = (CsrWifiSmeSetReq *)message; kfree(p->data); p->data = NULL; break; } default: break; } }