cfgfile: check flags on creation for future proofing
authorStephen Hemminger <stephen@networkplumber.org>
Mon, 27 Apr 2020 23:16:25 +0000 (16:16 -0700)
committerThomas Monjalon <thomas@monjalon.net>
Tue, 16 Jun 2020 15:46:39 +0000 (17:46 +0200)
All API's should check that they support the flag values
passed. If an application passes an invalid flag it could
cause problems in later ABI.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
lib/librte_cfgfile/rte_cfgfile.c

index 9049fd9..714717d 100644 (file)
@@ -272,6 +272,10 @@ rte_cfgfile_create(int flags)
        int i;
        struct rte_cfgfile *cfg;
 
+       /* future proof flags usage */
+       if (flags & ~(CFG_FLAG_GLOBAL_SECTION | CFG_FLAG_EMPTY_VALUES))
+               return NULL;
+
        cfg = malloc(sizeof(*cfg));
 
        if (cfg == NULL)