Home | History | Annotate | Download | only in io
      1 package org.bouncycastle.crypto.io;
      2 
      3 import java.io.FilterOutputStream;
      4 import java.io.IOException;
      5 import java.io.OutputStream;
      6 
      7 import org.bouncycastle.crypto.Mac;
      8 
      9 public class MacOutputStream
     10     extends FilterOutputStream
     11 {
     12     protected Mac mac;
     13 
     14     public MacOutputStream(
     15         OutputStream stream,
     16         Mac          mac)
     17     {
     18         super(stream);
     19         this.mac = mac;
     20     }
     21 
     22     public void write(int b)
     23         throws IOException
     24     {
     25         mac.update((byte)b);
     26         out.write(b);
     27     }
     28 
     29     public void write(
     30         byte[] b,
     31         int off,
     32         int len)
     33         throws IOException
     34     {
     35         mac.update(b, off, len);
     36         out.write(b, off, len);
     37     }
     38 
     39     public Mac getMac()
     40     {
     41         return mac;
     42     }
     43 }
     44 
     45