Improve error handling in OBJ_add_object()
authortb <tb@openbsd.org>
Tue, 5 Sep 2023 14:59:00 +0000 (14:59 +0000)
committertb <tb@openbsd.org>
Tue, 5 Sep 2023 14:59:00 +0000 (14:59 +0000)
commit281c2125819493c8863e4ad9557474d0b8ef446f
tree8d8ac96097b6c3faf349183d73f6831c922ba202
parent0c4652a22d8f07127593a31a97458e4615ee7c14
Improve error handling in OBJ_add_object()

There is no need for a helper function to obfuscate lh_ADDED_OBJ_new().
Just call the real thing directly.

Adding an object with a NID of NID_undef basically amounts to disabling
a built-in OID. It does so in an incoherent fashion and the caller can't
easily tell success from failure of the operation. Arguably the result is
a corrupted objects table.

Let's not allow adding such an object in an attempt at keeping things
slightly more coherent.

Issue noted and initial diff by schwarze while writing documentation

ok schwarze
lib/libcrypto/objects/obj_dat.c