interface: fix pcap tx/rx trace cli handling 18/21018/2
authorJohn Lo <loj@cisco.com>
Thu, 1 Aug 2019 19:15:36 +0000 (15:15 -0400)
committerDave Barach <openvpp@barachs.net>
Thu, 1 Aug 2019 22:53:14 +0000 (22:53 +0000)
Provide default packet_to_capture value. Display interface name
correctly for "pcap tx/rx trace status".

Type: fix

Signed-off-by: John Lo <loj@cisco.com>
Change-Id: I7064d0dbea236a9aff68bba7fbaf2c4a73b16c6f
Signed-off-by: John Lo <loj@cisco.com>
src/vlib/main.h
src/vnet/interface_cli.c
src/vnet/interface_output.c
src/vppinfra/pcap.h

index 9b63116..dd28cb8 100644 (file)
@@ -153,12 +153,6 @@ typedef struct vlib_main_t
   /* pcap rx / tx tracing */
   vnet_pcap_t pcap[VLIB_N_RX_TX];
 
-  int pcap_enable;
-  pcap_main_t pcap_main;
-  u8 *pcap_filename;
-  u32 pcap_sw_if_index;
-  u32 pcap_pkts_to_capture;
-
   /* Error handling. */
   vlib_error_main_t error_main;
 
index f990cde..4378544 100644 (file)
@@ -1700,8 +1700,6 @@ pcap_trace_command_internal (vlib_main_t * vm,
                             unformat_input_t * input,
                             vlib_cli_command_t * cmd, int rx_tx)
 {
-#define PCAP_DEF_PKT_TO_CAPTURE (1000)
-
   unformat_input_t _line_input, *line_input = &_line_input;
   u8 *filename;
   u8 *chroot_filename = 0;
@@ -1722,6 +1720,8 @@ pcap_trace_command_internal (vlib_main_t * vm,
          if (vm->pcap[rx_tx].pcap_enable == 0)
            {
              enabled = 1;
+             vm->pcap[rx_tx].pcap_main.n_packets_to_capture =
+               PCAP_DEF_PKT_TO_CAPTURE;
            }
          else
            {
@@ -1812,9 +1812,7 @@ pcap_trace_command_internal (vlib_main_t * vm,
            {
              vlib_cli_output
                (vm, "max is %d for any interface to file %s",
-                vm->pcap[rx_tx].pcap_main.n_packets_to_capture ?
-                vm->pcap[rx_tx].pcap_main.n_packets_to_capture
-                : PCAP_DEF_PKT_TO_CAPTURE,
+                vm->pcap[rx_tx].pcap_main.n_packets_to_capture,
                 vm->pcap[rx_tx].pcap_main.file_name ?
                 (u8 *) vm->pcap[rx_tx].pcap_main.file_name :
                 (u8 *) "/tmp/vpe.pcap");
@@ -1822,10 +1820,7 @@ pcap_trace_command_internal (vlib_main_t * vm,
          else
            {
              vlib_cli_output (vm, "max is %d for interface %U to file %s",
-                              vm->pcap[rx_tx].pcap_main.n_packets_to_capture
-                              ? vm->pcap[rx_tx].
-                              pcap_main.n_packets_to_capture :
-                              PCAP_DEF_PKT_TO_CAPTURE,
+                              vm->pcap[rx_tx].pcap_main.n_packets_to_capture,
                               format_vnet_sw_if_index_name, vnm,
                               vm->pcap[rx_tx].pcap_sw_if_index,
                               vm->pcap[rx_tx].
index 884c00d..b4832bf 100644 (file)
@@ -1407,7 +1407,7 @@ pcap_drop_trace_command_fn (vlib_main_t * vm,
 
              clib_memset (&im->pcap_main, 0, sizeof (im->pcap_main));
              im->pcap_main.file_name = (char *) im->pcap_filename;
-             im->pcap_main.n_packets_to_capture = 100;
+             im->pcap_main.n_packets_to_capture = PCAP_DEF_PKT_TO_CAPTURE;
              if (im->pcap_pkts_to_capture)
                im->pcap_main.n_packets_to_capture = im->pcap_pkts_to_capture;
 
index 893c67b..c3e1fef 100644 (file)
@@ -193,6 +193,8 @@ typedef struct
   u32 min_packet_bytes, max_packet_bytes;
 } pcap_main_t;
 
+#define PCAP_DEF_PKT_TO_CAPTURE (100)
+
 #endif /* included_vppinfra_pcap_h */
 
 /*