summaryrefslogtreecommitdiff
path: root/libjava/gnu/javax/crypto/cipher
diff options
context:
space:
mode:
authorupstream source tree <ports@midipix.org>2015-03-15 20:14:05 -0400
committerupstream source tree <ports@midipix.org>2015-03-15 20:14:05 -0400
commit554fd8c5195424bdbcabf5de30fdc183aba391bd (patch)
tree976dc5ab7fddf506dadce60ae936f43f58787092 /libjava/gnu/javax/crypto/cipher
downloadcbb-gcc-4.6.4-554fd8c5195424bdbcabf5de30fdc183aba391bd.tar.bz2
cbb-gcc-4.6.4-554fd8c5195424bdbcabf5de30fdc183aba391bd.tar.xz
obtained gcc-4.6.4.tar.bz2 from upstream website;upstream
verified gcc-4.6.4.tar.bz2.sig; imported gcc-4.6.4 source tree from verified upstream tarball. downloading a git-generated archive based on the 'upstream' tag should provide you with a source tree that is binary identical to the one extracted from the above tarball. if you have obtained the source via the command 'git clone', however, do note that line-endings of files in your working directory might differ from line-endings of the respective files in the upstream repository.
Diffstat (limited to 'libjava/gnu/javax/crypto/cipher')
-rw-r--r--libjava/gnu/javax/crypto/cipher/Anubis.h64
-rw-r--r--libjava/gnu/javax/crypto/cipher/BaseCipher.h69
-rw-r--r--libjava/gnu/javax/crypto/cipher/Blowfish$Block.h41
-rw-r--r--libjava/gnu/javax/crypto/cipher/Blowfish$Context.h50
-rw-r--r--libjava/gnu/javax/crypto/cipher/Blowfish.h65
-rw-r--r--libjava/gnu/javax/crypto/cipher/Cast5$Cast5Key.h72
-rw-r--r--libjava/gnu/javax/crypto/cipher/Cast5.h68
-rw-r--r--libjava/gnu/javax/crypto/cipher/CipherFactory.h38
-rw-r--r--libjava/gnu/javax/crypto/cipher/DES$Context.h48
-rw-r--r--libjava/gnu/javax/crypto/cipher/DES.h70
-rw-r--r--libjava/gnu/javax/crypto/cipher/IBlockCipher.h50
-rw-r--r--libjava/gnu/javax/crypto/cipher/IBlockCipherSpi.h42
-rw-r--r--libjava/gnu/javax/crypto/cipher/Khazad.h67
-rw-r--r--libjava/gnu/javax/crypto/cipher/NullCipher.h44
-rw-r--r--libjava/gnu/javax/crypto/cipher/Rijndael.h76
-rw-r--r--libjava/gnu/javax/crypto/cipher/Serpent$Key.h175
-rw-r--r--libjava/gnu/javax/crypto/cipher/Serpent.h84
-rw-r--r--libjava/gnu/javax/crypto/cipher/Square.h66
-rw-r--r--libjava/gnu/javax/crypto/cipher/TripleDES$Context.h43
-rw-r--r--libjava/gnu/javax/crypto/cipher/TripleDES.h53
-rw-r--r--libjava/gnu/javax/crypto/cipher/Twofish.h101
-rw-r--r--libjava/gnu/javax/crypto/cipher/WeakKeyException.h36
22 files changed, 1422 insertions, 0 deletions
diff --git a/libjava/gnu/javax/crypto/cipher/Anubis.h b/libjava/gnu/javax/crypto/cipher/Anubis.h
new file mode 100644
index 000000000..b9a40b847
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/Anubis.h
@@ -0,0 +1,64 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_Anubis__
+#define __gnu_javax_crypto_cipher_Anubis__
+
+#pragma interface
+
+#include <gnu/javax/crypto/cipher/BaseCipher.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class Anubis;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::Anubis : public ::gnu::javax::crypto::cipher::BaseCipher
+{
+
+public:
+ Anubis();
+private:
+ static void anubis(JArray< jbyte > *, jint, JArray< jbyte > *, jint, JArray< JArray< jint > * > *);
+public:
+ ::java::lang::Object * clone();
+ ::java::util::Iterator * blockSizes();
+ ::java::util::Iterator * keySizes();
+ ::java::lang::Object * makeKey(JArray< jbyte > *, jint);
+ void encrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ void decrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ jboolean selfTest();
+private:
+ static ::java::util::logging::Logger * log;
+ static const jint DEFAULT_BLOCK_SIZE = 16;
+ static const jint DEFAULT_KEY_SIZE = 16;
+ static ::java::lang::String * Sd;
+ static JArray< jbyte > * S;
+ static JArray< jint > * T0;
+ static JArray< jint > * T1;
+ static JArray< jint > * T2;
+ static JArray< jint > * T3;
+ static JArray< jint > * T4;
+ static JArray< jint > * T5;
+ static JArray< jint > * rc;
+ static JArray< jbyte > * KAT_KEY;
+ static JArray< jbyte > * KAT_CT;
+ static ::java::lang::Boolean * valid;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_Anubis__
diff --git a/libjava/gnu/javax/crypto/cipher/BaseCipher.h b/libjava/gnu/javax/crypto/cipher/BaseCipher.h
new file mode 100644
index 000000000..bb6437df6
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/BaseCipher.h
@@ -0,0 +1,69 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_BaseCipher__
+#define __gnu_javax_crypto_cipher_BaseCipher__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class BaseCipher;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::BaseCipher : public ::java::lang::Object
+{
+
+public: // actually protected
+ BaseCipher(::java::lang::String *, jint, jint);
+public:
+ virtual ::java::lang::Object * clone() = 0;
+ virtual ::java::lang::String * name();
+ virtual jint defaultBlockSize();
+ virtual jint defaultKeySize();
+ virtual void init(::java::util::Map *);
+ virtual jint currentBlockSize();
+ virtual void reset();
+ virtual void encryptBlock(JArray< jbyte > *, jint, JArray< jbyte > *, jint);
+ virtual void decryptBlock(JArray< jbyte > *, jint, JArray< jbyte > *, jint);
+ virtual jboolean selfTest();
+private:
+ jboolean testSymmetry(jint, jint);
+public: // actually protected
+ virtual jboolean testKat(JArray< jbyte > *, JArray< jbyte > *);
+ virtual jboolean testKat(JArray< jbyte > *, JArray< jbyte > *, JArray< jbyte > *);
+public:
+ virtual ::java::util::Iterator * blockSizes() = 0;
+ virtual ::java::util::Iterator * keySizes() = 0;
+ virtual ::java::lang::Object * makeKey(JArray< jbyte > *, jint) = 0;
+ virtual void encrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint) = 0;
+ virtual void decrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint) = 0;
+private:
+ static ::java::util::logging::Logger * log;
+public: // actually protected
+ ::java::lang::String * __attribute__((aligned(__alignof__( ::java::lang::Object)))) name__;
+ jint defaultBlockSize__;
+ jint defaultKeySize__;
+ jint currentBlockSize__;
+ ::java::lang::Object * currentKey;
+ ::java::lang::Object * lock;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_BaseCipher__
diff --git a/libjava/gnu/javax/crypto/cipher/Blowfish$Block.h b/libjava/gnu/javax/crypto/cipher/Blowfish$Block.h
new file mode 100644
index 000000000..738cb3732
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/Blowfish$Block.h
@@ -0,0 +1,41 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_Blowfish$Block__
+#define __gnu_javax_crypto_cipher_Blowfish$Block__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class Blowfish;
+ class Blowfish$Block;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::Blowfish$Block : public ::java::lang::Object
+{
+
+ Blowfish$Block(::gnu::javax::crypto::cipher::Blowfish *);
+public: // actually package-private
+ Blowfish$Block(::gnu::javax::crypto::cipher::Blowfish *, ::gnu::javax::crypto::cipher::Blowfish$Block *);
+ jint __attribute__((aligned(__alignof__( ::java::lang::Object)))) left;
+ jint right;
+ ::gnu::javax::crypto::cipher::Blowfish * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_Blowfish$Block__
diff --git a/libjava/gnu/javax/crypto/cipher/Blowfish$Context.h b/libjava/gnu/javax/crypto/cipher/Blowfish$Context.h
new file mode 100644
index 000000000..74c9087ea
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/Blowfish$Context.h
@@ -0,0 +1,50 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_Blowfish$Context__
+#define __gnu_javax_crypto_cipher_Blowfish$Context__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class Blowfish;
+ class Blowfish$Context;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::Blowfish$Context : public ::java::lang::Object
+{
+
+public: // actually package-private
+ Blowfish$Context(::gnu::javax::crypto::cipher::Blowfish *);
+private:
+ Blowfish$Context(::gnu::javax::crypto::cipher::Blowfish *, ::gnu::javax::crypto::cipher::Blowfish$Context *);
+public:
+ virtual ::java::lang::Object * clone();
+public: // actually package-private
+ JArray< jint > * __attribute__((aligned(__alignof__( ::java::lang::Object)))) p;
+ JArray< jint > * s0;
+ JArray< jint > * s1;
+ JArray< jint > * s2;
+ JArray< jint > * s3;
+ ::gnu::javax::crypto::cipher::Blowfish * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_Blowfish$Context__
diff --git a/libjava/gnu/javax/crypto/cipher/Blowfish.h b/libjava/gnu/javax/crypto/cipher/Blowfish.h
new file mode 100644
index 000000000..dac15df6c
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/Blowfish.h
@@ -0,0 +1,65 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_Blowfish__
+#define __gnu_javax_crypto_cipher_Blowfish__
+
+#pragma interface
+
+#include <gnu/javax/crypto/cipher/BaseCipher.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class Blowfish;
+ class Blowfish$Block;
+ class Blowfish$Context;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::Blowfish : public ::gnu::javax::crypto::cipher::BaseCipher
+{
+
+public:
+ Blowfish();
+ virtual ::java::lang::Object * clone();
+ virtual ::java::util::Iterator * keySizes();
+ virtual ::java::util::Iterator * blockSizes();
+ virtual ::java::lang::Object * makeKey(JArray< jbyte > *, jint);
+ virtual void encrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ virtual void decrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+private:
+ void blowfishEncrypt(::gnu::javax::crypto::cipher::Blowfish$Block *, ::gnu::javax::crypto::cipher::Blowfish$Context *);
+ void blowfishDecrypt(::gnu::javax::crypto::cipher::Blowfish$Block *, ::gnu::javax::crypto::cipher::Blowfish$Context *);
+public:
+ virtual jboolean selfTest();
+private:
+ static const jint DEFAULT_BLOCK_SIZE = 8;
+ static const jint DEFAULT_KEY_SIZE = 8;
+ static const jint MAX_KEY_LENGTH = 56;
+ static JArray< jint > * P;
+public: // actually package-private
+ static JArray< jint > * KS0;
+private:
+ static JArray< jint > * KS1;
+ static JArray< jint > * KS2;
+ static JArray< jint > * KS3;
+ static ::java::lang::Boolean * valid;
+ static JArray< jbyte > * TV_KEY;
+ static JArray< jbyte > * TV_CT;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_Blowfish__
diff --git a/libjava/gnu/javax/crypto/cipher/Cast5$Cast5Key.h b/libjava/gnu/javax/crypto/cipher/Cast5$Cast5Key.h
new file mode 100644
index 000000000..7f1ecc056
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/Cast5$Cast5Key.h
@@ -0,0 +1,72 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_Cast5$Cast5Key__
+#define __gnu_javax_crypto_cipher_Cast5$Cast5Key__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class Cast5;
+ class Cast5$Cast5Key;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::Cast5$Cast5Key : public ::java::lang::Object
+{
+
+ Cast5$Cast5Key(::gnu::javax::crypto::cipher::Cast5 *);
+public: // actually package-private
+ Cast5$Cast5Key(::gnu::javax::crypto::cipher::Cast5 *, ::gnu::javax::crypto::cipher::Cast5$Cast5Key *);
+ jint __attribute__((aligned(__alignof__( ::java::lang::Object)))) rounds;
+ jint Km0;
+ jint Km1;
+ jint Km2;
+ jint Km3;
+ jint Km4;
+ jint Km5;
+ jint Km6;
+ jint Km7;
+ jint Km8;
+ jint Km9;
+ jint Km10;
+ jint Km11;
+ jint Km12;
+ jint Km13;
+ jint Km14;
+ jint Km15;
+ jint Kr0;
+ jint Kr1;
+ jint Kr2;
+ jint Kr3;
+ jint Kr4;
+ jint Kr5;
+ jint Kr6;
+ jint Kr7;
+ jint Kr8;
+ jint Kr9;
+ jint Kr10;
+ jint Kr11;
+ jint Kr12;
+ jint Kr13;
+ jint Kr14;
+ jint Kr15;
+ ::gnu::javax::crypto::cipher::Cast5 * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_Cast5$Cast5Key__
diff --git a/libjava/gnu/javax/crypto/cipher/Cast5.h b/libjava/gnu/javax/crypto/cipher/Cast5.h
new file mode 100644
index 000000000..40cebee7c
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/Cast5.h
@@ -0,0 +1,68 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_Cast5__
+#define __gnu_javax_crypto_cipher_Cast5__
+
+#pragma interface
+
+#include <gnu/javax/crypto/cipher/BaseCipher.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class Cast5;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::Cast5 : public ::gnu::javax::crypto::cipher::BaseCipher
+{
+
+public:
+ Cast5();
+private:
+ static JArray< jint > * unscramble(jint);
+public:
+ virtual ::java::lang::Object * clone();
+ virtual ::java::util::Iterator * blockSizes();
+ virtual ::java::util::Iterator * keySizes();
+ virtual ::java::lang::Object * makeKey(JArray< jbyte > *, jint);
+ virtual void encrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ virtual void decrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ virtual jboolean selfTest();
+private:
+ jint f1(jint, jint, jint);
+ jint f2(jint, jint, jint);
+ jint f3(jint, jint, jint);
+ static const jint DEFAULT_BLOCK_SIZE = 8;
+ static const jint DEFAULT_KEY_SIZE = 5;
+ static JArray< jbyte > * KAT_KEY;
+ static JArray< jbyte > * KAT_PT;
+ static JArray< jbyte > * KAT_CT;
+ static ::java::lang::Boolean * valid;
+ static JArray< jint > * S1;
+ static JArray< jint > * S2;
+ static JArray< jint > * S3;
+ static JArray< jint > * S4;
+ static JArray< jint > * S5;
+ static JArray< jint > * S6;
+ static JArray< jint > * S7;
+ static JArray< jint > * S8;
+ static const jint _12_ROUNDS = 12;
+ static const jint _16_ROUNDS = 16;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_Cast5__
diff --git a/libjava/gnu/javax/crypto/cipher/CipherFactory.h b/libjava/gnu/javax/crypto/cipher/CipherFactory.h
new file mode 100644
index 000000000..97f49ea79
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/CipherFactory.h
@@ -0,0 +1,38 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_CipherFactory__
+#define __gnu_javax_crypto_cipher_CipherFactory__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class CipherFactory;
+ class IBlockCipher;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::CipherFactory : public ::java::lang::Object
+{
+
+ CipherFactory();
+public:
+ static ::gnu::javax::crypto::cipher::IBlockCipher * getInstance(::java::lang::String *);
+ static ::java::util::Set * getNames();
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_CipherFactory__
diff --git a/libjava/gnu/javax/crypto/cipher/DES$Context.h b/libjava/gnu/javax/crypto/cipher/DES$Context.h
new file mode 100644
index 000000000..f25456f4d
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/DES$Context.h
@@ -0,0 +1,48 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_DES$Context__
+#define __gnu_javax_crypto_cipher_DES$Context__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class DES;
+ class DES$Context;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::DES$Context : public ::java::lang::Object
+{
+
+public: // actually package-private
+ DES$Context(::gnu::javax::crypto::cipher::DES *);
+ JArray< jbyte > * getEncryptionKeyBytes();
+ JArray< jbyte > * getDecryptionKeyBytes();
+ JArray< jbyte > * toByteArray(JArray< jint > *);
+private:
+ static const jint EXPANDED_KEY_SIZE = 32;
+public: // actually package-private
+ JArray< jint > * __attribute__((aligned(__alignof__( ::java::lang::Object)))) ek;
+ JArray< jint > * dk;
+ ::gnu::javax::crypto::cipher::DES * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_DES$Context__
diff --git a/libjava/gnu/javax/crypto/cipher/DES.h b/libjava/gnu/javax/crypto/cipher/DES.h
new file mode 100644
index 000000000..a5830d835
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/DES.h
@@ -0,0 +1,70 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_DES__
+#define __gnu_javax_crypto_cipher_DES__
+
+#pragma interface
+
+#include <gnu/javax/crypto/cipher/BaseCipher.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class DES;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::DES : public ::gnu::javax::crypto::cipher::BaseCipher
+{
+
+public:
+ DES();
+ static void adjustParity(JArray< jbyte > *, jint);
+ static jboolean isParityAdjusted(JArray< jbyte > *, jint);
+ static jboolean isWeak(JArray< jbyte > *);
+ static jboolean isSemiWeak(JArray< jbyte > *);
+ static jboolean isPossibleWeak(JArray< jbyte > *);
+private:
+ static void desFunc(JArray< jbyte > *, jint, JArray< jbyte > *, jint, JArray< jint > *);
+public:
+ virtual ::java::lang::Object * clone();
+ virtual ::java::util::Iterator * blockSizes();
+ virtual ::java::util::Iterator * keySizes();
+ virtual ::java::lang::Object * makeKey(JArray< jbyte > *, jint);
+ virtual void encrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ virtual void decrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ static const jint BLOCK_SIZE = 8;
+ static const jint KEY_SIZE = 8;
+private:
+ static JArray< jint > * SP1;
+ static JArray< jint > * SP2;
+ static JArray< jint > * SP3;
+ static JArray< jint > * SP4;
+ static JArray< jint > * SP5;
+ static JArray< jint > * SP6;
+ static JArray< jint > * SP7;
+ static JArray< jint > * SP8;
+ static JArray< jbyte > * PARITY;
+ static JArray< jbyte > * ROTARS;
+ static JArray< jbyte > * PC1;
+ static JArray< jbyte > * PC2;
+public:
+ static JArray< JArray< jbyte > * > * WEAK_KEYS;
+ static JArray< JArray< jbyte > * > * SEMIWEAK_KEYS;
+ static JArray< JArray< jbyte > * > * POSSIBLE_WEAK_KEYS;
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_DES__
diff --git a/libjava/gnu/javax/crypto/cipher/IBlockCipher.h b/libjava/gnu/javax/crypto/cipher/IBlockCipher.h
new file mode 100644
index 000000000..662389b26
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/IBlockCipher.h
@@ -0,0 +1,50 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_IBlockCipher__
+#define __gnu_javax_crypto_cipher_IBlockCipher__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class IBlockCipher;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::IBlockCipher : public ::java::lang::Object
+{
+
+public:
+ virtual ::java::lang::String * name() = 0;
+ virtual jint defaultBlockSize() = 0;
+ virtual jint defaultKeySize() = 0;
+ virtual ::java::util::Iterator * blockSizes() = 0;
+ virtual ::java::util::Iterator * keySizes() = 0;
+ virtual ::java::lang::Object * clone() = 0;
+ virtual void init(::java::util::Map *) = 0;
+ virtual jint currentBlockSize() = 0;
+ virtual void reset() = 0;
+ virtual void encryptBlock(JArray< jbyte > *, jint, JArray< jbyte > *, jint) = 0;
+ virtual void decryptBlock(JArray< jbyte > *, jint, JArray< jbyte > *, jint) = 0;
+ virtual jboolean selfTest() = 0;
+ static ::java::lang::String * CIPHER_BLOCK_SIZE;
+ static ::java::lang::String * KEY_MATERIAL;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __gnu_javax_crypto_cipher_IBlockCipher__
diff --git a/libjava/gnu/javax/crypto/cipher/IBlockCipherSpi.h b/libjava/gnu/javax/crypto/cipher/IBlockCipherSpi.h
new file mode 100644
index 000000000..35e686dda
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/IBlockCipherSpi.h
@@ -0,0 +1,42 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_IBlockCipherSpi__
+#define __gnu_javax_crypto_cipher_IBlockCipherSpi__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class IBlockCipherSpi;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::IBlockCipherSpi : public ::java::lang::Object
+{
+
+public:
+ virtual ::java::util::Iterator * blockSizes() = 0;
+ virtual ::java::util::Iterator * keySizes() = 0;
+ virtual ::java::lang::Object * makeKey(JArray< jbyte > *, jint) = 0;
+ virtual void encrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint) = 0;
+ virtual void decrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint) = 0;
+ virtual jboolean selfTest() = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __gnu_javax_crypto_cipher_IBlockCipherSpi__
diff --git a/libjava/gnu/javax/crypto/cipher/Khazad.h b/libjava/gnu/javax/crypto/cipher/Khazad.h
new file mode 100644
index 000000000..734bab28e
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/Khazad.h
@@ -0,0 +1,67 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_Khazad__
+#define __gnu_javax_crypto_cipher_Khazad__
+
+#pragma interface
+
+#include <gnu/javax/crypto/cipher/BaseCipher.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class Khazad;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::Khazad : public ::gnu::javax::crypto::cipher::BaseCipher
+{
+
+public:
+ Khazad();
+private:
+ static void khazad(JArray< jbyte > *, jint, JArray< jbyte > *, jint, JArray< JArray< jint > * > *);
+public:
+ ::java::lang::Object * clone();
+ ::java::util::Iterator * blockSizes();
+ ::java::util::Iterator * keySizes();
+ ::java::lang::Object * makeKey(JArray< jbyte > *, jint);
+ void encrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ void decrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ jboolean selfTest();
+private:
+ static ::java::util::logging::Logger * log;
+ static const jint DEFAULT_BLOCK_SIZE = 8;
+ static const jint DEFAULT_KEY_SIZE = 16;
+ static const jint R = 8;
+ static ::java::lang::String * Sd;
+ static JArray< jbyte > * S;
+ static JArray< jint > * T0;
+ static JArray< jint > * T1;
+ static JArray< jint > * T2;
+ static JArray< jint > * T3;
+ static JArray< jint > * T4;
+ static JArray< jint > * T5;
+ static JArray< jint > * T6;
+ static JArray< jint > * T7;
+ static JArray< JArray< jint > * > * rc;
+ static JArray< jbyte > * KAT_KEY;
+ static JArray< jbyte > * KAT_CT;
+ static ::java::lang::Boolean * valid;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_Khazad__
diff --git a/libjava/gnu/javax/crypto/cipher/NullCipher.h b/libjava/gnu/javax/crypto/cipher/NullCipher.h
new file mode 100644
index 000000000..5199488c5
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/NullCipher.h
@@ -0,0 +1,44 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_NullCipher__
+#define __gnu_javax_crypto_cipher_NullCipher__
+
+#pragma interface
+
+#include <gnu/javax/crypto/cipher/BaseCipher.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class NullCipher;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::NullCipher : public ::gnu::javax::crypto::cipher::BaseCipher
+{
+
+public:
+ NullCipher();
+ ::java::lang::Object * clone();
+ ::java::util::Iterator * blockSizes();
+ ::java::util::Iterator * keySizes();
+ ::java::lang::Object * makeKey(JArray< jbyte > *, jint);
+ void encrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ void decrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ jboolean selfTest();
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_NullCipher__
diff --git a/libjava/gnu/javax/crypto/cipher/Rijndael.h b/libjava/gnu/javax/crypto/cipher/Rijndael.h
new file mode 100644
index 000000000..2511bfe66
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/Rijndael.h
@@ -0,0 +1,76 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_Rijndael__
+#define __gnu_javax_crypto_cipher_Rijndael__
+
+#pragma interface
+
+#include <gnu/javax/crypto/cipher/BaseCipher.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class Rijndael;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::Rijndael : public ::gnu::javax::crypto::cipher::BaseCipher
+{
+
+public:
+ Rijndael();
+ static jint getRounds(jint, jint);
+private:
+ static void rijndaelEncrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ static void rijndaelDecrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ static void aesEncrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *);
+ static void aesDecrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *);
+public:
+ ::java::lang::Object * clone();
+ ::java::util::Iterator * blockSizes();
+ ::java::util::Iterator * keySizes();
+ ::java::lang::Object * makeKey(JArray< jbyte > *, jint);
+ void encrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ void decrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ jboolean selfTest();
+private:
+ static ::java::util::logging::Logger * log;
+ static const jint DEFAULT_BLOCK_SIZE = 16;
+ static const jint DEFAULT_KEY_SIZE = 16;
+ static ::java::lang::String * SS;
+ static JArray< jbyte > * S;
+ static JArray< jbyte > * Si;
+ static JArray< jint > * T1;
+ static JArray< jint > * T2;
+ static JArray< jint > * T3;
+ static JArray< jint > * T4;
+ static JArray< jint > * T5;
+ static JArray< jint > * T6;
+ static JArray< jint > * T7;
+ static JArray< jint > * T8;
+ static JArray< jint > * U1;
+ static JArray< jint > * U2;
+ static JArray< jint > * U3;
+ static JArray< jint > * U4;
+ static JArray< jbyte > * rcon;
+ static JArray< JArray< JArray< jint > * > * > * shifts;
+ static JArray< jbyte > * KAT_KEY;
+ static JArray< jbyte > * KAT_CT;
+ static ::java::lang::Boolean * valid;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_Rijndael__
diff --git a/libjava/gnu/javax/crypto/cipher/Serpent$Key.h b/libjava/gnu/javax/crypto/cipher/Serpent$Key.h
new file mode 100644
index 000000000..ee098e01a
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/Serpent$Key.h
@@ -0,0 +1,175 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_Serpent$Key__
+#define __gnu_javax_crypto_cipher_Serpent$Key__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class Serpent;
+ class Serpent$Key;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::Serpent$Key : public ::java::lang::Object
+{
+
+public: // actually package-private
+ Serpent$Key(::gnu::javax::crypto::cipher::Serpent *);
+private:
+ Serpent$Key(::gnu::javax::crypto::cipher::Serpent *, ::gnu::javax::crypto::cipher::Serpent$Key *);
+public:
+ virtual ::java::lang::Object * clone();
+public: // actually package-private
+ jint __attribute__((aligned(__alignof__( ::java::lang::Object)))) k0;
+ jint k1;
+ jint k2;
+ jint k3;
+ jint k4;
+ jint k5;
+ jint k6;
+ jint k7;
+ jint k8;
+ jint k9;
+ jint k10;
+ jint k11;
+ jint k12;
+ jint k13;
+ jint k14;
+ jint k15;
+ jint k16;
+ jint k17;
+ jint k18;
+ jint k19;
+ jint k20;
+ jint k21;
+ jint k22;
+ jint k23;
+ jint k24;
+ jint k25;
+ jint k26;
+ jint k27;
+ jint k28;
+ jint k29;
+ jint k30;
+ jint k31;
+ jint k32;
+ jint k33;
+ jint k34;
+ jint k35;
+ jint k36;
+ jint k37;
+ jint k38;
+ jint k39;
+ jint k40;
+ jint k41;
+ jint k42;
+ jint k43;
+ jint k44;
+ jint k45;
+ jint k46;
+ jint k47;
+ jint k48;
+ jint k49;
+ jint k50;
+ jint k51;
+ jint k52;
+ jint k53;
+ jint k54;
+ jint k55;
+ jint k56;
+ jint k57;
+ jint k58;
+ jint k59;
+ jint k60;
+ jint k61;
+ jint k62;
+ jint k63;
+ jint k64;
+ jint k65;
+ jint k66;
+ jint k67;
+ jint k68;
+ jint k69;
+ jint k70;
+ jint k71;
+ jint k72;
+ jint k73;
+ jint k74;
+ jint k75;
+ jint k76;
+ jint k77;
+ jint k78;
+ jint k79;
+ jint k80;
+ jint k81;
+ jint k82;
+ jint k83;
+ jint k84;
+ jint k85;
+ jint k86;
+ jint k87;
+ jint k88;
+ jint k89;
+ jint k90;
+ jint k91;
+ jint k92;
+ jint k93;
+ jint k94;
+ jint k95;
+ jint k96;
+ jint k97;
+ jint k98;
+ jint k99;
+ jint k100;
+ jint k101;
+ jint k102;
+ jint k103;
+ jint k104;
+ jint k105;
+ jint k106;
+ jint k107;
+ jint k108;
+ jint k109;
+ jint k110;
+ jint k111;
+ jint k112;
+ jint k113;
+ jint k114;
+ jint k115;
+ jint k116;
+ jint k117;
+ jint k118;
+ jint k119;
+ jint k120;
+ jint k121;
+ jint k122;
+ jint k123;
+ jint k124;
+ jint k125;
+ jint k126;
+ jint k127;
+ jint k128;
+ jint k129;
+ jint k130;
+ jint k131;
+ ::gnu::javax::crypto::cipher::Serpent * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_Serpent$Key__
diff --git a/libjava/gnu/javax/crypto/cipher/Serpent.h b/libjava/gnu/javax/crypto/cipher/Serpent.h
new file mode 100644
index 000000000..20b9a5bf7
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/Serpent.h
@@ -0,0 +1,84 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_Serpent__
+#define __gnu_javax_crypto_cipher_Serpent__
+
+#pragma interface
+
+#include <gnu/javax/crypto/cipher/BaseCipher.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class Serpent;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::Serpent : public ::gnu::javax::crypto::cipher::BaseCipher
+{
+
+public:
+ Serpent();
+ virtual ::java::lang::Object * clone();
+ virtual ::java::util::Iterator * blockSizes();
+ virtual ::java::util::Iterator * keySizes();
+ virtual ::java::lang::Object * makeKey(JArray< jbyte > *, jint);
+ virtual void encrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ virtual void decrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ virtual jboolean selfTest();
+private:
+ void sbox0();
+ void sbox1();
+ void sbox2();
+ void sbox3();
+ void sbox4();
+ void sbox5();
+ void sbox6();
+ void sbox7();
+ void sbox7noLT();
+ void sboxI7noLT();
+ void sboxI6();
+ void sboxI5();
+ void sboxI4();
+ void sboxI3();
+ void sboxI2();
+ void sboxI1();
+ void sboxI0();
+ void sboxI7();
+ void sbox0(jint, jint, jint, jint);
+ void sbox1(jint, jint, jint, jint);
+ void sbox2(jint, jint, jint, jint);
+ void sbox3(jint, jint, jint, jint);
+ void sbox4(jint, jint, jint, jint);
+ void sbox5(jint, jint, jint, jint);
+ void sbox6(jint, jint, jint, jint);
+ void sbox7(jint, jint, jint, jint);
+ static const jint DEFAULT_KEY_SIZE = 16;
+ static const jint DEFAULT_BLOCK_SIZE = 16;
+ static const jint ROUNDS = 32;
+ static const jint PHI = -1640531527;
+ static JArray< jbyte > * KAT_KEY;
+ static JArray< jbyte > * KAT_CT;
+ static ::java::lang::Boolean * valid;
+ jint __attribute__((aligned(__alignof__( ::gnu::javax::crypto::cipher::BaseCipher)))) x0;
+ jint x1;
+ jint x2;
+ jint x3;
+ jint x4;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_Serpent__
diff --git a/libjava/gnu/javax/crypto/cipher/Square.h b/libjava/gnu/javax/crypto/cipher/Square.h
new file mode 100644
index 000000000..cae545c19
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/Square.h
@@ -0,0 +1,66 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_Square__
+#define __gnu_javax_crypto_cipher_Square__
+
+#pragma interface
+
+#include <gnu/javax/crypto/cipher/BaseCipher.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class Square;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::Square : public ::gnu::javax::crypto::cipher::BaseCipher
+{
+
+public:
+ Square();
+private:
+ static void square(JArray< jbyte > *, jint, JArray< jbyte > *, jint, JArray< JArray< jint > * > *, JArray< jint > *, JArray< jbyte > *);
+ static void transform(JArray< jint > *, JArray< jint > *);
+ static jint rot32L(jint, jint);
+ static jint rot32R(jint, jint);
+ static jint mul(jint, jint);
+public:
+ ::java::lang::Object * clone();
+ ::java::util::Iterator * blockSizes();
+ ::java::util::Iterator * keySizes();
+ ::java::lang::Object * makeKey(JArray< jbyte > *, jint);
+ void encrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ void decrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ jboolean selfTest();
+private:
+ static const jint DEFAULT_BLOCK_SIZE = 16;
+ static const jint DEFAULT_KEY_SIZE = 16;
+ static const jint ROUNDS = 8;
+ static const jint ROOT = 501;
+ static JArray< jint > * OFFSET;
+ static ::java::lang::String * Sdata;
+ static JArray< jbyte > * Se;
+ static JArray< jbyte > * Sd;
+ static JArray< jint > * Te;
+ static JArray< jint > * Td;
+ static JArray< jbyte > * KAT_KEY;
+ static JArray< jbyte > * KAT_CT;
+ static ::java::lang::Boolean * valid;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_Square__
diff --git a/libjava/gnu/javax/crypto/cipher/TripleDES$Context.h b/libjava/gnu/javax/crypto/cipher/TripleDES$Context.h
new file mode 100644
index 000000000..f26021502
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/TripleDES$Context.h
@@ -0,0 +1,43 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_TripleDES$Context__
+#define __gnu_javax_crypto_cipher_TripleDES$Context__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class DES$Context;
+ class TripleDES;
+ class TripleDES$Context;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::TripleDES$Context : public ::java::lang::Object
+{
+
+ TripleDES$Context(::gnu::javax::crypto::cipher::TripleDES *);
+public: // actually package-private
+ TripleDES$Context(::gnu::javax::crypto::cipher::TripleDES *, ::gnu::javax::crypto::cipher::TripleDES$Context *);
+ ::gnu::javax::crypto::cipher::DES$Context * __attribute__((aligned(__alignof__( ::java::lang::Object)))) k1;
+ ::gnu::javax::crypto::cipher::DES$Context * k2;
+ ::gnu::javax::crypto::cipher::DES$Context * k3;
+ ::gnu::javax::crypto::cipher::TripleDES * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_TripleDES$Context__
diff --git a/libjava/gnu/javax/crypto/cipher/TripleDES.h b/libjava/gnu/javax/crypto/cipher/TripleDES.h
new file mode 100644
index 000000000..cbe5a6c5f
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/TripleDES.h
@@ -0,0 +1,53 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_TripleDES__
+#define __gnu_javax_crypto_cipher_TripleDES__
+
+#pragma interface
+
+#include <gnu/javax/crypto/cipher/BaseCipher.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class DES;
+ class TripleDES;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::TripleDES : public ::gnu::javax::crypto::cipher::BaseCipher
+{
+
+public:
+ TripleDES();
+ static void adjustParity(JArray< jbyte > *, jint);
+ static void adjustParity(jint, JArray< jbyte > *, jint);
+ static jboolean isParityAdjusted(JArray< jbyte > *, jint);
+ static jboolean isParityAdjusted(jint, JArray< jbyte > *, jint);
+ virtual ::java::lang::Object * clone();
+ virtual ::java::util::Iterator * blockSizes();
+ virtual ::java::util::Iterator * keySizes();
+ virtual ::java::lang::Object * makeKey(JArray< jbyte > *, jint);
+ virtual void encrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ virtual void decrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ static const jint BLOCK_SIZE = 8;
+ static const jint KEY_SIZE = 24;
+private:
+ ::gnu::javax::crypto::cipher::DES * __attribute__((aligned(__alignof__( ::gnu::javax::crypto::cipher::BaseCipher)))) des;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_TripleDES__
diff --git a/libjava/gnu/javax/crypto/cipher/Twofish.h b/libjava/gnu/javax/crypto/cipher/Twofish.h
new file mode 100644
index 000000000..5c2d7cb95
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/Twofish.h
@@ -0,0 +1,101 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_Twofish__
+#define __gnu_javax_crypto_cipher_Twofish__
+
+#pragma interface
+
+#include <gnu/javax/crypto/cipher/BaseCipher.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class Twofish;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::Twofish : public ::gnu::javax::crypto::cipher::BaseCipher
+{
+
+ static jint LFSR1(jint);
+ static jint LFSR2(jint);
+ static jint Mx_X(jint);
+ static jint Mx_Y(jint);
+public:
+ Twofish();
+private:
+ static jint b0(jint);
+ static jint b1(jint);
+ static jint b2(jint);
+ static jint b3(jint);
+ static jint RS_MDS_Encode(jint, jint);
+ static jint RS_rem(jint);
+ static jint F32(jint, jint, JArray< jint > *);
+ static jint Fe32(JArray< jint > *, jint, jint);
+ static jint _b(jint, jint);
+public:
+ ::java::lang::Object * clone();
+ ::java::util::Iterator * blockSizes();
+ ::java::util::Iterator * keySizes();
+ ::java::lang::Object * makeKey(JArray< jbyte > *, jint);
+ void encrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ void decrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
+ jboolean selfTest();
+private:
+ static ::java::util::logging::Logger * log;
+ static const jint DEFAULT_BLOCK_SIZE = 16;
+ static const jint DEFAULT_KEY_SIZE = 16;
+ static const jint MAX_ROUNDS = 16;
+ static const jint ROUNDS = 16;
+ static const jint INPUT_WHITEN = 0;
+ static const jint OUTPUT_WHITEN = 4;
+ static const jint ROUND_SUBKEYS = 8;
+ static const jint SK_STEP = 33686018;
+ static const jint SK_BUMP = 16843009;
+ static const jint SK_ROTL = 9;
+ static JArray< ::java::lang::String * > * Pm;
+ static JArray< JArray< jbyte > * > * P;
+ static const jint P_00 = 1;
+ static const jint P_01 = 0;
+ static const jint P_02 = 0;
+ static const jint P_03 = 1;
+ static const jint P_04 = 1;
+ static const jint P_10 = 0;
+ static const jint P_11 = 0;
+ static const jint P_12 = 1;
+ static const jint P_13 = 1;
+ static const jint P_14 = 0;
+ static const jint P_20 = 1;
+ static const jint P_21 = 1;
+ static const jint P_22 = 0;
+ static const jint P_23 = 0;
+ static const jint P_24 = 0;
+ static const jint P_30 = 0;
+ static const jint P_31 = 1;
+ static const jint P_32 = 1;
+ static const jint P_33 = 0;
+ static const jint P_34 = 1;
+ static const jint GF256_FDBK_2 = 180;
+ static const jint GF256_FDBK_4 = 90;
+ static JArray< JArray< jint > * > * MDS;
+ static const jint RS_GF_FDBK = 333;
+ static JArray< jbyte > * KAT_KEY;
+ static JArray< jbyte > * KAT_CT;
+ static ::java::lang::Boolean * valid;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_Twofish__
diff --git a/libjava/gnu/javax/crypto/cipher/WeakKeyException.h b/libjava/gnu/javax/crypto/cipher/WeakKeyException.h
new file mode 100644
index 000000000..42d12100f
--- /dev/null
+++ b/libjava/gnu/javax/crypto/cipher/WeakKeyException.h
@@ -0,0 +1,36 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __gnu_javax_crypto_cipher_WeakKeyException__
+#define __gnu_javax_crypto_cipher_WeakKeyException__
+
+#pragma interface
+
+#include <java/security/InvalidKeyException.h>
+extern "Java"
+{
+ namespace gnu
+ {
+ namespace javax
+ {
+ namespace crypto
+ {
+ namespace cipher
+ {
+ class WeakKeyException;
+ }
+ }
+ }
+ }
+}
+
+class gnu::javax::crypto::cipher::WeakKeyException : public ::java::security::InvalidKeyException
+{
+
+public:
+ WeakKeyException();
+ WeakKeyException(::java::lang::String *);
+ static ::java::lang::Class class$;
+};
+
+#endif // __gnu_javax_crypto_cipher_WeakKeyException__