anchor.diff:       length))
   
   (defun assemble-tcp4-packet (src-ip src-port dst-ip dst-port seq-num ack-num window payload
  -                             &key (ack-p t) psh-p rst-p syn-p fin-p)
  +                             &key cwr-p ece-p urg-p (ack-p t) psh-p rst-p syn-p fin-p)
     "Build a full TCP & IP header."
     (let* ((checksum 0)
            (payload-size (length payload))
  
positive.code:                                                                           (if syn-p +tcp4-flag-syn+ 0)
                                                                            (if rst-p +tcp4-flag-rst+ 0)
                                                                            (if psh-p +tcp4-flag-psh+ 0)
                                                                            (if ack-p +tcp4-flag-ack+ 0))
            ;; Window.
            (ub16ref/be header +tcp4-header-window-size+) window
            ;; Checksum.
  
negative.code:            (setf (tcp-connection-state connection) :closed))))
      (mezzano.supervisor:condition-notify (tcp-connection-cvar connection) t)))
  
  (defun tcp4-send-packet (connection seq ack data &key cwr-p ece-p urg-p (ack-p t) psh-p rst-p syn-p fin-p)
    (let* ((source (tcp-connection-local-ip connection))
           (source-port (tcp-connection-local-port connection))
           (packet (assemble-tcp4-packet source source-port
  