problem with keepalive-closing socket; can bail out on sock:recv when socket was shutdown even if data send buffer is still active (sock.body_src)