summaryrefslogtreecommitdiffstats
path: root/src/vnet
diff options
context:
space:
mode:
Diffstat (limited to 'src/vnet')
-rw-r--r--src/vnet/interface_cli.c2
-rw-r--r--src/vnet/interface_output.c2
-rw-r--r--src/vnet/pg/output.c2
3 files changed, 3 insertions, 3 deletions
diff --git a/src/vnet/interface_cli.c b/src/vnet/interface_cli.c
index 8f1fde7e852..3164f7a31f2 100644
--- a/src/vnet/interface_cli.c
+++ b/src/vnet/interface_cli.c
@@ -1776,7 +1776,7 @@ vnet_pcap_dispatch_trace_configure (vnet_pcap_dispatch_trace_args_t * a)
vlib_cli_output (vm, "Write %d packets to %s, and stop capture...",
pm->n_packets_captured, pm->file_name);
error = pcap_write (pm);
- if (pm->file_descriptor >= 0)
+ if (pm->flags & PCAP_MAIN_INIT_DONE)
pcap_close (pm);
/* Report I/O errors... */
if (error)
diff --git a/src/vnet/interface_output.c b/src/vnet/interface_output.c
index 1506db91ea9..721236a777f 100644
--- a/src/vnet/interface_output.c
+++ b/src/vnet/interface_output.c
@@ -1467,7 +1467,7 @@ pcap_drop_trace_command_fn (vlib_main_t * vm,
im->pcap_main.n_packets_to_capture =
im->pcap_main.n_packets_captured;
error = pcap_write (&im->pcap_main);
- if (im->pcap_main.file_descriptor >= 0)
+ if (im->pcap_main.flags & PCAP_MAIN_INIT_DONE)
pcap_close (&im->pcap_main);
if (error)
clib_error_report (error);
diff --git a/src/vnet/pg/output.c b/src/vnet/pg/output.c
index b5ee157b4c6..d8059fab186 100644
--- a/src/vnet/pg/output.c
+++ b/src/vnet/pg/output.c
@@ -79,7 +79,7 @@ pg_output (vlib_main_t * vm, vlib_node_runtime_t * node, vlib_frame_t * frame)
}
if (pif->pcap_file_name != 0)
pcap_write (&pif->pcap_main);
- if (pif->pcap_main.file_descriptor >= 0
+ if ((pif->pcap_main.flags & PCAP_MAIN_INIT_DONE)
&& pif->pcap_main.n_packets_captured >=
pif->pcap_main.n_packets_to_capture)
pcap_close (&pif->pcap_main);