harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexey Petrenko (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HARMONY-1091) [classlib][security] compatibility: DigestOutputStream().write(byte[], -1, 0) throws IllegalArgumentException on HARMONY and IndexOutOfBoundsException on RI
Date Tue, 08 Aug 2006 08:11:14 GMT
     [ http://issues.apache.org/jira/browse/HARMONY-1091?page=all ]

Alexey Petrenko updated HARMONY-1091:
-------------------------------------

    Attachment: HARMONY-1091.diff

java.security.MessageDigest.update throws 3 different exceptions on parameters check.
The patch fixes all of them.

Here is modified testcase:
import java.io.*; 
import java.security.*; 

public class Jira1091Test { 
    public static void main (String[] args) throws Exception { 
        try { 
            new DigestOutputStream(new ByteArrayOutputStream(), MessageDigest.getInstance("SHA")).write(null,
1, 2); 
        } catch (IllegalArgumentException e) { 
            System.err.println("Case 1 passed");
        }
        try { 
            new DigestOutputStream(new ByteArrayOutputStream(), MessageDigest.getInstance("SHA")).write(new
byte[] {1, 1}, -1, 2); 
        } catch (IndexOutOfBoundsException e) { 
            System.err.println("Case 2 passed");
        }
        try { 
            new DigestOutputStream(new ByteArrayOutputStream(), MessageDigest.getInstance("SHA")).write(new
byte[] {1, 1}, 1, 2); 
        } catch (IllegalArgumentException e) { 
            System.err.println("Case 3 passed");
        }
    } 
} 


> [classlib][security] compatibility: DigestOutputStream().write(byte[], -1, 0) throws
IllegalArgumentException on HARMONY and IndexOutOfBoundsException on RI
> ------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-1091
>                 URL: http://issues.apache.org/jira/browse/HARMONY-1091
>             Project: Harmony
>          Issue Type: Bug
>          Components: Classlib
>            Reporter: Vladimir Ivanov
>            Priority: Minor
>         Attachments: DigestOutputStreamTest.patch, HARMONY-1091.diff
>
>
> The method java.security.DigestOutputStream().write(byte[], -1, 0) throws IllegalArgumentException
on HARMONY and IndexOutOfBoundsException on RI
> ================ test.java =========================
> import java.io.*;
> import java.security.*;
> public class test  { 
>     public static void main (String[] args) {   
>       try {
>           new DigestOutputStream(new ByteArrayOutputStream(), MessageDigest.getInstance("SHA")).write(new
byte[] {1, 1}, -1, 0);
>       } catch (Exception e) {
>           e.printStackTrace();
>       } 
>    }
> }
> ================================================
> Output:
> C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -cp . -showversion test
> java version "1.5.0"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75, GC: System
optimized over throughput (initial strategy singleparpar))
> java.lang.IndexOutOfBoundsException
>         at java.io.ByteArrayOutputStream.write(ByteArrayOutputStream.java:89)
>         at java.security.DigestOutputStream.write(DigestOutputStream.java:131)
>         at test.main(test.java:7)
> C:\tmp\tmp17>C:\harmony\trunk_0427\deploy\jdk\jre\bin\java.exe -cp . -showversion
test
> java version 1.5 (subset)
> (c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
> java.lang.IllegalArgumentException: Incorrect offset/len parameters
>         at java.security.MessageDigest.update(MessageDigest.java:169)
>         at java.security.DigestOutputStream.write(DigestOutputStream.java:96)
>         at test.main(test.java:7)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message