From 705361ae3a9d9613d969c82dab8853ade2d6b78b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Rebelo?= Date: Mon, 8 Jan 2024 13:43:26 +0000 Subject: [PATCH] Huawei: Fix linter Math.multiplyExact is only available on SDK24 onward. We do not expect an overflow to occur here, since the hashLength is fixed and the outputLength is small (32 on all current calls). --- .../nodomain/freeyourgadget/gadgetbridge/util/CryptoUtils.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/util/CryptoUtils.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/util/CryptoUtils.java index 71bd155c8..e5db22666 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/util/CryptoUtils.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/util/CryptoUtils.java @@ -94,7 +94,7 @@ public class CryptoUtils { int n = (outputLength % hashLen == 0) ? outputLength / hashLen : (outputLength / hashLen) + 1; byte[] hashRound = new byte[0]; - ByteBuffer generatedBytes = ByteBuffer.allocate(Math.multiplyExact(n, hashLen)); + ByteBuffer generatedBytes = ByteBuffer.allocate(n * hashLen); Mac mac = Mac.getInstance("HmacSHA256"); mac.init(pseudoSecretKey); for (int roundNum = 1; roundNum <= n; roundNum++) {