345 boolean permissions_from_mutually_exclusive_list_2 = false; |
345 boolean permissions_from_mutually_exclusive_list_2 = false; |
346 boolean permissions_from_sensitive_combination_list_1 = false; |
346 boolean permissions_from_sensitive_combination_list_1 = false; |
347 boolean permissions_from_sensitive_combination_list_2 = false; |
347 boolean permissions_from_sensitive_combination_list_2 = false; |
348 boolean local_connectivity = false; |
348 boolean local_connectivity = false; |
349 boolean net_access = false; |
349 boolean net_access = false; |
|
350 boolean multimedia = false; |
|
351 boolean read_user_data = false; |
|
352 boolean call_control = false; |
|
353 boolean messaging = false; |
350 Vector blanketPermissions = |
354 Vector blanketPermissions = |
351 new Vector(); |
355 new Vector(); |
352 for (int i=0; i<grantedPermissions.size(); i++) |
356 for (int i=0; i<grantedPermissions.size(); i++) |
353 { |
357 { |
354 PolicyBasedPermission permission = |
358 PolicyBasedPermission permission = |
400 net_access = true; |
404 net_access = true; |
401 } |
405 } |
402 else if (settings.getName().equalsIgnoreCase( |
406 else if (settings.getName().equalsIgnoreCase( |
403 UserSecuritySettings.MESSAGING_SETTINGS) |
407 UserSecuritySettings.MESSAGING_SETTINGS) |
404 || settings.getName().equalsIgnoreCase( |
408 || settings.getName().equalsIgnoreCase( |
405 UserSecuritySettings.RESTRICTED_MESSAGING_SETTINGS) |
409 UserSecuritySettings.RESTRICTED_MESSAGING_SETTINGS)) |
406 || settings.getName().equalsIgnoreCase( |
410 { |
|
411 permissions_from_sensitive_combination_list_1 = true; |
|
412 messaging = true; |
|
413 } |
|
414 else if (settings.getName().equalsIgnoreCase( |
407 UserSecuritySettings.CALL_CONTROL_SETTINGS)) |
415 UserSecuritySettings.CALL_CONTROL_SETTINGS)) |
408 { |
416 { |
409 permissions_from_sensitive_combination_list_1 = true; |
417 permissions_from_sensitive_combination_list_1 = true; |
|
418 call_control = true; |
410 } |
419 } |
411 else if (settings.getName().equalsIgnoreCase( |
420 else if (settings.getName().equalsIgnoreCase( |
412 UserSecuritySettings.LOCAL_CONNECTIVITY_SETTINGS)) |
421 UserSecuritySettings.LOCAL_CONNECTIVITY_SETTINGS)) |
413 { |
422 { |
414 permissions_from_sensitive_combination_list_1 = true; |
423 permissions_from_sensitive_combination_list_1 = true; |
415 local_connectivity = true; |
424 local_connectivity = true; |
416 } |
425 } |
417 else if (settings.getName().equalsIgnoreCase( |
426 else if (settings.getName().equalsIgnoreCase( |
418 UserSecuritySettings.MULTIMEDIA_RECORDING_SETTINGS) |
427 UserSecuritySettings.MULTIMEDIA_RECORDING_SETTINGS)) |
419 || settings.getName().equalsIgnoreCase( |
428 { |
|
429 permissions_from_sensitive_combination_list_2 = true; |
|
430 multimedia = true; |
|
431 } |
|
432 else if (settings.getName().equalsIgnoreCase( |
420 UserSecuritySettings.READ_USER_DATA_ACCESS_SETTINGS)) |
433 UserSecuritySettings.READ_USER_DATA_ACCESS_SETTINGS)) |
421 { |
434 { |
422 permissions_from_sensitive_combination_list_2 = true; |
435 permissions_from_sensitive_combination_list_2 = true; |
|
436 read_user_data = true; |
423 } |
437 } |
424 } |
438 } |
425 if (!defaultNotBlanket) |
439 if (!defaultNotBlanket) |
426 { |
440 { |
427 // none of the granted permissions has the default set to |
441 // none of the granted permissions has the default set to |
440 } |
454 } |
441 // check for sensitive combinations |
455 // check for sensitive combinations |
442 if (permissions_from_sensitive_combination_list_1 |
456 if (permissions_from_sensitive_combination_list_1 |
443 && permissions_from_sensitive_combination_list_2) |
457 && permissions_from_sensitive_combination_list_2) |
444 { |
458 { |
445 String blanketPermissionsDetails = ((local_connectivity && !net_access) ? |
459 String blanketPermissionsDetails = ( |
446 "settings_inst_query_perm_sec" : |
460 ((call_control == true && multimedia == true) |
447 "settings_inst_query_perm_net"); |
461 || (call_control == true && read_user_data == true) |
|
462 || (net_access == true && multimedia == true) |
|
463 || (net_access == true && read_user_data == true) |
|
464 || (messaging == true && multimedia == true) |
|
465 || (messaging == true && read_user_data == true)) ? |
|
466 "settings_inst_query_perm_net" : |
|
467 "settings_inst_query_perm_sec"); |
448 iBlanketPermissionsDetails.put(msUidKey, |
468 iBlanketPermissionsDetails.put(msUidKey, |
449 UserSecuritySettingsImpl.getLocalizedString( |
469 UserSecuritySettingsImpl.getLocalizedString( |
450 blanketPermissionsDetails)); |
470 blanketPermissionsDetails)); |
451 } |
471 } |
452 if (blanketPermissions.size() > 0) |
472 if (blanketPermissions.size() > 0) |