ptftpd
ptftpd copied to clipboard
RecursionError in TFTPServer.send_response
I tried to send a 150MiB file but got a RecursionError
in TFTPServer.send_response
.
I noticed that you already fixed this in 61f0d9f886dc417ab00dadf3c0793a54c740f143. This commit, however, is not part of the latest ptftpd-1.3 release.
I hope that this is just an oversight. Just to let you know.
Thanks for your work on ptftpd.
Note that despite applying the fix from 61f0d9f886dc417ab00dadf3c0793a54c740f143, I still got the following exception:
Exception happened during processing of request from ('192.168.1.168', 2198)
Traceback (most recent call last):
File "/usr/lib/python3.7/socketserver.py", line 316, in _handle_request_noblock
self.process_request(request, client_address)
File "/usr/lib/python3.7/socketserver.py", line 347, in process_request
self.finish_request(request, client_address)
File "/usr/lib/python3.7/socketserver.py", line 360, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/usr/lib/python3.7/socketserver.py", line 722, in __init__
self.finish()
File "/usr/lib/python3.7/socketserver.py", line 817, in finish
self.socket.sendto(self.wfile.getvalue(), self.client_address)
OSError: [Errno 90] Message too long
----------------------------------------
DEBUG:tftpd: > DATA: 71429 data packet(s) sent.
DEBUG:tftpd: < ACK: Transfer complete, 104857600 byte(s).
INFO:tftpd:Transfer of file config.img completed.
EHCI timed out on TD - token=0x88008d80
Rx: failed to receive: -5
Shortly before that, I got DEBUG:tftpd:Packet number wraparound.
.
I think that the error is related to the wrap-around. Everything works fine for file sizes below 32 MiB.
Same error here with a file of 50 megabytes