aboutsummaryrefslogtreecommitdiff
path: root/networking/tftp.c
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2009-11-08 18:27:18 +0100
committerDenys Vlasenko <vda.linux@googlemail.com>2009-11-08 18:27:18 +0100
commit6528abeb6af88f40924c85e8cf05dad1d3ab88a5 (patch)
tree8f710206c467b472ba090f307d657b2fbca6b022 /networking/tftp.c
parent1e9ac9f6853abb645c8d4a480d4ad6f09d7a8588 (diff)
downloadbusybox-w32-6528abeb6af88f40924c85e8cf05dad1d3ab88a5.tar.gz
busybox-w32-6528abeb6af88f40924c85e8cf05dad1d3ab88a5.tar.bz2
busybox-w32-6528abeb6af88f40924c85e8cf05dad1d3ab88a5.zip
tftpd: another small tweak
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'networking/tftp.c')
-rw-r--r--networking/tftp.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/networking/tftp.c b/networking/tftp.c
index eddb1486b..ef4198be8 100644
--- a/networking/tftp.c
+++ b/networking/tftp.c
@@ -743,7 +743,7 @@ int tftpd_main(int argc UNUSED_PARAM, char **argv)
743 const char *error_msg; 743 const char *error_msg;
744 int opt, result, opcode; 744 int opt, result, opcode;
745 IF_FEATURE_TFTP_BLOCKSIZE(int blksize = TFTP_BLKSIZE_DEFAULT;) 745 IF_FEATURE_TFTP_BLOCKSIZE(int blksize = TFTP_BLKSIZE_DEFAULT;)
746 IF_FEATURE_TFTP_BLOCKSIZE(int want_transfer_size = 0;) 746 IF_FEATURE_TFTP_BLOCKSIZE(int want_transfer_size;)
747 747
748 INIT_G(); 748 INIT_G();
749 749
@@ -791,6 +791,7 @@ int tftpd_main(int argc UNUSED_PARAM, char **argv)
791 goto err; 791 goto err;
792 } 792 }
793# if ENABLE_FEATURE_TFTP_BLOCKSIZE 793# if ENABLE_FEATURE_TFTP_BLOCKSIZE
794 want_transfer_size = 0;
794 { 795 {
795 char *res; 796 char *res;
796 char *opt_str = mode + sizeof("octet"); 797 char *opt_str = mode + sizeof("octet");
@@ -805,8 +806,10 @@ int tftpd_main(int argc UNUSED_PARAM, char **argv)
805 goto do_proto; 806 goto do_proto;
806 } 807 }
807 } 808 }
809 if (opcode != TFTP_WRQ /* download? */
808 /* did client ask us about file size? */ 810 /* did client ask us about file size? */
809 if (tftp_get_option("tsize", opt_str, opt_len)) { 811 && tftp_get_option("tsize", opt_str, opt_len)
812 ) {
810 want_transfer_size = 1; 813 want_transfer_size = 1;
811 } 814 }
812 } 815 }
@@ -821,7 +824,6 @@ int tftpd_main(int argc UNUSED_PARAM, char **argv)
821 goto err; 824 goto err;
822 } 825 }
823 IF_GETPUT(option_mask32 |= TFTP_OPT_GET;) /* will receive file's data */ 826 IF_GETPUT(option_mask32 |= TFTP_OPT_GET;) /* will receive file's data */
824 want_transfer_size = 0; /* do not send file size, it's meaningless */
825 } else { 827 } else {
826 IF_GETPUT(option_mask32 |= TFTP_OPT_PUT;) /* will send file's data */ 828 IF_GETPUT(option_mask32 |= TFTP_OPT_PUT;) /* will send file's data */
827 } 829 }