Rework DSA_sign() and DSA_verify()
authortb <tb@openbsd.org>
Sat, 19 Nov 2022 11:48:24 +0000 (11:48 +0000)
committertb <tb@openbsd.org>
Sat, 19 Nov 2022 11:48:24 +0000 (11:48 +0000)
commit0c6c9df49e0705b9b151b8603834dcfc013ea7e7
tree21247574ab9f83e262ed1f796419a53f637abe02
parent9320ea12de2d959fb77c8a390af558b3c5fffaec
Rework DSA_sign() and DSA_verify()

Change DSA_sign() to single exit and check the signed i2d_DSA_SIG() return
value before assigning it to an unsigned int.

In DSA_verify() let d2i_DSA_SIG() handle the allocation, split error check
of i2d_DSA_SIG() from signature check and change an unnecessary freezero()
to free.

ok jsing
lib/libcrypto/dsa/dsa_asn1.c