WIP: http: Timeout misbehaving clients
This changes the behaviour of all sockets of current process. I think this it should be done only on the http & https sockets.
marked as a Work In ProgressToggle commit list
Anyway, I was thinking later, and adding test for such case is quite important, isn't it?
I hope that simulating such client behaviour is not hard to do, possibly it is sending few bytes during SSL handshake and than stalling, no?
On the topic of important but missing tests, there is still the automated OID migration :) .
possibly it is sending few bytes during SSL handshake and than stalling
Just opening the connection may even be enough. I think there are multiple possible bad scenarii involving absence of communication:
- open and write nothing
- open, write enough to get a response from server, never read response at tcp level (tcp back hole)
- open, write enough to get a response from server, never read response at application level (tcp ack'ed, but next ssl handshake packet not sent)
- open, write slowly (slowloris-style)
- open, write, then replay the write (tcp server-ack-not-received-by-client-but-client-can-send style of one-way black hole)
Some steps could be repeated at different points in the handshake. IIRC ssl handshake is (senders) client-server-client.