]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
MINOR: log/cbor: _lf_cbor_encode_byte() explicitly requires non-NULL ctx (again)
authorAurelien DARRAGON <adarragon@haproxy.com>
Tue, 30 Apr 2024 06:55:13 +0000 (08:55 +0200)
committerAurelien DARRAGON <adarragon@haproxy.com>
Tue, 30 Apr 2024 08:10:35 +0000 (10:10 +0200)
The BUG_ON() statement that was added in 9bdea51 ("MINOR: log/cbor:
_lf_cbor_encode_byte() explicitly requires non-NULL ctx") isn't
sufficient as Coverity still thinks the lf_buildctx itself may be NULL
as shown in GH #2554. In fact the original reports complains about the
lf_buildctx itself and I didn't understand it properly, let's add another
check in the BUG_ON() to ensure both cbor_ctx and cbor_ctx->ctx are not
NULL since it is not expected if used properly.

src/log.c

index ee22e94ac12a6a400694d35fdfb21bf76cbb7654..4ff4e3ad4ae364dc6382ca0e3eb9409cfbf7375c 100644 (file)
--- a/src/log.c
+++ b/src/log.c
@@ -1794,7 +1794,7 @@ static char *_lf_cbor_encode_byte(struct cbor_encode_ctx *cbor_ctx,
 {
        struct lf_buildctx *ctx;
 
-       BUG_ON(!cbor_ctx);
+       BUG_ON(!cbor_ctx || !cbor_ctx->e_fct_ctx);
        ctx = cbor_ctx->e_fct_ctx;
 
        if (ctx->options & LOG_OPT_BIN) {