Hello Stepan,

It's really too late for me to reply :-( ... I've tried your patch and run all tests on both windows xp and red hat linux, IBM VME.

It seems that it has passed the o.a.h.rmi.RegistryTest on both platforms. As for LogManagerTest, now it has already been excluded in the logging module. So is it possible that the crash you have encountered is due to other problems (such as Harmony-3075 and Harmony-3142)?

Pls correct me if I'm wrong. Thanks.

Stepan Mishura (JIRA) wrote:
     [ 
https://issues.apache.org/jira/browse/HARMONY-2910?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Stepan Mishura updated HARMONY-2910:
------------------------------------

    Attachment: Harmony-2910.diff

Hi Ruth,

Sorry for delay with response. You update looks OK for me. I just modified 
CodeSource recreation and moved it to PolicyEntry.impliesCodeSource(). Also I 
simplified PolicyUtils.normalizeURL().

But simplification of normalizeURL() method I've discovered one more problem in 
security code. If you run a refreshed patch (from Feb 06) you will see tests 
crashes:
org.apache.harmony.logging.tests.java.util.logging.LogManagerTest
org.apache.harmony.rmi.RegistryTest

It looks like there is a cyclic dependency in security code. So I'm going to 
wait with the patch applying until the cyclic dependency is investigated and 
resolved.

Thoughts?

Thanks,
Stepan.


[classlib][security] Harmony cannot identify 'codeBase' feature in policy file
------------------------------------------------------------------------------

                Key: HARMONY-2910
                URL: https://issues.apache.org/jira/browse/HARMONY-2910
            Project: Harmony
         Issue Type: Bug
         Components: Classlib
           Reporter: Ruth Cao
        Assigned To: Stepan Mishura
        Attachments: Harmony-2910-2.zip, Harmony-2910.diff, Harmony-2910.diff, 
Harmony-2910.diff, regressionTest2910.txt


create a simple policy file and then run PolicyTest  with the argument and the 
policy file[1] as following on Windows XP:
-Dtest.bin.dir=c:\api\ -Djava.security.policy=<policy file path>
public class PolicyTest {       
        public static void main(String[] args) throws Exception {
                Policy p = Policy.getPolicy();
                ProtectionDomain pd = new ProtectionDomain(new CodeSource(new 
URL(
                                "file:/c:/api/*"), 
(java.security.cert.Certificate[]) null), null);
                PermissionCollection pCollection = p.getPermissions(pd);
                Enumeration<Permission> elements = pCollection.elements();
                while (elements.hasMoreElements()) {
                        if(elements.nextElement().equals(new AllPermission())){
                                System.out.println("contains AllPermission");
                        }
                }
        }
}
RI prints:
contains AllPermission
while Harmony prints nothing.
[1]
grant codeBase "file:${test.bin.dir}/-" {
permission java.security.AllPermission; };


Reply via email to