]> git.ipfire.org Git - thirdparty/nftables.git/commitdiff
expression: display an error on unknown datatype
authorPablo Neira Ayuso <pablo@netfilter.org>
Mon, 24 May 2021 20:05:02 +0000 (22:05 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Mon, 24 May 2021 20:16:14 +0000 (22:16 +0200)
 # nft describe foo
 datatype foo is invalid

Fixes: 21cbab5b6ffe ("expression: extend 'nft describe' to allow listing data types")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
src/expression.c

index 7ae075d23ee3e37904ec4855a598df26d93292ce..c91333631ad03a010edea6d21414c49ce039f195 100644 (file)
@@ -135,9 +135,12 @@ void expr_describe(const struct expr *expr, struct output_ctx *octx)
                nft_print(octx, "datatype %s (%s)",
                          dtype->name, dtype->desc);
                len = dtype->size;
-       } else {
+       } else if (dtype != &invalid_type) {
                nft_print(octx, "%s expression, datatype %s (%s)",
                          expr_name(expr), dtype->name, dtype->desc);
+       } else {
+               nft_print(octx, "datatype %s is invalid\n", expr->identifier);
+               return;
        }
 
        if (dtype->basetype != NULL) {