anchor.diff:        (prog1 stream
           (when (= +http-switching-protocols+ (return-code*))
             (force-output stream)
  -; TODO websocket connection
  -          (loop for char = (read-byte stream nil) while char do (format *debug-io* "~c" (code-char char)))
  -          (format *debug-io* "hello?~%"))))))
  +          (websocket-process-connection stream))))))
   
   (defmethod handle-request ((*acceptor* websocket-acceptor) (*request* request))
     (if (and (string= "upgrade" (string-downcase (header-in* :connection)))
  
positive.code: 
  (in-package :websocket)
  
  (defclass websocket-request (request)
    ((content-stream :initarg :content-stream
                     :accessor content-stream
                     :documentation "A stream from which the request
  body can be read if there is one.")))
  
  (defclass websocket-reply (reply)
    ((external-format :initform (make-external-format :utf8 :eol-style :lf)
                      :reader reply-external-format
                      :documentation "The external format of the reply -
  used for character output.")))
  
  (defclass websocket-acceptor (acceptor) ()
    (:default-initargs :request-class 'websocket-request :reply-class 'websocket-reply))
  
negative.code:   ((key :initarg :key :reader websocket-illegal-key-of
          :initform (required-argument :key))))
  
  (define-condition websocket-illegal-frame-type (condition)
    ((type :initarg :type :reader websocket-illegal-frame-type-of
           :initform (required-argument :type))))
  
  
  (defconstant +websocket-terminator+ '(#x00 #xff))
  
  (defun integer-octets-32be (number)
    (let ((result (make-array 4 :element-type '(unsigned-byte 8))))
      (dotimes (index 4 result)
        (let ((position #+little-endian (- 24 (* 8 index)) #-little-endian (* 8 index)))
          (setf (aref result index)
                (ldb (byte 8 position) number))))))
  
  