]> The Tcpdump Group git mirrors - tcpdump/blobdiff - print-ether.c
Add a nd_print_trunc() call
[tcpdump] / print-ether.c
index d0eaf8cd7ecc1cdf93096d733b844fc0ea489edb..887a8eee91b140da1a188a208c256e8b7089dbad 100644 (file)
@@ -206,7 +206,8 @@ recurse:
                 * the enclosed type field.
                 */
                if (caplen < 4) {
-                       ND_PRINT("[|vlan]");
+                       ndo->ndo_protocol = "vlan";
+                       nd_print_trunc(ndo);
                        return (hdrlen + caplen);
                }
                if (ndo->ndo_eflag) {
@@ -289,7 +290,7 @@ netanalyzer_if_print(netdissect_options *ndo, const struct pcap_pkthdr *h,
         * Fail if we don't have enough data for the Hilscher pseudo-header.
         */
        ndo->ndo_protocol = "netanalyzer_if";
-       if (h->len < 4 || h->caplen < 4) {
+       if (h->caplen < 4) {
                nd_print_trunc(ndo);
                return (h->caplen);
        }
@@ -318,7 +319,7 @@ netanalyzer_transparent_if_print(netdissect_options *ndo,
         * preamble, and SOF.
         */
        ndo->ndo_protocol = "netanalyzer_transparent_if";
-       if (h->len < 12 || h->caplen < 12) {
+       if (h->caplen < 12) {
                nd_print_trunc(ndo);
                return (h->caplen);
        }
@@ -376,7 +377,8 @@ ethertype_print(netdissect_options *ndo,
 
        case ETHERTYPE_ISO:
                if (length == 0 || caplen == 0) {
-                       ND_PRINT(" [|osi]");
+                       ndo->ndo_protocol = "isoclns";
+                       nd_print_trunc(ndo);
                        return (1);
                }
                isoclns_print(ndo, p + 1, length - 1);