diff options
author | Warren Levy <warrenl@cygnus.com> | 2000-06-28 11:24:05 +0000 |
---|---|---|
committer | Warren Levy <warrenl@gcc.gnu.org> | 2000-06-28 11:24:05 +0000 |
commit | 2017da526c1d50e7292ee9cd668c6c85d31b265f (patch) | |
tree | d2cb962ad028c8e94c09b7d745e311b65c24f738 /libjava/java/io/ObjectStreamClass.java | |
parent | 0e4aca88306e31f59b6e63552cb32963d8dc6586 (diff) | |
download | gcc-2017da526c1d50e7292ee9cd668c6c85d31b265f.zip gcc-2017da526c1d50e7292ee9cd668c6c85d31b265f.tar.gz gcc-2017da526c1d50e7292ee9cd668c6c85d31b265f.tar.bz2 |
Gnu.java: New file.
* gnu/java/security/provider/Gnu.java: New file.
* gnu/java/security/provider/SHA.java: New file.
* gnu/java/security/provider/SHA1PRNG.java: New file.
* Makefile.am: Added the above files.
* Makefile.in: Rebuilt.
* java/io/ObjectStreamClass.java (setUID): Use Gnu SHA instead of SHS.
From-SVN: r34753
Diffstat (limited to 'libjava/java/io/ObjectStreamClass.java')
-rw-r--r-- | libjava/java/io/ObjectStreamClass.java | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/libjava/java/io/ObjectStreamClass.java b/libjava/java/io/ObjectStreamClass.java index f799b4f..c43112d 100644 --- a/libjava/java/io/ObjectStreamClass.java +++ b/libjava/java/io/ObjectStreamClass.java @@ -36,13 +36,14 @@ import java.lang.reflect.Modifier; import java.security.DigestOutputStream; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; +import java.security.Security; import java.util.Arrays; import java.util.Comparator; import java.util.Hashtable; import java.util.Vector; import gnu.java.io.NullOutputStream; import gnu.java.lang.reflect.TypeSignature; -import gnu.gcj.io.SimpleSHSStream; +import gnu.java.security.provider.Gnu; public class ObjectStreamClass implements Serializable @@ -420,20 +421,21 @@ public class ObjectStreamClass implements Serializable MessageDigest md = null; DigestOutputStream digest_out = null; DataOutputStream data_out = null; - SimpleSHSStream simple = null; try { md = MessageDigest.getInstance ("SHA"); - digest_out = new DigestOutputStream (nullOutputStream, md); - data_out = new DataOutputStream (digest_out); } catch (NoSuchAlgorithmException e) { - simple = new SimpleSHSStream (nullOutputStream); - data_out = new DataOutputStream (simple); + // If a provider already provides SHA, use it; otherwise, use this. + Gnu gnuProvider = new Gnu(); + Security.addProvider(gnuProvider); + md = MessageDigest.getInstance ("SHA"); } + digest_out = new DigestOutputStream (nullOutputStream, md); + data_out = new DataOutputStream (digest_out); data_out.writeUTF (cl.getName ()); int modifiers = cl.getModifiers (); @@ -522,7 +524,7 @@ public class ObjectStreamClass implements Serializable } data_out.close (); - byte[] sha = md != null ? md.digest () : simple.digest (); + byte[] sha = md.digest (); long result = 0; int len = sha.length < 8 ? sha.length : 8; for (int i=0; i < len; i++) |