Consistently call BN_init() before BN_with_flags()
authortb <tb@openbsd.org>
Sun, 26 Dec 2021 15:16:50 +0000 (15:16 +0000)
committertb <tb@openbsd.org>
Sun, 26 Dec 2021 15:16:50 +0000 (15:16 +0000)
commit93ee03aa337ee2324d31d1af210557b67994fdcf
treef5a3fdd478ab73ff31d76acc9e3da155e3ab4cb6
parent2a6cb758e0c0f8cf9f01ec114d327885844717c5
Consistently call BN_init() before BN_with_flags()

BN_with_flags() preserves the BN_FLG_MALLOCED flag of the destination
which results in a potential use of an uninitialized bit. In practice
this doesn't matter since we don't free the cloned BIGNUMs anyway.

As jsing points out, these are mostly pointless noise and should be
garbage collected. I'll leave that for another rainy day.

Coverity flagged one instance BN_gcd_no_branch(), the rest was found by
the ever so helpful grep(1).

CID 345122

ok jsing
lib/libcrypto/bn/bn_gcd.c
lib/libcrypto/rsa/rsa_eay.c
lib/libcrypto/rsa/rsa_gen.c