Commit Graph

66 Commits (b57e583798be5e145f21ad0caf1c5d18f485df2a)

Author SHA1 Message Date
Michael P. Soulier 792e849d20 Merge remote branch 'jawschwa/master' into merge 2012-09-30 21:52:18 -04:00
Jay Weisskopf 39b877258b Allow file objects to be used for download output or upload input.
Objects are considered file-like if they have read() or write()
functions. If they do not, they are assumed to be strings to a local
path (existing behavior).
2012-05-03 01:24:25 -05:00
Fabian Knittel 83507c60ff tftpy/TftpStates.py: fix security problem regarding path check
This patch fixes the request path check.  It makes sure that requested paths
are _below_ the specified root directory.
2012-04-26 21:18:31 +02:00
Fabian Knittel a973612bd8 refactor TftpState: move server-specific stuff to TftpServerState 2012-04-26 20:53:59 +02:00
Fabian Knittel 017688d836 minor clean-up: remove duplicate dyn_file_func setting
`self.dyn_file_func` is currently set twice: Once in the base class and once in
the server child class.  As it's only used in the non-server case, remove it
from the base class.
2012-04-26 20:53:06 +02:00
Michael P. Soulier 05e56b66a4 Fixing issue #26, with the server not creating the full path to the filename
being uploaded.
2012-03-10 21:20:01 -05:00
Michael P. Soulier 9b655fcaa1 Adding subdirectory support. Hopefully closes issue 25. 2011-09-01 09:35:45 -04:00
Michael P. Soulier 04aaa2ef9f Fixing issue #3, expanding unit tests. 2011-07-24 17:37:16 -04:00
Michael P. Soulier 40977c6f74 Fixing some pyflakes complaints 2011-07-23 23:28:45 -04:00
Michael P. Soulier add444006c Fixes issue #23, breaking up TftpStates into TftpStates and TftpContexts. 2011-07-23 23:20:53 -04:00
Michael P. Soulier 949c998648 Fixing issue #9, removing blksize option from client if not supplied. 2011-07-23 20:29:06 -04:00
Michael P. Soulier a43773e26c Fixing issue #16 on github, server failing to use timeout time in
checkTimeout() method.
2011-07-23 20:05:03 -04:00
Michael P. Soulier 1e74abf010 Adding retries on timeouts, still have to exhaustively test.
Should close issue #21 on github.
2011-07-23 19:40:53 -04:00
Michael P. Soulier 6fd9391ad8 Fixing a file descriptor leak. Closes issue 22. 2011-06-02 22:31:55 -04:00
Kenny Millington a6cff4f0b2 Fix exceptions propagating out of TftpServer.listen()
Signed-off-by: Michael P. Soulier <msoulier@digitaltorque.ca>
2010-10-22 20:33:23 -04:00
Kenny Millington 71d827dd89 Allow dyn_file_func to trigger a FileNotFound error.
Signed-off-by: Michael P. Soulier <msoulier@digitaltorque.ca>
2010-10-22 20:33:05 -04:00
Michael P. Soulier 4396124b8d Forcing decode mode to lower case, fixes bug 17. 2010-10-13 18:46:29 -04:00
Michael P. Soulier 45185ed44c Fixing setNextBlock to roll over at 2**16 - 1 instead of 2**16, which was
causing problems when uploading large files.

Thanks to LawrenceK for the bug report. Fixes issue15.
2010-07-20 15:41:15 -04:00
Michael P. Soulier 1caa220a9a Latest doc updates 2010-07-11 21:19:01 -04:00
Michael P. Soulier 402b2ae4c4 Adding initial Sphinx docs 2010-07-11 19:27:49 -04:00
Michael P. Soulier 58623df7d0 Adding support for input/output as stdin/stdout 2010-05-25 21:51:07 -04:00
Michael P. Soulier f4a3ff6356 Fixing failure to set default blocksize if options were provided but blksize
was not one of them.
2010-05-24 08:25:49 -04:00
Patrick Oppenlander 1a2b556771 fix incorrectly assigned state transition 2010-05-17 19:10:49 -04:00
Patrick Oppenlander 360b0b928d fix divide by zero in speed calculation for short transfers 2010-05-17 19:10:35 -04:00
Michael P. Soulier faebd44978 Fixing buffering issue in upload. Uploads work now. 2010-05-10 16:11:22 -04:00
Michael P. Soulier 2bb832642a First working upload with new state machine. Not usable yet, upload fails to
always send all data for some reason.
2010-05-10 15:25:31 -04:00
Michael P. Soulier 4a4f53a107 Fixed an obvious error introduced with the dyn_file_func merge 2010-05-10 14:16:12 -04:00
Michael P. Soulier 8a56d94cd3 Merge commit 'angry-elf/master' into merge 2010-04-24 23:54:29 -04:00
Michael P. Soulier 8343ccf5c3 Taking patch from "Mike C. Fletcher" <mcfletch@vrplumber.com>, fixing a bad
reference to dyn_func_file from a state object.
2010-02-18 10:03:21 -05:00
Alexey Loshkarev 72c47698eb Fix dyn_file_func (was broken?)
Fix error message (filename was not displayed)
2010-02-18 12:01:45 +02:00
Michael P. Soulier ce7fc323c6 Fixing some log messages and bad variable references. 2009-09-24 15:32:37 -04:00
Michael P. Soulier 781072bfe8 Updated resent_data in metrics. 2009-08-18 22:38:26 -04:00
Michael P. Soulier 3ae3b31bf4 Fixed server metrics summary. 2009-08-18 22:27:18 -04:00
Michael P. Soulier a6a18c178b First successful download with both client and server. 2009-08-16 19:57:11 -04:00
Michael P. Soulier 62b22fb562 Did some rework for the state machine in a server context.
Removed the handler framework in favour of a TftpContextServer used
as the session.
2009-08-16 19:56:06 -04:00
Michael P. Soulier 03e4e74829 Fixing up some of the upload code. 2009-08-16 19:46:44 -04:00
Michael P. Soulier 5ee5f63f9b Adding patch for dynamic content from Alex ? <yix@ya.ru> 2009-07-21 09:42:53 -04:00
Michael P. Soulier c61ca171db Fixing a merge error in rebase 2009-04-10 23:20:19 -04:00
Michael P. Soulier 410e14c430 Fixed bug in tidport handling, and lack of OACK response. 2009-04-10 23:09:26 -04:00
Michael P. Soulier 874fef5aae Fixing OACK handling with new state machine. 2009-04-10 23:09:26 -04:00
Michael P. Soulier 5072f6d93c Fixed TftpClient with new state machine. 2009-04-10 23:09:26 -04:00
Michael P. Soulier e7a63bbbc2 Started overhaul of state machine. 2009-04-10 23:07:49 -04:00
Michael P. Soulier 41bf3a25e6 Improving sample client output on error and fixing default blocksize when
server ignores options.
2009-04-10 22:48:51 -04:00
Michael P. Soulier bd2e19529f Merged upload patch. 2009-04-10 21:59:25 -04:00
Michael P. Soulier bc55a17f34 Fixing bogus warnings in options handling. 2009-04-07 18:40:26 -04:00
Michael P. Soulier d058642025 Fixing tftproot configured for server as a relative path. 2009-04-07 17:22:37 -04:00
Michael P. Soulier ca7a06a09b Fixed the use of the tsize option in RRQ packets. 2008-10-08 21:31:34 -04:00
Michael P. Soulier 0a5df33dca Rolling 0.4.6 2008-10-05 23:06:41 -04:00
Michael P. Soulier 07416bf848 Rebased tsize branch and added a --tsize option to the client.
Now sending all packets to the progresshook, not just DAT packets,
so that the client can see the OACK. Not yet making use of the returned
tsize. Need to test this on a server that supports tsize.
2008-10-04 20:42:27 -04:00
Michael P. Soulier 8a0162b317 Adding transfer size option patch from Kuba Kończyk.
Patch 2018609 in SF tracker.
2008-10-04 15:35:41 -04:00