You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Vladimir Ivanov (JIRA)" <ji...@apache.org> on 2006/07/10 15:27:30 UTC
[jira] Commented: (HARMONY-758)
[classlib][security]javax.crypto.spec.CipherOutputStream.write(byte[], 0,
0) throws IllegalStateException while RI does not
[ http://issues.apache.org/jira/browse/HARMONY-758?page=comments#action_12420069 ]
Vladimir Ivanov commented on HARMONY-758:
-----------------------------------------
verified, thanks
> [classlib][security]javax.crypto.spec.CipherOutputStream.write(byte[], 0, 0) throws IllegalStateException while RI does not
> -----------------------------------------------------------------------------------------------------------------------------
>
> Key: HARMONY-758
> URL: http://issues.apache.org/jira/browse/HARMONY-758
> Project: Harmony
> Type: Bug
> Components: Classlib
> Reporter: Vladimir Ivanov
> Assignee: Mikhail Loenko
> Attachments: CipherOutputStreamTest.patch, harmony-758.patch.txt
>
> The Harmony method javax.crypto.spec.CipherOutputStream.write(byte[], 0, 0) throws IllegalStateException while RI does not
> Seems, it related to the issue 757 to add boundary checks before main action.
> ================ test.java =======================
> import javax.crypto.*;
> import java.io.*;
> public class test {
> public static void main (String[] args) {
> try {
> Cipher cf = Cipher.getInstance("DES/CBC/PKCS5Padding");
> NullCipher nc = new NullCipher();
> CipherOutputStream stream1 = new CipherOutputStream(new BufferedOutputStream((OutputStream) null), nc);
> CipherOutputStream stream2 = new CipherOutputStream(stream1, cf);
> CipherOutputStream stream3 = new CipherOutputStream(stream2, nc);
> stream3.write(new byte[] {0}, 0, 0);
> System.out.println("OK");
> } catch (Exception e) {
> e.printStackTrace();
> }
> }
> }
> ==============================================
> Output:
> C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -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))
> OK
> C:\tmp\tmp17>C:\harmony\trunk_0427\deploy\jdk\jre\bin\java.exe -showversion test
> java version 1.5 (subset)
> (c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
> java.lang.IllegalStateException: Cipher has not yet been initialized properly
> at javax.crypto.Cipher.update(Cipher.java:537)
> at javax.crypto.CipherOutputStream.write(CipherOutputStream.java:76)
> at javax.crypto.CipherOutputStream.write(CipherOutputStream.java:68)
> at javax.crypto.CipherOutputStream.write(CipherOutputStream.java:78)
> at test.main(test.java:12)
--
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