Add debugging printfs for tftp packets
authorJoseph C. Lehner <joseph.c.lehner@gmail.com>
Sun, 7 Feb 2016 20:29:37 +0000 (21:29 +0100)
committerJoseph C. Lehner <joseph.c.lehner@gmail.com>
Sun, 7 Feb 2016 20:29:37 +0000 (21:29 +0100)
tftp.c

diff --git a/tftp.c b/tftp.c
index 9d6ae51e0d3b3456674349338dcf1adcbc0c2c96..89d98c0c154a1a16539f627a970183cc78cda4cd 100644 (file)
--- a/tftp.c
+++ b/tftp.c
@@ -85,7 +85,7 @@ static void pkt_mkwrq(char *pkt, const char *filename)
 
        filename = leafname(filename);
        if (!is_netascii(filename) || strlen(filename) > 500) {
-               fprintf(stderr, "Overlong/illegal filename; using 'firmware.bin'.");
+               fprintf(stderr, "Overlong/illegal filename; using 'firmware.bin'.\n");
                filename = "firmware.bin";
        }
 
@@ -157,6 +157,12 @@ static ssize_t tftp_recvfrom(int sock, char *pkt, uint16_t* port,
                return -2;
        }
 
+       if (verbosity > 2) {
+               printf(">> ");
+               pkt_print(pkt, stdout);
+               printf("\n");
+       }
+
        return len;
 }
 
@@ -187,6 +193,12 @@ static ssize_t tftp_sendto(int sock, char *pkt, size_t len,
                        return -1;
        }
 
+       if (verbosity > 2) {
+               printf("<< ");
+               pkt_print(pkt, stdout);
+               printf("\n");
+       }
+
        sent = sendto(sock, pkt, len, 0, (struct sockaddr*)dst, sizeof(*dst));
        if (sent < 0) {
                sock_perror("sendto");