@SuppressWarnings("MissingOverride")
    protected void engineUpdateAAD(byte[] input, int inputOffset, int inputLen) {
        checkInitialization();
        if (aadBuf == null) {
            aadBuf = new ExposedByteArrayOutputStream(inputLen);
        }
        aadBuf.write(input, inputOffset, inputLen);
    }
AEAD buffers everything until a final output.
common/src/main/java/org/conscrypt/OpenSSLAeadCipher.java