VPP-189 More coverity bug fixes 20/2120/3
authorDave Barach <dave@barachs.net>
Thu, 28 Jul 2016 21:55:30 +0000 (17:55 -0400)
committerDave Barach <dave@barachs.net>
Thu, 28 Jul 2016 22:41:31 +0000 (18:41 -0400)
Change-Id: I6e9290b26b1e74fc5652b689c8d5cc2972ac11d5
Signed-off-by: Dave Barach <dave@barachs.net>
vnet/vnet/devices/af_packet/af_packet.c
vnet/vnet/devices/dpdk/cli.c
vnet/vnet/ethernet/node.c
vnet/vnet/interface_cli.c
vnet/vnet/ip/ip4_forward.c

index e3ed385..91f3c22 100644 (file)
@@ -156,7 +156,8 @@ create_packet_v2_sock(u8 * name, tpacket_req_t * rx_req, tpacket_req_t * tx_req,
 
   return 0;
 error:
-  close(*fd);
+  if (*fd >= 0)
+    close(*fd);
   *fd = -1;
   return ret;
 }
index 3b0befd..c449eeb 100644 (file)
@@ -642,7 +642,7 @@ set_dpdk_if_desc (vlib_main_t *vm, unformat_input_t *input,
 
   rv = dpdk_port_setup(dm, xd);
 
-  return rv < 0 ? rv : 0;
+  return rv;
 }
 
 VLIB_CLI_COMMAND (cmd_set_dpdk_if_desc,static) = {
index 57a6995..eae0a2b 100644 (file)
@@ -76,7 +76,6 @@ vlib_node_registration_t ethernet_input_node;
 typedef enum {
   ETHERNET_INPUT_VARIANT_ETHERNET,
   ETHERNET_INPUT_VARIANT_ETHERNET_TYPE,
-  ETHERNET_INPUT_VARIANT_VLAN,
   ETHERNET_INPUT_VARIANT_NOT_L2,
 } ethernet_input_variant_t;
 
index d0d7515..9052f62 100644 (file)
@@ -605,15 +605,15 @@ create_sub_interfaces (vlib_main_t * vm,
       template.sup_sw_if_index = hi->sw_if_index;
       template.sub.id = id;
       error = vnet_create_sw_interface (vnm, &template, &sw_if_index);
-      if (error) goto done;
+      if (error) 
+        goto done;
+
       hash_set (hi->sub_interface_sw_if_index_by_id, id, sw_if_index);
       hash_set_mem (im->sw_if_index_by_sup_and_sub, kp, sw_if_index);
-      vlib_cli_output(vm, "%U\n", format_vnet_sw_if_index_name, vnet_get_main(), sw_if_index);
+      vlib_cli_output(vm, "%U\n", format_vnet_sw_if_index_name, 
+                      vnet_get_main(), sw_if_index);
     }
 
-  if (error)
-    goto done;
-
  done:
   return error;
 }
index 6b7fa9b..767cc8f 100644 (file)
@@ -193,7 +193,12 @@ ip4_fib_set_adj_index (ip4_main_t * im,
                        fib->new_hash_values);
 
       p = hash_get (hash, dst_address_u32);
-      clib_memcpy (p, fib->new_hash_values, vec_bytes (fib->new_hash_values));
+      /* hash_get should never return NULL here */
+      if (p)
+          clib_memcpy (p, fib->new_hash_values, 
+                       vec_bytes (fib->new_hash_values));
+      else
+          ASSERT(0);
     }
 }