circuitpython/ports/raspberrypi/common-hal/socketpool
Jeff Epler 57756863ef
picow: depending on memory pressure, may only be able to write 1 MSS
Foamyguy discovered that trying to send >2920 bytes at once consistently
failed. I further discovered that sometimes trying to send >1460 bytes
would fail too.  By "fail", I mean that it would take a very long time
(around 200 * 50ms) before erroneously reporting that all bytes were
written.

In my testing, this change causes larger writes to successfully
send either 2920 or 1460 bytes (possibly after doing some 50ms waits
for a previous packet to clear).

The documentation of socket.send always stated that it COULD send fewer
bytes than requested, but adafruit_httpserver assumed that the number
of requested bytes were always sent, so after this change alone,
adafruit_httpserver will still not work properly.

Closes: #7077 (albeit fixes are needed in adafruit_httpserver too)
2022-10-17 19:42:07 -05:00
..
Socket.c picow: depending on memory pressure, may only be able to write 1 MSS 2022-10-17 19:42:07 -05:00
Socket.h Implement DNS resolution 2022-09-28 10:06:33 -05:00
SocketPool.c Implement enough of socketpool to do ntp and non-https requests 2022-09-28 10:06:34 -05:00
SocketPool.h Implement enough of socketpool to do ntp and non-https requests 2022-09-28 10:06:34 -05:00
__init__.c Implement DNS resolution 2022-09-28 10:06:33 -05:00
__init__.h Implement DNS resolution 2022-09-28 10:06:33 -05:00