anchor.diff:  (define-condition stop-connection ()
     ())
   
  +(defvar *in-async-handler* nil)
  +
   (defun wait-for-frame (async-conn)
     (log:trace "Waiting for frame on async connection: ~s" async-conn)
     (with-accessors ((channels async-connection/channels)
  
positive.code:            until (eql b-current request-index)
             do (bordeaux-threads:condition-wait b-condvar b-lock)))
        (unwind-protect
             (funcall fn)
          (bordeaux-threads:with-lock-held (b-lock)
            (setf b-current nil)
            (condition-broadcast b-condvar))))))
  
negative.code:                             :read (lambda (fd type c)
                                      (declare (ignorable fd type c))
                                      (handle-command async-conn)))
  
        (iolib:set-error-handler event-base in-fd (lambda (&rest aa) (log:error "Got pipe error: ~s" aa)))
  
        ;;
  