Add TFTP upload spinner
authorJoseph C. Lehner <joseph.c.lehner@gmail.com>
Mon, 2 Mar 2020 13:21:02 +0000 (14:21 +0100)
committerJoseph C. Lehner <joseph.c.lehner@gmail.com>
Mon, 2 Mar 2020 13:21:02 +0000 (14:21 +0100)
tftp.c

diff --git a/tftp.c b/tftp.c
index eb2c31424f48e5fa9d4a181e188571b6626a67af..735f992e36e635379c180087657e489b88c8a9c7 100644 (file)
--- a/tftp.c
+++ b/tftp.c
@@ -305,6 +305,8 @@ inline bool tftp_is_valid_filename(const char *filename)
        return strlen(filename) <= 255 && is_netascii(filename);
 }
 
+static const char *spinner = "\\|/-";
+
 int tftp_put(struct nmrpd_args *args)
 {
        struct sockaddr_in addr;
@@ -416,6 +418,10 @@ int tftp_put(struct nmrpd_args *args)
                                        }
                                }
 
+                               printf("%c ", spinner[block & 3]);
+                               fflush(stdout);
+                               printf("\b\b");
+
                                pkt_mknum(tx, DATA);
                                pkt_mknum(tx + 2, block);
                                len = read(fd, tx + 4, blksize);