diff --git a/toxencryptsave/crypto_pwhash_scryptsalsa208sha256/nosse/pwhash_scryptsalsa208sha256_nosse.c b/toxencryptsave/crypto_pwhash_scryptsalsa208sha256/nosse/pwhash_scryptsalsa208sha256_nosse.c index 97d9ba6878..e66f528f64 100644 --- a/toxencryptsave/crypto_pwhash_scryptsalsa208sha256/nosse/pwhash_scryptsalsa208sha256_nosse.c +++ b/toxencryptsave/crypto_pwhash_scryptsalsa208sha256/nosse/pwhash_scryptsalsa208sha256_nosse.c @@ -257,11 +257,11 @@ escrypt_kdf_nosse(escrypt_local_t * local, errno = EINVAL; return -1; } - if ((r > SIZE_MAX / 128 / p) || + _Bool test_size_max = (r > SIZE_MAX / 128 / p) || (N > SIZE_MAX / 128 / r); #if SIZE_MAX / 256 <= UINT32_MAX - (r > SIZE_MAX / 256) || + test_size_max = test_size_max || (r > SIZE_MAX / 256); #endif - (N > SIZE_MAX / 128 / r)) { + if (test_size_max) { errno = ENOMEM; return -1; } diff --git a/toxencryptsave/crypto_pwhash_scryptsalsa208sha256/scrypt_platform.c b/toxencryptsave/crypto_pwhash_scryptsalsa208sha256/scrypt_platform.c index 5819651454..78acb1819e 100644 --- a/toxencryptsave/crypto_pwhash_scryptsalsa208sha256/scrypt_platform.c +++ b/toxencryptsave/crypto_pwhash_scryptsalsa208sha256/scrypt_platform.c @@ -41,13 +41,13 @@ alloc_region(escrypt_region_t * region, size_t size) { uint8_t * base, * aligned; #ifdef MAP_ANON - if ((base = (uint8_t *) mmap(NULL, size, PROT_READ | PROT_WRITE, + int flags; #ifdef MAP_NOCORE - MAP_ANON | MAP_PRIVATE | MAP_NOCORE, + flags = MAP_ANON | MAP_PRIVATE | MAP_NOCORE; #else - MAP_ANON | MAP_PRIVATE, + flags = MAP_ANON | MAP_PRIVATE; #endif - -1, 0)) == MAP_FAILED) + if ((base = (uint8_t *) mmap(NULL, size, PROT_READ | PROT_WRITE, flags, -1, 0)) == MAP_FAILED) base = NULL; aligned = base; #elif defined(HAVE_POSIX_MEMALIGN) diff --git a/toxencryptsave/crypto_pwhash_scryptsalsa208sha256/sse/pwhash_scryptsalsa208sha256_sse.c b/toxencryptsave/crypto_pwhash_scryptsalsa208sha256/sse/pwhash_scryptsalsa208sha256_sse.c index 856a655e3f..75fdf5b85d 100644 --- a/toxencryptsave/crypto_pwhash_scryptsalsa208sha256/sse/pwhash_scryptsalsa208sha256_sse.c +++ b/toxencryptsave/crypto_pwhash_scryptsalsa208sha256/sse/pwhash_scryptsalsa208sha256_sse.c @@ -319,7 +319,7 @@ escrypt_kdf_sse(escrypt_local_t * local, size_t B_size, V_size, XY_size, need; uint8_t * B; uint32_t * V, * XY; - size_t r = _r, p = _p; + size_t r = _r, p = _p; uint32_t i; /* Sanity-check parameters. */ @@ -345,11 +345,11 @@ escrypt_kdf_sse(escrypt_local_t * local, errno = EINVAL; return -1; } - if ((r > SIZE_MAX / 128 / p) || + _Bool test_size_max = (r > SIZE_MAX / 128 / p) || (N > SIZE_MAX / 128 / r); #if SIZE_MAX / 256 <= UINT32_MAX - (r > SIZE_MAX / 256) || + test_size_max = test_size_max || (r > SIZE_MAX / 256); #endif - (N > SIZE_MAX / 128 / r)) { + if (test_size_max) { errno = ENOMEM; return -1; }