examples/l3fwd-acl: check fseek return
authorKuba Kozak <kubax.kozak@intel.com>
Tue, 3 Oct 2017 11:48:02 +0000 (13:48 +0200)
committerThomas Monjalon <thomas@monjalon.net>
Fri, 13 Oct 2017 22:38:35 +0000 (00:38 +0200)
Add return value check and error handling for fseek call.

Coverity issue: 143435
Fixes: 361b2e9559fc ("acl: new sample l3fwd-acl")

Signed-off-by: Kuba Kozak <kubax.kozak@intel.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Acked-by: Zhiyong Yang <zhiyong.yang@intel.com>
examples/l3fwd-acl/main.c

index a7f9fff..4d263f1 100644 (file)
@@ -1026,6 +1026,7 @@ add_rules(const char *rule_path,
        char buff[LINE_MAX];
        FILE *fh = fopen(rule_path, "rb");
        unsigned int i = 0;
+       int val;
 
        if (fh == NULL)
                rte_exit(EXIT_FAILURE, "%s: Open %s failed\n", __func__,
@@ -1042,7 +1043,11 @@ add_rules(const char *rule_path,
                rte_exit(EXIT_FAILURE, "Not find any route entries in %s!\n",
                                rule_path);
 
-       fseek(fh, 0, SEEK_SET);
+       val = fseek(fh, 0, SEEK_SET);
+       if (val < 0) {
+               rte_exit(EXIT_FAILURE, "%s: File seek operation failed\n",
+                       __func__);
+       }
 
        acl_rules = calloc(acl_num, rule_size);