Sortix TCP zero window handling
Sortix might not handle properly if the remote sets the TCP window to 0 and then enlarges it.
From IRC:
hmm, does the sortix net stack ever drop its window?
i guess i haven't been pushing enough data to it fast enough for it probably
i think i do see a bug on the sortix side
if i set the window really low, like 1024, the irc server sends 1024 bytes, properly stops when the LK RX window goes to 0
but then once the rx window opens again, it doesn't seem to finish sending what it was working on
so the whole second half of the IRC login banner is lost
possibly it's a blocking issue on the write() side of the irc server? like either it's not blocking or it's returning an error and not resending lines?
bug #2:
https://www.irccloud.com/pastebin/p5gUZdok/
look who's option was ignored....
(mss 512 was not honored)
that window close thing seems to be racy. doesn't always happen
buty i thinkit's dependant of if LK ever sends a window size of 0. that seems to trigger sortix to start dropping data
otherwise it does the right thing and sends smaller and smaller packets as the window closes
https://www.irccloud.com/pastebin/dmTEyt7x/
that's an example if it making it a bit farther before the window closes and then it stops
the irc connection is still alive, it just lost the whole bottom half of the banner
anyway that's my bug filing for the evening