Your suggestion worked. I count errors in a run of errors and reset the connection when the length hits 5. I did need to put a set_conn_state(RCVR_DOWN) between the calls to rcvr_disconnect() and rcvr_connect_later(). Are you interested in a patch?