diff --git a/components/esp_hw_support/port/linux/esp_random.c b/components/esp_hw_support/port/linux/esp_random.c index e1dc505a2e..19bed4dc65 100644 --- a/components/esp_hw_support/port/linux/esp_random.c +++ b/components/esp_hw_support/port/linux/esp_random.c @@ -17,13 +17,16 @@ static void __attribute__((constructor)) esp_random_init(void) { } uint32_t esp_random(void) { uint32_t random_number; - assert(getentropy(&random_number, sizeof(random_number)) == 0); + int result = getentropy(&random_number, sizeof(random_number)); + assert(result == 0); + (void)result; return random_number; } void esp_fill_random(void *buf, size_t len) { assert(buf != NULL); + int result; // Note that we can't use getentropy() with len > 256 directly (see getentropy man page), // hence reading in chunks @@ -31,8 +34,12 @@ void esp_fill_random(void *buf, size_t len) const size_t REST_CHUNK_SIZE = len % GETENTROPY_MAX_LEN; for (size_t chunk_num = 0; chunk_num < FULL_CHUNKS_NUM; chunk_num++) { - assert(getentropy(buf + chunk_num * GETENTROPY_MAX_LEN, GETENTROPY_MAX_LEN) == 0); + result = getentropy(buf + chunk_num * GETENTROPY_MAX_LEN, GETENTROPY_MAX_LEN); + assert(result == 0); + (void)result; } - assert(getentropy(buf + FULL_CHUNKS_NUM * GETENTROPY_MAX_LEN, REST_CHUNK_SIZE) == 0); + result = getentropy(buf + FULL_CHUNKS_NUM * GETENTROPY_MAX_LEN, REST_CHUNK_SIZE); + assert(result == 0); + (void)result; }