diff -r 7cee158cb8cd -r 26b2b12093af javacommons/security/tsrc/javasrc/com/nokia/mj/impl/security/midp/common/SecurityExtensionsTests.java --- a/javacommons/security/tsrc/javasrc/com/nokia/mj/impl/security/midp/common/SecurityExtensionsTests.java Wed Sep 15 12:05:25 2010 +0300 +++ b/javacommons/security/tsrc/javasrc/com/nokia/mj/impl/security/midp/common/SecurityExtensionsTests.java Wed Oct 13 14:23:59 2010 +0300 @@ -48,7 +48,6 @@ public class SecurityExtensionsTests extends TestCase implements InstallerMain { private static String TEST_DATA_DIR; - int assertTrace = 0; static { @@ -129,7 +128,7 @@ SecurityAttributes securityAttributes; AuthenticationCredentials[] credentials; // package names - assertWithTrace(find(SecurityExtensionsReader.getExtProtectedPackages(), new String[] {"com.nokia.ext1.internal.", "com.nokia.ext2.internal."}) + assertTrue(find(SecurityExtensionsReader.getExtProtectedPackages(), new String[] {"com.nokia.ext1.internal.", "com.nokia.ext2.internal."}) && !find(SecurityExtensionsReader.getExtProtectedPackages(), new String[] {"com.nokia.ext1.public."}) && !find(SecurityExtensionsReader.getExtProtectedPackages(), new String[] {"com.nokia.ext2.public."}) && find(SecurityExtensionsReader.getExtRestrictedPackages(), new String[] {"com.nokia.ext1.public.", "com.nokia.ext2.public."}) @@ -137,10 +136,10 @@ && !find(SecurityExtensionsReader.getExtRestrictedPackages(), new String[] {"com.nokia.ext2.internal."})); // mappings MIDPPermission perm = SecurityExtensionsReader.getExtPermission("com.nokia.ext1.public.Ext1Perm"); - assertWithTrace(perm != null && perm.getName() != null && perm.getName().equals("com.nokia.ext1.internal.Ext1Perm") && perm.getTarget() == null && perm.getActionList() == null); - assertWithTrace(SecurityExtensionsReader.getExtPermission("com.nokia.mj.impl.gcf.protocol.socket.SocketPermissionImpl") == null); + assertTrue(perm != null && perm.getName() != null && perm.getName().equals("com.nokia.ext1.internal.Ext1Perm") && perm.getTarget() != null && perm.getTarget().equals("*")&& perm.getActionList() == null); + assertTrue(SecurityExtensionsReader.getExtPermission("com.nokia.mj.impl.gcf.protocol.socket.SocketPermissionImpl") == null); perm = SecurityExtensionsReader.getExtPermission("com.nokia.ext2.public.Ext2Perm"); - assertWithTrace(perm != null && perm.getName() != null && perm.getName().equals("com.nokia.ext2.internal.Ext2Perm") && perm.getTarget() == null && perm.getActionList() == null); + assertTrue(perm != null && perm.getName() != null && perm.getName().equals("com.nokia.ext2.internal.Ext2Perm") && perm.getTarget() != null && perm.getTarget().equals("*")&& perm.getActionList() == null); // policies (unsigned suite, check that ext1 perms are granted and the base permissions were not altered) storage.removeAuthenticationStorageData(appUID); permissionGranter.removeSecurityData(session,appUID); @@ -154,11 +153,9 @@ allAttributes.clear(); allAttributes.put(MIDP_PROFILE_ATTRIBUTE_NAME,new Attribute("",MIDP2)); securityAttributes.addManifestAttributes(allAttributes); - credentials = authenticationModule.authenticateJar(appUID,null,TEST_DATA_DIR + "security_tmp" + System.getProperty("file.separator") + "HelloWorld.jar", false); - authenticationModule.addSecurityData(session, appUID, null); - permissionGranter.grantJarPermissions(appUID, null, securityAttributes.getPermissionAttributes(), credentials); - permissionGranter.addSecurityData(session, appUID, null); - assertWithTrace(checkGrantedPermissions(storage.readGrantedPermissions(appUID), + authenticationModule.authenticateJar(session, appUID,null,TEST_DATA_DIR + "security_tmp" + System.getProperty("file.separator") + "HelloWorld.jar", false); + permissionGranter.grantJarPermissions(session, appUID, null, securityAttributes.getPermissionAttributes()); + assertTrue(checkGrantedPermissions(storage.readGrantedPermissions(appUID), new PolicyBasedPermissionImpl[] { new PolicyBasedPermissionImpl("com.nokia.ext1.internal.Ext1Perm", "ext1.target1", "ext1.action1", new UserSecuritySettingsImpl("Ext1", UserSecuritySettings.ONESHOT_INTERACTION_MODE, new int[] {UserSecuritySettings.ONESHOT_INTERACTION_MODE, UserSecuritySettings.SESSION_INTERACTION_MODE, UserSecuritySettings.BLANKET_INTERACTION_MODE, UserSecuritySettings.NO_INTERACTION_MODE})), @@ -183,11 +180,11 @@ securityAttributes.addDescriptorAttributes(allAttributes); credentials = authenticationModule.authenticateJad(appUID,null,securityAttributes.getAuthenticationAttributes()); permissionGranter.grantJadPermissions(appUID, null, securityAttributes.getPermissionAttributes(), credentials); - assertWithTrace(false); + assertTrue(false); } catch (InvalidAttributeException e) { - assertWithTrace( + assertTrue( e.getOtaStatusCode() == OtaStatusCode.APPLICATION_AUTHORIZATION_FAILURE && e.getShortMessage().equals(errorMessage.get(InstallerErrorMessage.INST_CORRUPT_PKG, null)) && e.getDetailedMessage().equals(detailedErrorMessage.get(InstallerDetailedErrorMessage.ATTR_UNSUPPORTED, @@ -208,11 +205,11 @@ securityAttributes.addDescriptorAttributes(allAttributes); credentials = authenticationModule.authenticateJad(appUID,null,securityAttributes.getAuthenticationAttributes()); permissionGranter.grantJadPermissions(appUID, null, securityAttributes.getPermissionAttributes(), credentials); - assertWithTrace(false); + assertTrue(false); } catch (InvalidAttributeException e) { - assertWithTrace( + assertTrue( e.getOtaStatusCode() == OtaStatusCode.APPLICATION_AUTHORIZATION_FAILURE && e.getShortMessage().equals(errorMessage.get(InstallerErrorMessage.INST_CORRUPT_PKG, null)) && e.getDetailedMessage().equals(detailedErrorMessage.get(InstallerDetailedErrorMessage.ATTR_UNSUPPORTED, @@ -233,11 +230,11 @@ securityAttributes.addDescriptorAttributes(allAttributes); credentials = authenticationModule.authenticateJad(appUID,null,securityAttributes.getAuthenticationAttributes()); permissionGranter.grantJadPermissions(appUID, null, securityAttributes.getPermissionAttributes(), credentials); - assertWithTrace(false); + assertTrue(false); } catch (InvalidAttributeException e) { - assertWithTrace( + assertTrue( e.getOtaStatusCode() == OtaStatusCode.APPLICATION_AUTHORIZATION_FAILURE && e.getShortMessage().equals(errorMessage.get(InstallerErrorMessage.INST_CORRUPT_PKG, null)) && e.getDetailedMessage().equals(detailedErrorMessage.get(InstallerDetailedErrorMessage.ATTR_UNSUPPORTED, @@ -259,11 +256,9 @@ allAttributes.clear(); allAttributes.put(MIDP_PROFILE_ATTRIBUTE_NAME,new Attribute("",MIDP2)); securityAttributes.addManifestAttributes(allAttributes); - credentials = authenticationModule.authenticateJar(appUID,null,TEST_DATA_DIR + "security_tmp" + System.getProperty("file.separator") + "HelloWorld.jar", false); - authenticationModule.addSecurityData(session, appUID, null); - permissionGranter.grantJarPermissions(appUID, null, securityAttributes.getPermissionAttributes(), credentials); - permissionGranter.addSecurityData(session, appUID, null); - assertWithTrace(checkGrantedPermissions(storage.readGrantedPermissions(appUID), + authenticationModule.authenticateJar(session, appUID,null,TEST_DATA_DIR + "security_tmp" + System.getProperty("file.separator") + "HelloWorld.jar", false); + permissionGranter.grantJarPermissions(session, appUID, null, securityAttributes.getPermissionAttributes()); + assertTrue(checkGrantedPermissions(storage.readGrantedPermissions(appUID), new PolicyBasedPermissionImpl[] { new PolicyBasedPermissionImpl("com.nokia.ext2.internal.Ext2Perm", "ext2.target1", "ext2.action1", new UserSecuritySettingsImpl("Ext1", UserSecuritySettings.BLANKET_INTERACTION_MODE, new int[] {UserSecuritySettings.BLANKET_INTERACTION_MODE, UserSecuritySettings.NO_INTERACTION_MODE})), @@ -274,12 +269,6 @@ })); } - private void assertWithTrace(boolean aCondition) - { - assertTrue("" + assertTrace, aCondition); - assertTrace++; - } - private static boolean checkGrantedPermissions(Vector grantedPermissions, PolicyBasedPermissionImpl[] expectedPerms) { if (grantedPermissions == null)