diff options
author | msoulier <msoulier@63283fd4-ec1e-0410-9879-cb7f675518da> | 2006-12-15 04:08:20 +0000 |
---|---|---|
committer | msoulier <msoulier@63283fd4-ec1e-0410-9879-cb7f675518da> | 2006-12-15 04:08:20 +0000 |
commit | 16ebbf2d160ebe2724b14a5ca6d57151296d42f6 (patch) | |
tree | 5a9860f9a7f096d3a3f0a5f8d654e5ed9419ae75 | |
parent | 772370578a06b7283277727c8c054f2440b9c7d0 (diff) | |
download | tftpy-16ebbf2d160ebe2724b14a5ca6d57151296d42f6.tar.gz |
Tweak to EOF handling in server.
git-svn-id: https://tftpy.svn.sourceforge.net/svnroot/tftpy/trunk@46 63283fd4-ec1e-0410-9879-cb7f675518da
-rwxr-xr-x | lib/tftpy.py | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/tftpy.py b/lib/tftpy.py index 8ee5808..fe2018e 100755 --- a/lib/tftpy.py +++ b/lib/tftpy.py @@ -914,9 +914,10 @@ class TftpServerHandler(TftpSession): def send_dat(self, resend=False): """This method reads sends a DAT packet based on what is in self.buffer.""" if not resend: - self.buffer = self.fileobj.read(int(self.options['blksize'])) + blksize = int(self.options['blksize']) + self.buffer = self.fileobj.read(blksize) logger.debug("Read %d bytes into buffer" % len(self.buffer)) - if not self.buffer: + if self.buffer == "" or self.buffer < blksize: logger.info("Reached EOF on file %s" % self.filename) self.state.state = 'fin' self.blocknumber += 1 |