in src/main/java/org/apache/commons/crypto/stream/PositionedCryptoInputStream.java [182:201]
private void decrypt(final CipherState state, final ByteBuffer inByteBuffer,
final ByteBuffer outByteBuffer, final byte padding) throws IOException {
Utils.checkState(inByteBuffer.position() >= padding);
if (inByteBuffer.position() == padding) {
// There is no real data in inBuffer.
return;
}
inByteBuffer.flip();
outByteBuffer.clear();
decryptBuffer(state, inByteBuffer, outByteBuffer);
inByteBuffer.clear();
outByteBuffer.flip();
if (padding > 0) {
/*
* The plain text and cipher text have a 1:1 mapping, they start at
* the same position.
*/
outByteBuffer.position(padding);
}
}