anchor.diff:        (connect socket (ensure-hostname remote-host)
                  :port remote-port))))
   
  -(declaim (inline %%make-internet-stream-active-socket))
  -(defun %%make-internet-stream-active-socket (family ef keepalive nodelay reuse-address
  -                                             local-host local-port remote-host remote-port
  -                                             input-buffer-size output-buffer-size)
  +(define-socket-creator (:internet :stream :active)
  +    (family ef &key keepalive nodelay (reuse-address t)
  +            local-host (local-port 0)
  +            (remote-host +any-host+) (remote-port 0)
  +            input-buffer-size output-buffer-size)
     (with-close-on-error (socket (%create-internet-socket family :stream :active ef
                                                           :input-buffer-size input-buffer-size
                                                           :output-buffer-size output-buffer-size))
       (%%init-internet-stream-active-socket socket keepalive nodelay reuse-address
                                             local-host local-port remote-host remote-port)))
  -
  -(defun %make-internet-stream-active-socket (args family ef)
  -  (destructuring-bind (&key keepalive nodelay (reuse-address t)
  -                            local-host (local-port 0)
  -                            (remote-host +any-host+) (remote-port 0)
  -                            input-buffer-size output-buffer-size)
  -      args
  -    (%%make-internet-stream-active-socket family ef keepalive nodelay reuse-address
  -                                          local-host local-port remote-host remote-port
  -                                          input-buffer-size output-buffer-size)))
  -
  -(define-compiler-macro %make-internet-stream-active-socket (&whole form args family ef)
  -  (with-guard-against-non-list-args-and-destructuring-bind-errors
  -      form args
  -    (destructuring-bind (&key keepalive nodelay (reuse-address t)
  -                              local-host (local-port 0)
  -                              (remote-host '+any-host+) (remote-port 0)
  -                              input-buffer-size output-buffer-size)
  -        (cdr args)
  -      `(%%make-internet-stream-active-socket ,family ,ef ,keepalive ,nodelay ,reuse-address
  -                                             ,local-host ,local-port ,remote-host ,remote-port
  -                                             ,input-buffer-size ,output-buffer-size))))
    
   ;;; Internet Stream Passive Socket creation
  
positive.code:   (when remote-filename
      (connect socket (ensure-address remote-filename :family :local))))
  
  (declaim (inline %%make-local-stream-active-socket))
  (defun %%make-local-stream-active-socket (family ef local-filename remote-filename
                                            input-buffer-size output-buffer-size)
    (declare (ignore family))
    (with-close-on-error (socket (create-socket :local :stream :active ef
                                                :input-buffer-size input-buffer-size
                                                :output-buffer-size output-buffer-size))
      (%%init-local-stream-active-socket socket local-filename remote-filename)))
  
  (defun %make-local-stream-active-socket (args family ef)
    (destructuring-bind (&key local-filename remote-filename
                              input-buffer-size output-buffer-size)
        args
      (%%make-local-stream-active-socket family ef local-filename remote-filename
                                         input-buffer-size output-buffer-size)))
  
  (define-compiler-macro %make-local-stream-active-socket (&whole form args family ef)
    (with-guard-against-non-list-args-and-destructuring-bind-errors
        form args
      (destructuring-bind (&key local-filename remote-filename
                                input-buffer-size output-buffer-size)
          (cdr args)
        `(%%make-local-stream-active-socket ,family ,ef ,local-filename ,remote-filename
                                            ,input-buffer-size ,output-buffer-size))))
  
  ;;; Local Stream Passive Socket creation
  
negative.code:     (when (eq :ipv4 address-family) (setf ipv6 nil))
      (let ((*ipv6* ipv6))
        (when (eq :internet address-family) (setf address-family +default-inet-address-family+))
        (multiple-value-case ((address-family type connect))
          (((:ipv4 :ipv6) :stream :active)
           (%make-internet-stream-active-socket args address-family external-format))
          (((:ipv4 :ipv6) :stream :passive)
  