Urmf...
I thought this patch would fix the issues I'm having with connections being
freed in handle_error twice, but obviously not. Anyhow, since I took the time
to separate it out, I could just as well send it.
Unfortunately it's more like three patches intertwined; I didn't really dare
trying to separate them further as they look rather interrelated. There's
three parts:
- A bugfix for taking care of the tcpbuf if it ends while queued for
transmission (at least that's what it looks like to me; I thought this
would fix the issue).
- Note broken servers, and close their connections in the main loop.
- Store TCP connection "generation", so we can distinguish between re-sends
to the same and a different socket.
/* Steinar */
-- Software Engineer, Google Norway