Imported GNU Classpath 0.90

Imported GNU Classpath 0.90
       * scripts/makemake.tcl: LocaleData.java moved to gnu/java/locale.

       * sources.am: Regenerated.
       * gcj/javaprims.h: Regenerated.
       * Makefile.in: Regenerated.
       * gcj/Makefile.in: Regenerated.
       * include/Makefile.in: Regenerated.
       * testsuite/Makefile.in: Regenerated.

       * gnu/java/lang/VMInstrumentationImpl.java: New override.
       * gnu/java/net/local/LocalSocketImpl.java: Likewise.
       * gnu/classpath/jdwp/VMMethod.java: Likewise.
       * gnu/classpath/jdwp/VMVirtualMachine.java: Update to latest
       interface.
       * java/lang/Thread.java: Add UncaughtExceptionHandler.
       * java/lang/reflect/Method.java: Implements GenericDeclaration and
       isSynthetic(),
       * java/lang/reflect/Field.java: Likewise.
       * java/lang/reflect/Constructor.java
       * java/lang/Class.java: Implements Type, GenericDeclaration,
       getSimpleName() and getEnclosing*() methods.
       * java/lang/Class.h: Add new public methods.
       * java/lang/Math.java: Add signum(), ulp() and log10().
       * java/lang/natMath.cc (log10): New function.
       * java/security/VMSecureRandom.java: New override.
       * java/util/logging/Logger.java: Updated to latest classpath
       version.
       * java/util/logging/LogManager.java: New override.

From-SVN: r113887
This commit is contained in:
Mark Wielaard 2006-05-18 17:29:21 +00:00
parent eaec4980e1
commit 4f9533c772
1640 changed files with 126485 additions and 104808 deletions

View file

@ -1,5 +1,5 @@
/* CipherSpi.java -- The cipher service provider interface.
Copyright (C) 2004 Free Software Foundation, Inc.
Copyright (C) 2004, 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@ -38,6 +38,8 @@ exception statement from your version. */
package javax.crypto;
import java.nio.ByteBuffer;
import java.security.AlgorithmParameters;
import java.security.InvalidAlgorithmParameterException;
import java.security.InvalidKeyException;
@ -178,6 +180,31 @@ public abstract class CipherSpi
byte[] output, int outputOffset)
throws IllegalBlockSizeException, BadPaddingException, ShortBufferException;
/**
* @since 1.5
*/
protected int engineDoFinal (ByteBuffer input, ByteBuffer output)
throws BadPaddingException, IllegalBlockSizeException,
ShortBufferException
{
int total = 0;
byte[] inbuf = new byte[256];
while (input.hasRemaining ())
{
int in = Math.min (inbuf.length, input.remaining ());
input.get (inbuf, 0, in);
byte[] outbuf = new byte[engineGetOutputSize (in)];
int out = 0;
if (input.hasRemaining ()) // i.e., we have more 'update' calls
out = engineUpdate (inbuf, 0, in, outbuf, 0);
else
out = engineDoFinal (inbuf, 0, in, outbuf, 0);
output.put (outbuf, 0, out);
total += out;
}
return total;
}
/**
* Returns the block size of the underlying cipher.
*
@ -379,6 +406,26 @@ public abstract class CipherSpi
byte[] output, int outputOffset)
throws ShortBufferException;
/**
* @since 1.5
*/
protected int engineUpdate (ByteBuffer input, ByteBuffer output)
throws ShortBufferException
{
int total = 0;
byte[] inbuf = new byte[256];
while (input.hasRemaining ())
{
int in = Math.min (inbuf.length, input.remaining ());
input.get (inbuf, 0, in);
byte[] outbuf = new byte[engineGetOutputSize (in)];
int out = engineUpdate (inbuf, 0, in, outbuf, 0);
output.put (outbuf, 0, out);
total += out;
}
return total;
}
/**
* <p>Wrap a key.</p>
*