anchor.diff:        (et:connect (fd-of socket) sun et:size-of-sockaddr-un)))
     (values socket))
   
  -(defmethod connect ((socket passive-socket)
  -                    address &key)
  +(defmethod connect ((socket passive-socket) address &key)
     (declare (ignore address))
     (error "You cannot connect passive sockets."))
   
  
positive.code:     (error "You can only disconnect active datagram sockets.")))
  
  (defmethod disconnect ((socket datagram-socket))
    (with-socket-error-filter
      (with-foreign-object (sin 'et:sockaddr-in)
        (et:bzero sin et:size-of-sockaddr-in)
        (setf (foreign-slot-value sin 'et:sockaddr-in 'et:addr) et:af-unspec)
        (et:connect (fd-of socket) sin et:size-of-sockaddr-in))))
  
negative.code:           (with-socklen (size et:size-of-sockaddr-storage)
              (et:getpeername (fd-of socket) ss size)
              t))
        (et:enotconn ()))))
  
  
  ;;;;;;;;;;;;;;;;
  