mirror of
https://github.com/qpdf/qpdf.git
synced 2024-12-22 10:58:58 +00:00
In MD5_native::transform disable sanitizer unsigned integer overflow checks
Wrap-around is intentional and generates false positives
This commit is contained in:
parent
b3ab5cd216
commit
4f16961052
@ -193,7 +193,12 @@ MD5_native::digest(Digest result)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// MD5 basic transformation. Transforms state based on block.
|
// MD5 basic transformation. Transforms state based on block.
|
||||||
|
//
|
||||||
|
// NB The algorithm intentionally relies on unsigned integer wrap-around
|
||||||
void MD5_native::transform(uint32_t state[4], unsigned char block[64])
|
void MD5_native::transform(uint32_t state[4], unsigned char block[64])
|
||||||
|
#if defined(__clang__)
|
||||||
|
__attribute__((no_sanitize("unsigned-integer-overflow")))
|
||||||
|
#endif
|
||||||
{
|
{
|
||||||
uint32_t a = state[0], b = state[1], c = state[2], d = state[3], x[16];
|
uint32_t a = state[0], b = state[1], c = state[2], d = state[3], x[16];
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user