anchor.diff:              :family +af-inet+))))
     socket/stream)
   
  -(defun tcp-connect (host port read-cb event-cb &key data stream connect-cb write-cb (read-timeout -1) (write-timeout -1) (class 'socket) (dont-drain-read-buffer nil dont-drain-read-buffer-supplied-p))
  +(defun tcp-connect (host port read-cb event-cb &key data stream connect-cb write-cb (read-timeout -1) (write-timeout -1) (dont-drain-read-buffer nil dont-drain-read-buffer-supplied-p))
     "Open a TCP connection asynchronously. Optionally send data out once connected
      via the :data keyword (can be a string or byte array)."
     (let ((socket/stream (apply #'init-tcp-socket
  
positive.code:                                      t
                                       dont-drain-read-buffer))
           (fd (when (<= 0 fd) fd))
           (socket (make-instance class :c uvstream
                                        :direction :out
                                        :drain-read-buffer (not dont-drain-read-buffer)))
           (tcp-stream (when stream (make-instance 'async-io-stream :socket socket))))
      (uv:uv-tcp-init (event-base-c *event-base*) uvstream)
      (when data
  
negative.code:    pointers and so forth."
    (init-incoming-socket server status))
  
  (defun init-tcp-socket (read-cb event-cb &key data stream (fd -1) connect-cb write-cb (read-timeout -1) (write-timeout -1) (dont-drain-read-buffer nil dont-drain-read-buffer-supplied-p))
    "Initialize an async socket, but do not connect it."
    (check-event-loop-running)
  
  