With the feature that checking the disk filled up, the return value of function write_behind was checked and used to detect the disk status. While for empty file, without data being written, this function will return -1 thus the disk filled up error was miss-raised. Fix it.
Signed-off-by: Zhang Xiao <xiao.zh...@windriver.com> --- .../tftp-hpa-bug-fix-on-empty-file-put-error.patch | 33 ++++++++++++++++++++++ .../recipes-daemons/tftp-hpa/tftp-hpa_5.2.bb | 1 + 2 files changed, 34 insertions(+) create mode 100644 meta-networking/recipes-daemons/tftp-hpa/files/tftp-hpa-bug-fix-on-empty-file-put-error.patch diff --git a/meta-networking/recipes-daemons/tftp-hpa/files/tftp-hpa-bug-fix-on-empty-file-put-error.patch b/meta-networking/recipes-daemons/tftp-hpa/files/tftp-hpa-bug-fix-on-empty-file-put-error.patch new file mode 100644 index 0000000..aa29d9c --- /dev/null +++ b/meta-networking/recipes-daemons/tftp-hpa/files/tftp-hpa-bug-fix-on-empty-file-put-error.patch @@ -0,0 +1,33 @@ +tftp-hpa: bug fix on empty file put error + +With the feature that checking the disk filled up, the return value of +function write_behind was checked and used to detect the disk status. +While for empty file, without data being written, this function will +return -1 thus the disk filled up error was miss-raised. Fix it. + +Upstream-Status: pending + +Signed-off-by: Zhang Xiao <xiao.zh...@windriver.com> +--- + tftpd/tftpd.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) +--- a/tftpd/tftpd.c ++++ b/tftpd/tftpd.c +@@ -1692,7 +1692,7 @@ static void tftp_recvfile(const struct f + syslog(LOG_WARNING, "tftpd: write(ack): %m"); + goto abort; + } +- if(write_behind(file, pf->f_convert) < 0) { ++ if(write_behind(file, pf->f_convert) < -1) { + nak(ENOSPACE, NULL); + (void)fclose(file); + goto abort; +@@ -1727,7 +1727,7 @@ static void tftp_recvfile(const struct f + goto abort; + } + } while (size == segsize); +- if(write_behind(file, pf->f_convert) < 0) { ++ if(write_behind(file, pf->f_convert) < -1) { + nak(ENOSPACE, NULL); + (void)fclose(file); + goto abort; diff --git a/meta-networking/recipes-daemons/tftp-hpa/tftp-hpa_5.2.bb b/meta-networking/recipes-daemons/tftp-hpa/tftp-hpa_5.2.bb index 1951747..e58a4b1 100644 --- a/meta-networking/recipes-daemons/tftp-hpa/tftp-hpa_5.2.bb +++ b/meta-networking/recipes-daemons/tftp-hpa/tftp-hpa_5.2.bb @@ -25,6 +25,7 @@ SRC_URI = "http://kernel.org/pub/software/network/tftp/tftp-hpa/tftp-hpa-${PV}.t file://init \ file://add-error-check-for-disk-filled-up.patch \ file://tftp-hpa-bug-fix-on-separated-CR-and-LF.patch \ + file://tftp-hpa-bug-fix-on-empty-file-put-error.patch \ " SRC_URI[md5sum] = "46c9bd20bbffa62f79c958c7b99aac21" -- 1.8.5.2.233.g932f7e4 -- _______________________________________________ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel