2 // Open Service Platform
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
5 // Licensed under the Apache License, Version 2.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
9 // http://www.apache.org/licenses/LICENSE-2.0
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
19 * @file FSec_AccessControlTypes.h
20 * @brief This is the header file for the _AccessControl.
21 * This header file contains the declarations of the _AccessControl.
24 #ifndef _FSEC_INTERNAL_ACCESS_CONTROL_TYPES_H_
25 #define _FSEC_INTERNAL_ACCESS_CONTROL_TYPES_H_
27 #include <FAppTypes.h>
28 #include <FBaseInternalTypes.h>
30 namespace Tizen { namespace Security
36 _PRV_APPLICATION_KILL,
37 _PRV_APPLICATION_LAUNCH,
38 _PRV_APPMANAGER_LAUNCH,
41 _PRV_AUDIOMANAGER_ROUTE,
42 _PRV_AUDIOMANAGER_SESSION,
43 _PRV_AUDIOMANAGER_VOIPSESSION,
47 _PRV_BLUETOOTH_HEALTH,
50 _PRV_BLUETOOTHMANAGER,
54 _PRV_CALLHISTORY_READ,
55 _PRV_CALLHISTORY_WRITE,
58 _PRV_CERTIFICATE_READ,
59 _PRV_CERTIFICATE_WRITE,
64 _PRV_CUSTOMNETACCOUNT,
77 _PRV_NETWORK_CONNECTION,
78 _PRV_NETWORK_STATISTICS_READ,
79 _PRV_NETWORK_STATISTICS_WRITE,
82 _PRV_NFC_CARDEMULATION,
87 _PRV_NOTIFICATIONMANAGER,
89 _PRV_PACKAGELICENSEMANAGER,
90 _PRV_PACKAGEMANAGER_INSTALL,
99 _PRV_SYSTEMSETTING_READ,
100 _PRV_SYSTEMSETTING_WRITE,
101 _PRV_TELEPHONYMANAGER,
111 _PRV_WIFI_WIFIDIRECT_ADMIN,
112 _PRV_WIFI_WIFIDIRECT_READ,
114 _PRV_APPWIDGETPROVIDER_INSTALL,
117 _PRV_USERPROFILE_READ,
118 _PRV_USERPROFILE_WRITE,
120 _PRV_NETSTATISTICSMANAGER,
121 _PRV_NETWORK_STATISTICS,
125 _PRV_GEOLOCATIONPERMISSION_READ,
126 _PRV_GEOLOCATIONPERMISSION_WRITE,
128 _PRV_SHORTCUT_INSTALL,
129 _PRV_APPMANAGER_KILL,
130 _PRV_PRIVILEGEMANAGER_READ,
131 _PRV_PRIVACYMANAGER_READ,
132 _PRV_PRIVACYMANAGER_WRITE,
139 const wchar_t* privilegeString;
140 _Privilege privilege;
142 } _PrivilegeStringList;
144 const static _PrivilegeStringList privilegeListTable[_MAX_PRIVILEGE_ENUM] =
146 {L"alarm", _PRV_ALARM},
147 {L"application.kill", _PRV_APPLICATION_KILL},
148 {L"application.launch", _PRV_APPLICATION_LAUNCH},
149 {L"appmanager.launch", _PRV_APPMANAGER_LAUNCH},
150 {L"appsetting", _PRV_APPSETTING},
151 {L"appusage", _PRV_APPUSAGE},
152 {L"audiomanager.route", _PRV_AUDIOMANAGER_ROUTE},
153 {L"audiomanager.session", _PRV_AUDIOMANAGER_SESSION},
154 {L"audiomanager.voipsession", _PRV_AUDIOMANAGER_VOIPSESSION},
155 {L"audiorecorder", _PRV_AUDIORECORDER},
156 {L"bluetooth.admin", _PRV_BLUETOOTH_ADMIN},
157 {L"bluetooth.gap", _PRV_BLUETOOTH_GAP},
158 {L"bluetooth.health", _PRV_BLUETOOTH_HEALTH},
159 {L"bluetooth.opp", _PRV_BLUETOOTH_OPP},
160 {L"bluetooth.spp", _PRV_BLUETOOTH_SPP},
161 {L"bluetoothmanager", _PRV_BLUETOOTHMANAGER},
162 {L"calendar.read", _PRV_CALENDAR_READ},
163 {L"calendar.write", _PRV_CALENDAR_WRITE},
164 {L"callforward", _PRV_CALLFORWARD},
165 {L"callhistory.read", _PRV_CALLHISTORY_READ},
166 {L"callhistory.write", _PRV_CALLHISTORY_WRITE},
167 {L"camera", _PRV_CAMERA},
168 {L"cellbroadcast", _PRV_CELLBROADCAST},
169 {L"certificate.read", _PRV_CERTIFICATE_READ},
170 {L"certificate.write", _PRV_CERTIFICATE_WRITE},
171 {L"contact.read", _PRV_CONTACT_READ},
172 {L"contact.write", _PRV_CONTACT_WRITE},
173 {L"content.read", _PRV_CONTENT_READ},
174 {L"content.write", _PRV_CONTENT_WRITE},
175 {L"customnetaccount", _PRV_CUSTOMNETACCOUNT},
177 {L"download", _PRV_DOWNLOAD},
178 {L"drmservice", _PRV_DRMSERVICE},
179 {L"http", _PRV_HTTP},
181 {L"imemanager", _PRV_IMEMANAGER},
182 {L"inputmanager", _PRV_INPUTMANAGER},
183 {L"location", _PRV_LOCATION},
184 {L"messaging.email", _PRV_MESSAGING_EMAIL},
185 {L"messaging.mms", _PRV_MESSAGING_MMS},
186 {L"messaging.sms", _PRV_MESSAGING_SMS},
187 {L"network.account", _PRV_NETWORK_ACCOUNT},
188 {L"network.connection", _PRV_NETWORK_CONNECTION},
189 {L"network.statistics.read", _PRV_NETWORK_STATISTICS_READ},
190 {L"network.statistics.write", _PRV_NETWORK_STATISTICS_WRITE},
191 {L"networkmanager", _PRV_NETWORKMANAGER},
192 {L"nfc.admin", _PRV_NFC_ADMIN},
193 {L"nfc.cardemulation", _PRV_NFC_CARDEMULATION},
194 {L"nfc.common", _PRV_NFC_COMMON},
195 {L"nfc.p2p", _PRV_NFC_P2P},
196 {L"nfc.tag", _PRV_NFC_TAG},
197 {L"notification", _PRV_NOTIFICATION},
198 {L"notificationmanager", _PRV_NOTIFICATIONMANAGER},
199 {L"packageinfo", _PRV_PACKAGEINFO},
200 {L"packagelicensemanager", _PRV_PACKAGELICENSEMANAGER},
201 {L"packagemanager.install", _PRV_PACKAGEMANAGER_INSTALL},
202 {L"packagesetting", _PRV_PACKAGESETTING},
203 {L"platforminfo", _PRV_PLATFORMINFO},
204 {L"power", _PRV_POWER},
205 {L"push", _PRV_PUSH},
206 {L"setting", _PRV_SETTING},
207 {L"smstrigger", _PRV_SMSTRIGGER},
208 {L"socket", _PRV_SOCKET},
209 {L"systeminfo", _PRV_SYSTEMINFO},
210 {L"systemsetting.read", _PRV_SYSTEMSETTING_READ},
211 {L"systemsetting.write", _PRV_SYSTEMSETTING_WRITE},
212 {L"telephonymanager", _PRV_TELEPHONYMANAGER},
213 {L"uimanager", _PRV_UIMANAGER},
214 {L"useridentity", _PRV_USERIDENTITY},
215 {L"vibrator", _PRV_VIBRATOR},
216 {L"videorecorder", _PRV_VIDEORECORDER},
217 {L"wappush", _PRV_WAPPUSH},
218 {L"web.privacy", _PRV_WEB_PRIVACY},
219 {L"web.service", _PRV_WEB_SERVICE},
220 {L"wifi.admin", _PRV_WIFI_ADMIN},
221 {L"wifi.read", _PRV_WIFI_READ},
222 {L"wifi.wifidirect.admin", _PRV_WIFI_WIFIDIRECT_ADMIN},
223 {L"wifi.wifidirect.read", _PRV_WIFI_WIFIDIRECT_READ},
224 {L"wifimanager", _PRV_WIFIMANAGER},
225 {L"appwidgetprovider.install", _PRV_APPWIDGETPROVIDER_INSTALL},
226 {L"account.read", _PRV_ACCOUNT_READ},
227 {L"account.write", _PRV_ACCOUNT_WRITE},
228 {L"userprofile.read", _PRV_USERPROFILE_READ},
229 {L"userprofile.write", _PRV_USERPROFILE_WRITE},
230 {L"telephony", _PRV_TELEPHONY},
231 {L"netstatisticsmanager", _PRV_NETSTATISTICSMANAGER},
232 {L"network.statistics", _PRV_NETWORK_STATISTICS},
233 {L"nfcmanager", _PRV_NFCMANAGER},
234 {L"bookmark.read", _PRV_BOOKMARK_READ},
235 {L"bookmark.write", _PRV_BOOKMARK_WRITE},
236 {L"geolocationpermission.read", _PRV_GEOLOCATIONPERMISSION_READ},
237 {L"geolocationpermission.write", _PRV_GEOLOCATIONPERMISSION_WRITE},
238 {L"lockmanager", _PRV_LOCKMANAGER},
239 {L"shortcut.install", _PRV_SHORTCUT_INSTALL},
240 {L"appmanager.kill", _PRV_APPMANAGER_KILL},
241 {L"privilegemanager.read", _PRV_PRIVILEGEMANAGER_READ},
242 {L"privacymanager.read", _PRV_PRIVACYMANAGER_READ},
243 {L"privacymanager.write", _PRV_PRIVACYMANAGER_WRITE},
244 {L"antivirus", _PRV_ANTIVIRUS},
247 enum _PrivilegeApiVersion
249 _PRV_API_VER_2_0 = 0,
253 const static Tizen::Base::_ApiVisibility visibilityLevelListTable[_MAX_PRIVILEGE_ENUM][_PRV_API_VER_MAX] =
255 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // alarm
256 { Tizen::Base::_API_VISIBILITY_PARTNER }, // application.kill
257 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // application.launch
258 { Tizen::Base::_API_VISIBILITY_PARTNER }, // appmanager.launch
259 { Tizen::Base::_API_VISIBILITY_PARTNER }, // appsetting
260 { Tizen::Base::_API_VISIBILITY_PARTNER }, // appusage
261 { Tizen::Base::_API_VISIBILITY_PARTNER }, // audiomanager.route
262 { Tizen::Base::_API_VISIBILITY_PARTNER }, // audiomanager.session
263 { Tizen::Base::_API_VISIBILITY_PARTNER }, // audiomanager.voipsession
264 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // audiorecorder
265 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // bluetooth.admin
266 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // bluetooth.gap
267 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // bluetooth.health
268 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // bluetooth.opp
269 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // bluetooth.spp
270 { Tizen::Base::_API_VISIBILITY_PARTNER_MANUFACTURER }, // bluetoothmanager
271 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // calendar.read
272 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // calendar.write
273 { Tizen::Base::_API_VISIBILITY_PARTNER_OPERATOR }, // callforward
274 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // callhistory.read
275 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // callhistory.write
276 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // camera
277 { Tizen::Base::_API_VISIBILITY_PARTNER_OPERATOR }, // cellbroadcast
278 { Tizen::Base::_API_VISIBILITY_PARTNER }, // certificate.read
279 { Tizen::Base::_API_VISIBILITY_PARTNER }, // certificate.write
280 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // contact.read
281 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // contact.write
282 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // content.read
283 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // content.write
284 { Tizen::Base::_API_VISIBILITY_PARTNER }, // customnetaccount
285 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // dns
286 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // download
287 { Tizen::Base::_API_VISIBILITY_PARTNER_OPERATOR }, // drmservice
288 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // http
289 { Tizen::Base::_API_VISIBILITY_PARTNER }, // ime
290 { Tizen::Base::_API_VISIBILITY_PARTNER_MANUFACTURER }, // imemanager
291 { Tizen::Base::_API_VISIBILITY_PARTNER_MANUFACTURER }, // inputmanager
292 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // location
293 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // messaging.email
294 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // messaging.mms
295 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // messaging.sms
296 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // network.account
297 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // network.connection
298 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // network.statistics.read
299 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // network.statistics.write
300 { Tizen::Base::_API_VISIBILITY_PARTNER_MANUFACTURER }, // networkmanager
301 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // nfc.admin
302 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // nfc.cardemulation
303 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // nfc.common
304 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // nfc.p2p
305 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // nfc.tag
306 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // notification
307 { Tizen::Base::_API_VISIBILITY_PARTNER }, // notificationmanager
308 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // packageinfo
309 { Tizen::Base::_API_VISIBILITY_PARTNER_OPERATOR }, // packagelicensemanager
310 { Tizen::Base::_API_VISIBILITY_PARTNER_OPERATOR }, // packagemanager.install
311 { Tizen::Base::_API_VISIBILITY_PARTNER_MANUFACTURER }, // packagesetting
312 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // platforminfo
313 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // power
314 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // push
315 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // setting
316 { Tizen::Base::_API_VISIBILITY_PARTNER }, // smstrigger
317 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // socket
318 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // systeminfo
319 { Tizen::Base::_API_VISIBILITY_PARTNER_MANUFACTURER }, // systemsetting.read
320 { Tizen::Base::_API_VISIBILITY_PARTNER_MANUFACTURER }, // systemsetting.write
321 { Tizen::Base::_API_VISIBILITY_PARTNER_MANUFACTURER }, // telephonymanager
322 { Tizen::Base::_API_VISIBILITY_PARTNER_OPERATOR }, // uimanager
323 { Tizen::Base::_API_VISIBILITY_PARTNER }, // useridentity
324 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // vibrator
325 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // videorecorder
326 { Tizen::Base::_API_VISIBILITY_PARTNER_OPERATOR }, // wappush
327 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // web.privacy
328 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // web.service
329 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // wifi.admin
330 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // wifi.read
331 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // wifi.wifidirect.admin
332 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // wifi.wifidirect.read
333 { Tizen::Base::_API_VISIBILITY_PARTNER_MANUFACTURER }, // wifimanager
334 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // appwidgetprovider.install
335 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // account.read
336 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // account.write
337 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // userprofile.read
338 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // userprofile.write
339 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // telephony
340 { Tizen::Base::_API_VISIBILITY_PARTNER_MANUFACTURER }, // netstatisticsmanager
341 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // network.statistics
342 { Tizen::Base::_API_VISIBILITY_PARTNER_MANUFACTURER }, // nfcmanager
343 { Tizen::Base::_API_VISIBILITY_PARTNER_MANUFACTURER }, // bookmark.read
344 { Tizen::Base::_API_VISIBILITY_PARTNER_MANUFACTURER }, // bookmark.write
345 { Tizen::Base::_API_VISIBILITY_PARTNER_MANUFACTURER }, // geolocationpermission.read
346 { Tizen::Base::_API_VISIBILITY_PARTNER_MANUFACTURER }, // geolocationpermission.write
347 { Tizen::Base::_API_VISIBILITY_PARTNER }, // lockmanager
348 { Tizen::Base::_API_VISIBILITY_PUBLIC }, // shortcut.install
349 { Tizen::Base::_API_VISIBILITY_PARTNER }, // appmanager.kill
350 { Tizen::Base::_API_VISIBILITY_PARTNER }, // privilegemanager.read
351 { Tizen::Base::_API_VISIBILITY_PARTNER_MANUFACTURER }, // privacymanager.read
352 { Tizen::Base::_API_VISIBILITY_PARTNER_MANUFACTURER }, // privacymanager.write
353 { Tizen::Base::_API_VISIBILITY_PARTNER_MANUFACTURER }, // antivirus
362 const static _PrivilegeLevel privilegeLevelListTable[_MAX_PRIVILEGE_ENUM][_PRV_API_VER_MAX] =
364 { _PRV_LEVEL_USER }, // alarm
365 { _PRV_LEVEL_SYSTEM }, // application.kill
366 { _PRV_LEVEL_USER }, // application.launch
367 { _PRV_LEVEL_SYSTEM }, // appmanager.launch
368 { _PRV_LEVEL_USER }, // appsetting
369 { _PRV_LEVEL_USER }, // appusage
370 { _PRV_LEVEL_USER }, // audiomanager.route
371 { _PRV_LEVEL_USER }, // audiomanager.session
372 { _PRV_LEVEL_USER }, // audiomanager.voipsession
373 { _PRV_LEVEL_USER }, // audiorecorder
374 { _PRV_LEVEL_USER }, // bluetooth.admin
375 { _PRV_LEVEL_USER }, // bluetooth.gap
376 { _PRV_LEVEL_USER }, // bluetooth.health
377 { _PRV_LEVEL_USER }, // bluetooth.opp
378 { _PRV_LEVEL_USER }, // bluetooth.spp
379 { _PRV_LEVEL_SYSTEM }, // bluetoothmanager
380 { _PRV_LEVEL_USER }, // calendar.read
381 { _PRV_LEVEL_USER }, // calendar.write
382 { _PRV_LEVEL_SYSTEM }, // callforward
383 { _PRV_LEVEL_USER }, // callhistory.read
384 { _PRV_LEVEL_USER }, // callhistory.write
385 { _PRV_LEVEL_USER }, // camera
386 { _PRV_LEVEL_USER }, // cellbroadcast
387 { _PRV_LEVEL_SYSTEM }, // certificate.read
388 { _PRV_LEVEL_SYSTEM }, // certificate.write
389 { _PRV_LEVEL_USER }, // contact.read
390 { _PRV_LEVEL_USER }, // contact.write
391 { _PRV_LEVEL_USER }, // content.read
392 { _PRV_LEVEL_USER }, // content.write
393 { _PRV_LEVEL_USER }, // customnetaccount
394 { _PRV_LEVEL_USER }, // dns
395 { _PRV_LEVEL_USER }, // download
396 { _PRV_LEVEL_USER }, // drmservice
397 { _PRV_LEVEL_USER }, // http
398 { _PRV_LEVEL_USER }, // ime
399 { _PRV_LEVEL_SYSTEM }, // imemanager
400 { _PRV_LEVEL_USER }, // inputmanager
401 { _PRV_LEVEL_USER }, // location
402 { _PRV_LEVEL_USER }, // messaging.email
403 { _PRV_LEVEL_USER }, // messaging.mms
404 { _PRV_LEVEL_USER }, // messaging.sms
405 { _PRV_LEVEL_USER }, // network.account
406 { _PRV_LEVEL_USER }, // network.connection
407 { _PRV_LEVEL_USER }, // network.statistics.read
408 { _PRV_LEVEL_USER }, // network.statistics.write
409 { _PRV_LEVEL_SYSTEM }, // networkmanager
410 { _PRV_LEVEL_USER }, // nfc.admin
411 { _PRV_LEVEL_USER }, // nfc.cardemulation
412 { _PRV_LEVEL_USER }, // nfc.common
413 { _PRV_LEVEL_USER }, // nfc.p2p
414 { _PRV_LEVEL_USER }, // nfc.tag
415 { _PRV_LEVEL_USER }, // notification
416 { _PRV_LEVEL_USER }, // notificationmanager
417 { _PRV_LEVEL_USER }, // packageinfo
418 { _PRV_LEVEL_USER }, // packagelicensemanager
419 { _PRV_LEVEL_SYSTEM }, // packagemanager.install
420 { _PRV_LEVEL_USER }, // packagesetting
421 { _PRV_LEVEL_USER }, // platforminfo
422 { _PRV_LEVEL_USER }, // power
423 { _PRV_LEVEL_USER }, // push
424 { _PRV_LEVEL_USER }, // setting
425 { _PRV_LEVEL_USER }, // smstrigger
426 { _PRV_LEVEL_USER }, // socket
427 { _PRV_LEVEL_USER }, // systeminfo
428 { _PRV_LEVEL_SYSTEM }, // systemsetting.read
429 { _PRV_LEVEL_SYSTEM }, // systemsetting.write
430 { _PRV_LEVEL_SYSTEM }, // telephonymanager
431 { _PRV_LEVEL_SYSTEM }, // uimanager
432 { _PRV_LEVEL_SYSTEM }, // useridentity
433 { _PRV_LEVEL_USER }, // vibrator
434 { _PRV_LEVEL_USER }, // videorecorder
435 { _PRV_LEVEL_USER }, // wappush
436 { _PRV_LEVEL_USER }, // web.privacy
437 { _PRV_LEVEL_USER }, // web.service
438 { _PRV_LEVEL_USER }, // wifi.admin
439 { _PRV_LEVEL_USER }, // wifi.read
440 { _PRV_LEVEL_USER }, // wifi.wifidirect.admin
441 { _PRV_LEVEL_USER }, // wifi.wifidirect.read
442 { _PRV_LEVEL_SYSTEM }, // wifimanager
443 { _PRV_LEVEL_USER }, // appwidgetprovider.install
444 { _PRV_LEVEL_USER }, // account.read
445 { _PRV_LEVEL_USER }, // account.write
446 { _PRV_LEVEL_USER }, // userprofile.read
447 { _PRV_LEVEL_USER }, // userprofile.write
448 { _PRV_LEVEL_USER }, // telephony
449 { _PRV_LEVEL_SYSTEM }, // netstatisticsmanager
450 { _PRV_LEVEL_USER }, // network.statistics
451 { _PRV_LEVEL_SYSTEM }, // nfcmanager
452 { _PRV_LEVEL_SYSTEM }, // bookmark.read
453 { _PRV_LEVEL_SYSTEM }, // bookmark.write
454 { _PRV_LEVEL_SYSTEM }, // geolocationpermission.read
455 { _PRV_LEVEL_SYSTEM }, // geolocationpermission.write
456 { _PRV_LEVEL_USER }, // lockmanager
457 { _PRV_LEVEL_USER }, // shortcut.install
458 { _PRV_LEVEL_SYSTEM }, // appmanager.kill
459 { _PRV_LEVEL_SYSTEM }, // privilegemanager.read
460 { _PRV_LEVEL_SYSTEM }, // privacymanager.read
461 { _PRV_LEVEL_SYSTEM }, // privacymanager.write
462 { _PRV_LEVEL_SYSTEM }, // antivirus
465 const int MAX_BITWISE_PRIV_SIZE = (((_MAX_PRIVILEGE_ENUM - 1) / 32) + 1) * 4;
466 const int MAX_APP_ID_SIZE = 10;
467 const int MAX_CACHE_SIZE = 20;
468 const int MAX_ACTIVE_CACHE_SIZE = 5;
470 const int _KEY_LEN = 16;
471 const int _IV_LEN = 16;
472 const int _BITS_IN_BYTE = 8;
477 #endif // _FSEC_INTERNAL_ACCESS_CONTROL_TYPES_H_