@Internal public abstract class ChunkedCipherInputStream extends LittleEndianInputStream
Constructor and Description |
---|
ChunkedCipherInputStream(InputStream stream,
long size,
int chunkSize) |
ChunkedCipherInputStream(InputStream stream,
long size,
int chunkSize,
int initialPos) |
Modifier and Type | Method and Description |
---|---|
int |
available() |
long |
getPos() |
Cipher |
initCipherForBlock(int block) |
void |
mark(int readlimit) |
boolean |
markSupported() |
int |
read() |
int |
read(byte[] b,
int off,
int len) |
void |
readPlain(byte[] b,
int off,
int len)
Used when BIFF header fields (sid, size) are being read.
|
void |
reset() |
void |
setNextRecordSize(int recordSize)
Some ciphers (actually just XOR) are based on the record size,
which needs to be set before decryption
|
long |
skip(long n) |
readByte, readDouble, readFully, readFully, readInt, readLong, readShort, readUByte, readUInt, readUShort
close, read
public ChunkedCipherInputStream(InputStream stream, long size, int chunkSize) throws GeneralSecurityException
GeneralSecurityException
public ChunkedCipherInputStream(InputStream stream, long size, int chunkSize, int initialPos) throws GeneralSecurityException
GeneralSecurityException
public final Cipher initCipherForBlock(int block) throws IOException, GeneralSecurityException
IOException
GeneralSecurityException
public int read() throws IOException
read
in class FilterInputStream
IOException
public int read(byte[] b, int off, int len) throws IOException
read
in class FilterInputStream
IOException
public long skip(long n)
skip
in class FilterInputStream
public int available()
available
in interface LittleEndianInput
available
in class LittleEndianInputStream
public boolean markSupported()
markSupported
in class FilterInputStream
public void mark(int readlimit)
mark
in class FilterInputStream
public void reset()
reset
in class FilterInputStream
public void readPlain(byte[] b, int off, int len)
Cipher
instance must step even when unencrypted bytes are readreadPlain
in interface LittleEndianInput
readPlain
in class LittleEndianInputStream
b
- the byte array to receive the bytesoff
- the start offset into the byte arraylen
- the amount of bytes to fillpublic void setNextRecordSize(int recordSize)
recordSize
- the size of the next recordpublic long getPos()
Copyright © 2010 - 2020 Adobe. All Rights Reserved