From: megacz Date: Fri, 30 Jan 2004 06:48:49 +0000 (+0000) Subject: 2002/07/15 23:04:32 X-Git-Tag: RC3~1643 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=5ce5c54eab1fdf865a75b5dbbc326a2278b5265b;hp=be9d7e4e293cacc95dd4aa242a3856f208d9d93e;p=org.ibex.core.git 2002/07/15 23:04:32 darcs-hash:20040130064849-2ba56-9e4c3bfe336fc837fef3b32879e3f6b7ab3b5fde.gz --- diff --git a/src/org/bouncycastle/crypto/io/DigestInputStream.java b/src/org/bouncycastle/crypto/io/DigestInputStream.java new file mode 100644 index 0000000..3567d5a --- /dev/null +++ b/src/org/bouncycastle/crypto/io/DigestInputStream.java @@ -0,0 +1,50 @@ +package org.bouncycastle.crypto.io; + +import java.io.*; + +import org.bouncycastle.crypto.Digest; + +public class DigestInputStream + extends FilterInputStream +{ + protected Digest digest; + + public DigestInputStream( + InputStream stream, + Digest digest) + { + super(stream); + this.digest = digest; + } + + public int read() + throws IOException + { + int b = in.read(); + + if (b >= 0) + { + digest.update((byte)b); + } + return b; + } + + public int read( + byte[] b, + int off, + int len) + throws IOException + { + int n = in.read(b, off, len); + if (n > 0) + { + digest.update(b, off, n); + } + return n; + } + + public Digest getDigest() + { + return digest; + } +}