RemoteAdminTool
RemoteAdminTool copied to clipboard
Edge Case: Client Stall Out Due To Received Data Equal To Max Buffer Size With No Further Data
In Program.cs in the Client, line 130-134, I believe there exists a bug where if the server returns data that is equal to the buffer size, the client will attempt to receive more data. In most cases this is because there is more data to be sent and the server is sending it in chunks, but there exists an edge case where the server sends data equal to the buffer size and no more data is coming. If this happens I believe the client will stall out and have to be reconnected. This stems from a larger issue about "how do you know before hand how much data the server is sending to the client without first talking about it" through the singular TCP connection. This can be accomplished a variety of ways, one being using another TCP stream to talk between the client and server about sending and receiving chunks of data, or perhaps include in your initial header how much data is being sent. No one probably noticed this but I am telling on myself and If anyone can fix this that would be super.