anchor.diff:    ;; Disarming here is doubly important.
     ;; 1) It stops the timer from hanging around if it was active.
     ;; 2) If the source handler is pending, then it'll return immediately.
  +  (setf (tcp-connection-state connection) :closed)
     (mezzano.supervisor:timer-disarm (tcp-connection-retransmit-timer connection))
     (mezzano.supervisor:timer-disarm (tcp-connection-timeout-timer connection))
     (mezzano.sync.dispatch:cancel (tcp-connection-retransmit-source connection))
  
positive.code:           (make-condition 'connection-timed-out
                            :host (tcp-connection-remote-ip connection)
                            :port (tcp-connection-remote-port connection)))
      (setf (tcp-connection-state connection) :closed)
      (mezzano.supervisor:condition-notify (tcp-connection-cvar connection) t)
      (detach-tcp-connection connection)))
  
  
negative.code:                                         nil)
                        (if (logtest flags +tcp4-flag-ack+)
                            ;; Remote saw our FIN and closed as well.
                            (detach-tcp-connection connection)
                            ;; Simultaneous close
                            (setf (tcp-connection-state connection) :closing)))
                       ((logtest flags +tcp4-flag-ack+)
  