diff --git a/ethertype-dump.c b/ethertype-dump.c index 81aa195..27c4fa2 100644 --- a/ethertype-dump.c +++ b/ethertype-dump.c @@ -82,14 +82,6 @@ int main(int argc, char **argv) { continue; } - if (frame_length > 1522) { - errno = 0; - if (printf("Overlong frame (%zdB)\n", frame_length) == -1) { - err(1, "printf"); - } - continue; - } - // Extract the MACs // 012345 012345 // dest source @@ -123,11 +115,22 @@ int main(int argc, char **argv) { errno = 0; if (ethertype_meaning == NULL) { - if (printf(", length: %zd\n", frame_length) == -1) { + if (printf(", length: %zd", frame_length) == -1) { err(1, "printf"); } } else { - if (printf(" (%s), length: %zd\n", ethertype_meaning, frame_length) == -1) { + if (printf(" (%s), length: %zd", ethertype_meaning, frame_length) == -1) { + err(1, "printf"); + } + } + + errno = 0; + if (frame_length > 1522) { + if (printf(" (overlong)\n") == -1) { + err(1, "printf"); + } + } else { + if (printf("\n") == -1) { err(1, "printf"); } }