Fix updateAAD when offset is not 0

Due to AAD data not being reset when a Cipher instance was re-used, this
bug was never uncovered by tests that actually exercise this case.

(cherry picked from commit 95cf7b9b7fbabb77cd341f17da79c947bcc934ab)

Bug: 27696681
Bug: 27324690
Change-Id: Iae9b5794f212a8fc4eeff2a651332e7490f5cada
diff --git a/src/main/java/org/conscrypt/OpenSSLCipher.java b/src/main/java/org/conscrypt/OpenSSLCipher.java
index 571c8cb..fa174d6 100644
--- a/src/main/java/org/conscrypt/OpenSSLCipher.java
+++ b/src/main/java/org/conscrypt/OpenSSLCipher.java
@@ -1053,7 +1053,7 @@
         /* @Override */
         protected void engineUpdateAAD(byte[] input, int inputOffset, int inputLen) {
             if (aad == null) {
-                aad = Arrays.copyOfRange(input, inputOffset, inputLen);
+                aad = Arrays.copyOfRange(input, inputOffset, inputOffset + inputLen);
             } else {
                 int newSize = aad.length + inputLen;
                 byte[] newaad = new byte[newSize];