]> The Tcpdump Group git mirrors - tcpdump/blobdiff - print-tftp.c
Fixed some warnings, added print-zep.c to CMakeLists
[tcpdump] / print-tftp.c
index e0bedc3918b7202b0b07e0a54a37d8b4b5d98078..2630e554caea64c8a0dc283bcca31a01c0230ce8 100644 (file)
 /* \summary: Trivial File Transfer Protocol (TFTP) printer */
 
 #ifdef HAVE_CONFIG_H
-#include "config.h"
+#include <config.h>
 #endif
 
-#include <netdissect-stdinc.h>
+#include "netdissect-stdinc.h"
 
 #include <string.h>
 
@@ -58,7 +58,6 @@
 #define        EEXISTS         6               /* file already exists */
 #define        ENOUSER         7               /* no such user */
 
-static const char tstr[] = " [|tftp]";
 
 /* op code to string mapping */
 static const struct tok op2str[] = {
@@ -92,19 +91,20 @@ tftp_print(netdissect_options *ndo,
            const u_char *bp, u_int length)
 {
        const char *cp;
-       int opcode;
+       u_int opcode;
        u_int ui;
 
+       ndo->ndo_protocol = "tftp";
        /* Print length */
-       ND_PRINT((ndo, " %d", length));
+       ND_PRINT(" %u", length);
 
        /* Print tftp request type */
        if (length < 2)
                goto trunc;
        ND_TCHECK_2(bp);
        opcode = EXTRACT_BE_U_2(bp);
-       cp = tok2str(op2str, "tftp-#%d", opcode);
-       ND_PRINT((ndo, " %s", cp));
+       cp = tok2str(op2str, "tftp-#%u", opcode);
+       ND_PRINT(" %s", cp);
        /* Bail if bogus opcode */
        if (*cp == 't')
                return;
@@ -117,11 +117,11 @@ tftp_print(netdissect_options *ndo,
        case WRQ:
                if (length == 0)
                        goto trunc;
-               ND_PRINT((ndo, " "));
+               ND_PRINT(" ");
                /* Print filename */
-               ND_PRINT((ndo, "\""));
-               ui = fn_printztn(ndo, bp, length, ndo->ndo_snapend);
-               ND_PRINT((ndo, "\""));
+               ND_PRINT("\"");
+               ui = nd_printztn(ndo, bp, length, ndo->ndo_snapend);
+               ND_PRINT("\"");
                if (ui == 0)
                        goto trunc;
                bp += ui;
@@ -130,8 +130,8 @@ tftp_print(netdissect_options *ndo,
                /* Print the mode - RRQ and WRQ only */
                if (length == 0)
                        goto trunc;     /* no mode */
-               ND_PRINT((ndo, " "));
-               ui = fn_printztn(ndo, bp, length, ndo->ndo_snapend);
+               ND_PRINT(" ");
+               ui = nd_printztn(ndo, bp, length, ndo->ndo_snapend);
                if (ui == 0)
                        goto trunc;
                bp += ui;
@@ -141,8 +141,8 @@ tftp_print(netdissect_options *ndo,
                while (length != 0) {
                        ND_TCHECK_1(bp);
                        if (EXTRACT_U_1(bp) != '\0')
-                               ND_PRINT((ndo, " "));
-                       ui = fn_printztn(ndo, bp, length, ndo->ndo_snapend);
+                               ND_PRINT(" ");
+                       ui = nd_printztn(ndo, bp, length, ndo->ndo_snapend);
                        if (ui == 0)
                                goto trunc;
                        bp += ui;
@@ -155,8 +155,8 @@ tftp_print(netdissect_options *ndo,
                while (length != 0) {
                        ND_TCHECK_1(bp);
                        if (EXTRACT_U_1(bp) != '\0')
-                               ND_PRINT((ndo, " "));
-                       ui = fn_printztn(ndo, bp, length, ndo->ndo_snapend);
+                               ND_PRINT(" ");
+                       ui = nd_printztn(ndo, bp, length, ndo->ndo_snapend);
                        if (ui == 0)
                                goto trunc;
                        bp += ui;
@@ -169,7 +169,7 @@ tftp_print(netdissect_options *ndo,
                if (length < 2)
                        goto trunc;     /* no block number */
                ND_TCHECK_2(bp);
-               ND_PRINT((ndo, " block %d", EXTRACT_BE_U_2(bp)));
+               ND_PRINT(" block %u", EXTRACT_BE_U_2(bp));
                break;
 
        case TFTP_ERROR:
@@ -177,27 +177,27 @@ tftp_print(netdissect_options *ndo,
                if (length < 2)
                        goto trunc;     /* no error code */
                ND_TCHECK_2(bp);
-               ND_PRINT((ndo, " %s", tok2str(err2str, "tftp-err-#%d \"",
-                                      EXTRACT_BE_U_2(bp))));
+               ND_PRINT(" %s", tok2str(err2str, "tftp-err-#%u \"",
+                                      EXTRACT_BE_U_2(bp)));
                bp += 2;
                length -= 2;
                /* Print error message string */
                if (length == 0)
                        goto trunc;     /* no error message */
-               ND_PRINT((ndo, " \""));
-               ui = fn_printztn(ndo, bp, length, ndo->ndo_snapend);
-               ND_PRINT((ndo, "\""));
+               ND_PRINT(" \"");
+               ui = nd_printztn(ndo, bp, length, ndo->ndo_snapend);
+               ND_PRINT("\"");
                if (ui == 0)
                        goto trunc;
                break;
 
        default:
                /* We shouldn't get here */
-               ND_PRINT((ndo, "(unknown #%d)", opcode));
+               ND_PRINT("(unknown #%u)", opcode);
                break;
        }
        return;
 trunc:
-       ND_PRINT((ndo, "%s", tstr));
+       nd_print_trunc(ndo);
        return;
 }