Rewrite string_to_hex() and hex_to_string() using CBB/CBS
authortb <tb@openbsd.org>
Fri, 12 May 2023 13:56:17 +0000 (13:56 +0000)
committertb <tb@openbsd.org>
Fri, 12 May 2023 13:56:17 +0000 (13:56 +0000)
commit6538316403f5b4a503c4cfbad96069b4942cf92e
tree6696822bfcf0a8ca9ac0eb8474764c1e45df387e
parent5e9e8a91ba929b673497cfe2c1ef90bc86a12592
Rewrite string_to_hex() and hex_to_string() using CBB/CBS

These helpers used to contain messy pointer bashing some with weird logic
for NUL termination. This can be written more safely and cleanly using
CBB/CBS, so do that. The result is nearly but not entirely identical to
code used elsewhere due to some strange semantics. Apart from errors pushed
on the stack due to out-of-memory conditions, care was taken to preserve
error codes.

ok jsing
lib/libcrypto/x509/x509_utl.c