68076c
Resolves: #1485943
68076c
68076c
--- a/tftpd/tftpd.c       2017-08-28 09:12:11.681299000 +0200
68076c
+++ b/tftpd/tftpd.c       2017-08-28 13:30:03.109312000 +0200
68076c
@@ -1388,24 +1388,25 @@
68076c
             return strlen(p);
68076c
 
68076c
     case 'x':
68076c
-        if (output) {
68076c
-            if (from.sa.sa_family == AF_INET) {
68076c
+        if (from.sa.sa_family == AF_INET) {
68076c
+            if (output) {
68076c
                 sprintf(output, "%08lX",
68076c
                     (unsigned long)ntohl(from.si.sin_addr.s_addr));
68076c
-                l = 8;
68076c
+            }
68076c
+            l = 8;
68076c
 #ifdef HAVE_IPV6
68076c
-            } else {
68076c
-                unsigned char *c = (unsigned char *)SOCKADDR_P(&from;;
68076c
-                p = tb;
68076c
-                for (l = 0; l < 16; l++) {
68076c
-                    sprintf(p, "%02X", *c);
68076c
-                    c++;
68076c
-                    p += 2;
68076c
-                }
68076c
+        } else {
68076c
+            unsigned char *c = (unsigned char *)SOCKADDR_P(&from;;
68076c
+            p = tb;
68076c
+            for (l = 0; l < 16; l++) {
68076c
+                sprintf(p, "%02X", *c);
68076c
+                c++;
68076c
+                p += 2;
68076c
+            }
68076c
+            if (output)
68076c
                 strcpy(output, tb);
68076c
-                l = strlen(tb);
68076c
+            l = strlen(tb);
68076c
 #endif
68076c
-            }
68076c
         }
68076c
         return l;
68076c
 
68076c