]> git.ipfire.org Git - thirdparty/nftables.git/commitdiff
main: Validate the number of numeric options
authorElise Lennion <elise.lennion@gmail.com>
Thu, 2 Feb 2017 12:25:53 +0000 (10:25 -0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Sun, 5 Feb 2017 20:37:22 +0000 (21:37 +0100)
The number of numeric options influences the behavior and the user
should be warned if a invalid number is used.

Signed-off-by: Elise Lennion <elise.lennion@gmail.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
src/main.c

index 6ba752b1e5b392043d8dfdeb18646dad36b8e76a..1cc8b39ff4ab9f963a3984a414b48ae5f6fb15c4 100644 (file)
@@ -288,7 +288,12 @@ int main(int argc, char * const *argv)
                        include_paths[num_include_paths++] = optarg;
                        break;
                case OPT_NUMERIC:
-                       numeric_output++;
+                       if (++numeric_output > NUMERIC_ALL) {
+                               fprintf(stderr, "Too many numeric options "
+                                               "used, max. %u\n",
+                                       NUMERIC_ALL);
+                               exit(NFT_EXIT_FAILURE);
+                       }
                        break;
                case OPT_STATELESS:
                        stateless_output++;