commit | 777b03bc6d256d28da0c52e9e289583067830564 | [log] [tgz] |
---|---|---|
author | ZAITI Reda <reda.zaiti@thalesgroup.com> | Fri Oct 09 21:49:15 2020 +0000 |
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | Fri Oct 09 21:49:15 2020 +0000 |
tree | 090915af5a3f4784a3ae87d37bf651aae48389e0 | |
parent | 15f05ad13b0ec68655c05d306155d65bfc3139d9 [diff] | |
parent | 5d3eb10981d4f26a1e62a6121fa03c8659c2c356 [diff] |
Fix size_t overflow on While loop am: 5d3eb10981 Original change: https://android-review.googlesource.com/c/platform/hardware/st/secure_element2/+/1436831 Change-Id: Id28f47619e669d8532661561eefeb73dadf840ca
diff --git a/secure_element/1.0/esehal/src/checksum.c b/secure_element/1.0/esehal/src/checksum.c index d288b17..fe324e1 100644 --- a/secure_element/1.0/esehal/src/checksum.c +++ b/secure_element/1.0/esehal/src/checksum.c
@@ -33,8 +33,10 @@ uint8_t c = 0; if (p) - while (n--) + while (n) { c ^= *p++; + n--; + } return c; } @@ -87,7 +89,9 @@ const uint8_t *p = s; if (s) - while(n--) + while(n) { crc = (uint8_t)(crc >> 8) ^ fast[(uint8_t)(crc ^ *p++)]; + n--; + } return crc; }