]> The Tcpdump Group git mirrors - tcpdump/commitdiff
For -L, print the DLTs in order, not reverse order.
authorGuy Harris <[email protected]>
Fri, 27 Mar 2015 20:02:36 +0000 (13:02 -0700)
committerGuy Harris <[email protected]>
Fri, 27 Mar 2015 20:02:36 +0000 (13:02 -0700)
Reverse order puts the default DLT last, which is a bit weird.

tcpdump.c

index f8c0b3bd8d9f618bc8f0e26826efe87934b28d1d..8edb0367681d5c1a6ca5fd873bc1e7f1d012b93b 100644 (file)
--- a/tcpdump.c
+++ b/tcpdump.c
@@ -486,7 +486,7 @@ show_tstamp_types_and_exit(const char *device, pcap_t *pd)
 static void
 show_dlts_and_exit(const char *device, pcap_t *pd)
 {
-       int n_dlts;
+       int n_dlts, i;
        int *dlts = 0;
        const char *dlt_name;
 
@@ -512,21 +512,21 @@ show_dlts_and_exit(const char *device, pcap_t *pd)
                (void) fprintf(stderr, "Data link types for %s (use option -y to set):\n",
                    device);
 
-       while (--n_dlts >= 0) {
-               dlt_name = pcap_datalink_val_to_name(dlts[n_dlts]);
+       for (i = 0; i < n_dlts; i++) {
+               dlt_name = pcap_datalink_val_to_name(dlts[i]);
                if (dlt_name != NULL) {
                        (void) fprintf(stderr, "  %s (%s)", dlt_name,
-                           pcap_datalink_val_to_description(dlts[n_dlts]));
+                           pcap_datalink_val_to_description(dlts[i]));
 
                        /*
                         * OK, does tcpdump handle that type?
                         */
-                       if (lookup_printer(dlts[n_dlts]) == NULL)
+                       if (lookup_printer(dlts[i]) == NULL)
                                (void) fprintf(stderr, " (printing not supported)");
                        fprintf(stderr, "\n");
                } else {
                        (void) fprintf(stderr, "  DLT %d (printing not supported)\n",
-                           dlts[n_dlts]);
+                           dlts[i]);
                }
        }
 #ifdef HAVE_PCAP_FREE_DATALINKS