Fix a strange check in the auto DH codepath
authortb <tb@openbsd.org>
Sun, 14 Nov 2021 22:31:29 +0000 (22:31 +0000)
committertb <tb@openbsd.org>
Sun, 14 Nov 2021 22:31:29 +0000 (22:31 +0000)
commit2368fd79a98873cc9cc10a847130d9ede37ba507
tree09e27e6d17fc74c8a62117bfb2d17f6cef7536c7
parent246ef78e32909e24ade3fc59e50f162cf9de56c4
Fix a strange check in the auto DH codepath

The code assumes that the server certificate has an RSA key and bases
the calculation of the size of the ephemeral DH key on this assumption.
So instead of checking whether we have any key by inspecting the dh
part of the union, let's check that we actually have an RSA key.
While here, make sure that its length is non-negative.

ok jsing
lib/libssl/ssl_lib.c