]> git.ipfire.org Git - thirdparty/nftables.git/commitdiff
rule: Avoid segfault with anonymous chains
authorPablo Neira Ayuso <pablo@netfilter.org>
Thu, 17 Mar 2022 20:53:25 +0000 (21:53 +0100)
committerPablo Neira Ayuso <pablo@netfilter.org>
Thu, 17 Mar 2022 20:53:45 +0000 (21:53 +0100)
Phil Sutter says:

"When trying to add a rule which contains an anonymous chain to a
non-existent chain, string_misspell_update() is called with a NULL
string because the anonymous chain has no name. Avoid this by making the
function NULL-pointer tolerant."

Fixes: c330152b7f777 ("src: support for implicit chain bindings")
Reported-by: Phil Sutter <phil@nwl.cc>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
src/rule.c

index b1700c40079dcd7e8899d61cca2d64cebc33fb53..19b8cb0323eefea620a4b3be1e26379193335bb5 100644 (file)
@@ -758,6 +758,9 @@ struct chain *chain_lookup_fuzzy(const struct handle *h,
        struct table *table;
        struct chain *chain;
 
+       if (!h->chain.name)
+               return NULL;
+
        string_misspell_init(&st);
 
        list_for_each_entry(table, &cache->table_cache.list, cache.list) {