api: refactor api data storage
[vpp.git] / src / vnet / devices / tap / tap.c
index 7c8a9b0..360c001 100644 (file)
@@ -334,10 +334,10 @@ tap_create_if (vlib_main_t * vm, tap_create_if_args_t * args)
          args->error = clib_error_return_unix (0, "open '/dev/net/tun'");
          goto error;
        }
+      vec_add1 (vif->tap_fds, qfd);
       _IOCTL (qfd, TUNSETIFF, (void *) &ifr);
       tap_log_dbg (vif, "TUNSETIFF fd %d name %s flags 0x%x", qfd,
                   ifr.ifr_ifrn.ifrn_name, ifr.ifr_flags);
-      vec_add1 (vif->tap_fds, qfd);
     }
 
   for (i = 0; i < vif->num_rxqs; i++)
@@ -694,7 +694,7 @@ tap_create_if (vlib_main_t * vm, tap_create_if_args_t * args)
     {
       hw->min_frame_size = TUN_MIN_PACKET_BYTES;
       vnet_hw_interface_set_mtu (
-       vnm, hw->sw_if_index,
+       vnm, hw->hw_if_index,
        args->host_mtu_size ? args->host_mtu_size : TUN_DEFAULT_PACKET_BYTES);
     }