Don't have -M affect -v yet; if we end up, for example, having dumpcap
authorguy <guy@f5534014-38df-0310-8fa8-9805f1628bb7>
Wed, 19 May 2010 23:27:35 +0000 (23:27 +0000)
committerguy <guy@f5534014-38df-0310-8fa8-9805f1628bb7>
Wed, 19 May 2010 23:27:35 +0000 (23:27 +0000)
being the only program that needs to be linked with *pcap, that's when
we'd want to fetch that information, but there might be other libraries
(e.g., the POSIX capabilities library) that it might be linked with but
that programs that use it aren't linked with.

Don't commit to the output formats of -M, as they are, as noted, subject
to change from release to release.

git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@32904 f5534014-38df-0310-8fa8-9805f1628bb7

doc/dumpcap.pod
dumpcap.c

index f49c79d397f7e992f02a44a99f627ce8ca063a77..681e6d23d44df6455611b0f312240835f904b0e0 100644 (file)
@@ -191,15 +191,9 @@ link types can be used for the B<-y> option.
 
 =item -M
 
-When used with B<-v>, B<-D>, B<-L> and B<-S>, print machine-readable
-output.  The machine-readable output of B<-v> gives only the
-libpcap/WinPcap version information; the machine-readable output of
-B<-D> gives additional per-interface information; the machine-readable
-output of B<-L> gives additional interface capability information and
-additional per-link-layer-type information; the machine-readable output
-of B<-S> doesn't print the column headers.  The machine-readable output
-is intended to be read by B<Wireshark> and B<TShark>; its format is
-subject to change from release to release.
+When used with B<-D>, B<-L> and B<-S>, print machine-readable output. 
+The machine-readable output is intended to be read by B<Wireshark> and
+B<TShark>; its format is subject to change from release to release.
 
 =item -n
 
index 81b3795d8877edc1976f8558f961999f18d29e9d..e012a5b292bfd87c519a9e302ff33d3ad285066c 100644 (file)
--- a/dumpcap.c
+++ b/dumpcap.c
@@ -3145,7 +3145,6 @@ main(int argc, char *argv[])
   gboolean             stats_known;
   struct pcap_stat     stats;
   GLogLevelFlags       log_flags;
-  gboolean             print_version_info = FALSE;
   gboolean             list_interfaces = FALSE;
   gboolean             list_link_layer_types = FALSE;
   gboolean             machine_readable = FALSE;
@@ -3428,9 +3427,22 @@ main(int argc, char *argv[])
         exit_main(0);
         break;
       case 'v':        /* Show version and exit */
-        print_version_info = TRUE;
-        run_once_args++;
+      {
+        GString             *comp_info_str;
+        GString             *runtime_info_str;
+        /* Assemble the compile-time version information string */
+        comp_info_str = g_string_new("Compiled ");
+        get_compiled_version_info(comp_info_str, NULL);
+
+        /* Assemble the run-time version information string */
+        runtime_info_str = g_string_new("Running ");
+        get_runtime_version_info(runtime_info_str, NULL);
+        show_version(comp_info_str, runtime_info_str);
+        g_string_free(comp_info_str, TRUE);
+        g_string_free(runtime_info_str, TRUE);
+        exit_main(0);
         break;
+      }
       /*** capture option specific ***/
       case 'a':        /* autostop criteria */
       case 'b':        /* Ringbuffer option */
@@ -3499,7 +3511,7 @@ main(int argc, char *argv[])
         print_statistics = TRUE;
         run_once_args++;
         break;
-      case 'M':        /* For -D and -L, print machine-readable output */
+      case 'M':        /* For -D, -L, and -S, print machine-readable output */
         machine_readable = TRUE;
         break;
       default:
@@ -3533,7 +3545,7 @@ main(int argc, char *argv[])
   }
 
   if (run_once_args > 1) {
-    cmdarg_err("Only one of -v, -D, -L, or -S may be supplied.");
+    cmdarg_err("Only one of -D, -L, or -S may be supplied.");
     exit_main(1);
   } else if (run_once_args == 1) {
     /* We're supposed to print some information, rather than
@@ -3562,41 +3574,6 @@ main(int argc, char *argv[])
     }
   }
 
-  if (print_version_info) {
-    GString             *comp_info_str;
-    GString             *runtime_info_str;
-
-    if (machine_readable) {
-      /* Print only the *pcap version information. */
-      comp_info_str = g_string_new("");
-      get_compiled_pcap_version(comp_info_str);
-
-      runtime_info_str = g_string_new("");
-      get_runtime_pcap_version(runtime_info_str);
-
-      if (capture_child) {
-        /* Let our parent know we succeeded. */
-        pipe_write_block(2, SP_SUCCESS, NULL);
-      }
-
-      /* Print the two version strings on separate lines. */
-      printf("%s\n", comp_info_str->str);
-      printf("%s\n", runtime_info_str->str);
-    } else {
-      /* Assemble the compile-time version information string */
-      comp_info_str = g_string_new("Compiled ");
-      get_compiled_version_info(comp_info_str, NULL);
-
-      /* Assemble the run-time version information string */
-      runtime_info_str = g_string_new("Running ");
-      get_runtime_version_info(runtime_info_str, NULL);
-      show_version(comp_info_str, runtime_info_str);
-    }
-    g_string_free(comp_info_str, TRUE);
-    g_string_free(runtime_info_str, TRUE);
-    exit_main(0);
-  }
-
   /*
    * "-D" requires no interface to be selected; it's supposed to list
    * all interfaces.