if ((offset_count = BN_CTX_get(ctx)) == NULL)
goto err;
- BN_add_word(offset_count, prime_offset_count);
+ if (!BN_add_word(offset_count, prime_offset_count))
+ goto err;
loop:
if (!BN_rand(rnd, bits - prime_multiplier_bits, 0, 1))
if (!BN_rand_range(offset_index, offset_count))
goto err;
- BN_mul_word(rnd, prime_multiplier);
- BN_add_word(rnd, prime_offsets[BN_get_word(offset_index)]);
+ if (!BN_mul_word(rnd, prime_multiplier)
+ || !BN_add_word(rnd, prime_offsets[BN_get_word(offset_index)]))
+ goto err;
/* we now have a random number 'rand' to test. */