Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
drivers
staging
csr
csr_wifi_sme_free_downstream_contents.c
Go to the documentation of this file.
1
/*****************************************************************************
2
3
(c) Cambridge Silicon Radio Limited 2012
4
All rights reserved and confidential information of CSR
5
6
Refer to LICENSE.txt included with this source for details
7
on the license terms.
8
9
*****************************************************************************/
10
11
/* Note: this is an auto-generated file. */
12
#include <linux/slab.h>
13
#include "
csr_wifi_sme_prim.h
"
14
#include "
csr_wifi_sme_lib.h
"
15
16
/*----------------------------------------------------------------------------*
17
* NAME
18
* CsrWifiSmeFreeDownstreamMessageContents
19
*
20
* DESCRIPTION
21
*
22
*
23
* PARAMETERS
24
* eventClass: only the value CSR_WIFI_SME_PRIM will be handled
25
* message: the message to free
26
*----------------------------------------------------------------------------*/
27
void
CsrWifiSmeFreeDownstreamMessageContents
(
u16
eventClass,
void
*
message
)
28
{
29
if
(eventClass !=
CSR_WIFI_SME_PRIM
)
30
{
31
return
;
32
}
33
if
(
NULL
== message)
34
{
35
return
;
36
}
37
38
switch
(*((
CsrWifiSmePrim
*) message))
39
{
40
case
CSR_WIFI_SME_BLACKLIST_REQ
:
41
{
42
CsrWifiSmeBlacklistReq
*
p
= (
CsrWifiSmeBlacklistReq
*)message;
43
kfree
(p->
setAddresses
);
44
p->
setAddresses
=
NULL
;
45
break
;
46
}
47
case
CSR_WIFI_SME_CALIBRATION_DATA_SET_REQ
:
48
{
49
CsrWifiSmeCalibrationDataSetReq
*
p
= (
CsrWifiSmeCalibrationDataSetReq
*)message;
50
kfree
(p->
calibrationData
);
51
p->
calibrationData
=
NULL
;
52
break
;
53
}
54
case
CSR_WIFI_SME_CONNECT_REQ
:
55
{
56
CsrWifiSmeConnectReq
*
p
= (
CsrWifiSmeConnectReq
*)message;
57
kfree
(p->
connectionConfig
.
mlmeAssociateReqInformationElements
);
58
p->
connectionConfig
.
mlmeAssociateReqInformationElements
=
NULL
;
59
break
;
60
}
61
case
CSR_WIFI_SME_MIB_GET_NEXT_REQ
:
62
{
63
CsrWifiSmeMibGetNextReq
*
p
= (
CsrWifiSmeMibGetNextReq
*)message;
64
kfree
(p->
mibAttribute
);
65
p->
mibAttribute
=
NULL
;
66
break
;
67
}
68
case
CSR_WIFI_SME_MIB_GET_REQ
:
69
{
70
CsrWifiSmeMibGetReq
*
p
= (
CsrWifiSmeMibGetReq
*)message;
71
kfree
(p->
mibAttribute
);
72
p->
mibAttribute
=
NULL
;
73
break
;
74
}
75
case
CSR_WIFI_SME_MIB_SET_REQ
:
76
{
77
CsrWifiSmeMibSetReq
*
p
= (
CsrWifiSmeMibSetReq
*)message;
78
kfree
(p->
mibAttribute
);
79
p->
mibAttribute
=
NULL
;
80
break
;
81
}
82
case
CSR_WIFI_SME_MULTICAST_ADDRESS_REQ
:
83
{
84
CsrWifiSmeMulticastAddressReq
*
p
= (
CsrWifiSmeMulticastAddressReq
*)message;
85
kfree
(p->
setAddresses
);
86
p->
setAddresses
=
NULL
;
87
break
;
88
}
89
case
CSR_WIFI_SME_PACKET_FILTER_SET_REQ
:
90
{
91
CsrWifiSmePacketFilterSetReq
*
p
= (
CsrWifiSmePacketFilterSetReq
*)message;
92
kfree
(p->
filter
);
93
p->
filter
=
NULL
;
94
break
;
95
}
96
case
CSR_WIFI_SME_PMKID_REQ
:
97
{
98
CsrWifiSmePmkidReq
*
p
= (
CsrWifiSmePmkidReq
*)message;
99
kfree
(p->
setPmkids
);
100
p->
setPmkids
=
NULL
;
101
break
;
102
}
103
case
CSR_WIFI_SME_SCAN_CONFIG_SET_REQ
:
104
{
105
CsrWifiSmeScanConfigSetReq
*
p
= (
CsrWifiSmeScanConfigSetReq
*)message;
106
kfree
(p->
scanConfig
.
passiveChannelList
);
107
p->
scanConfig
.
passiveChannelList
=
NULL
;
108
break
;
109
}
110
case
CSR_WIFI_SME_SCAN_FULL_REQ
:
111
{
112
CsrWifiSmeScanFullReq
*
p
= (
CsrWifiSmeScanFullReq
*)message;
113
kfree
(p->
ssid
);
114
p->
ssid
=
NULL
;
115
kfree
(p->
channelList
);
116
p->
channelList
=
NULL
;
117
kfree
(p->
probeIe
);
118
p->
probeIe
=
NULL
;
119
break
;
120
}
121
case
CSR_WIFI_SME_TSPEC_REQ
:
122
{
123
CsrWifiSmeTspecReq
*
p
= (
CsrWifiSmeTspecReq
*)message;
124
kfree
(p->
tspec
);
125
p->
tspec
=
NULL
;
126
kfree
(p->
tclas
);
127
p->
tclas
=
NULL
;
128
break
;
129
}
130
case
CSR_WIFI_SME_WIFI_FLIGHTMODE_REQ
:
131
{
132
CsrWifiSmeWifiFlightmodeReq
*
p
= (
CsrWifiSmeWifiFlightmodeReq
*)message;
133
{
134
u16
i1;
135
for
(i1 = 0; i1 < p->
mibFilesCount
; i1++)
136
{
137
kfree
(p->
mibFiles
[i1].
data
);
138
p->
mibFiles
[i1].
data
=
NULL
;
139
}
140
}
141
kfree
(p->
mibFiles
);
142
p->
mibFiles
=
NULL
;
143
break
;
144
}
145
case
CSR_WIFI_SME_WIFI_ON_REQ
:
146
{
147
CsrWifiSmeWifiOnReq
*
p
= (
CsrWifiSmeWifiOnReq
*)message;
148
{
149
u16
i1;
150
for
(i1 = 0; i1 < p->
mibFilesCount
; i1++)
151
{
152
kfree
(p->
mibFiles
[i1].
data
);
153
p->
mibFiles
[i1].
data
=
NULL
;
154
}
155
}
156
kfree
(p->
mibFiles
);
157
p->
mibFiles
=
NULL
;
158
break
;
159
}
160
case
CSR_WIFI_SME_CLOAKED_SSIDS_SET_REQ
:
161
{
162
CsrWifiSmeCloakedSsidsSetReq
*
p
= (
CsrWifiSmeCloakedSsidsSetReq
*)message;
163
kfree
(p->
cloakedSsids
.
cloakedSsids
);
164
p->
cloakedSsids
.
cloakedSsids
=
NULL
;
165
break
;
166
}
167
case
CSR_WIFI_SME_WPS_CONFIGURATION_REQ
:
168
{
169
CsrWifiSmeWpsConfigurationReq
*
p
= (
CsrWifiSmeWpsConfigurationReq
*)message;
170
kfree
(p->
wpsConfig
.
secondaryDeviceType
);
171
p->
wpsConfig
.
secondaryDeviceType
=
NULL
;
172
break
;
173
}
174
case
CSR_WIFI_SME_SET_REQ
:
175
{
176
CsrWifiSmeSetReq
*
p
= (
CsrWifiSmeSetReq
*)message;
177
kfree
(p->
data
);
178
p->
data
=
NULL
;
179
break
;
180
}
181
182
default
:
183
break
;
184
}
185
}
186
187
Generated on Thu Jan 10 2013 14:27:47 for Linux Kernel by
1.8.2