anchor.diff:  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
   ;; FreeBSD-specific options ;;
   ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  -
   (define-socket-option reuse-port         :get-and-set et::so-reuseport    et::sol-socket :bool    :freebsd)
   (define-socket-option use-loopback       :get-and-set et::so-useloopback  et::sol-socket :bool    :freebsd)
   (define-socket-option no-sigpipe         :get-and-set et::so-nosigpipe    et::sol-socket :bool    :freebsd)
  
positive.code:     (values)))
  
  ;;
  ;; Get Options
  ;;
  
  (defun get-socket-option-bool (fd level option)
    (with-alien ((optval int))
      (et:setsockopt fd level option (addr optval) et::size-of-int)
      (c->lisp-bool optval)))
  
  (defun get-socket-option-int (fd level option)
    (with-alien ((optval int))
      (et:setsockopt fd level option (addr optval) et::size-of-int)
      optval))
  
  (defun get-socket-option-linger (fd level option)
    (with-alien ((optval et:linger))
      (et:setsockopt fd level option (addr optval) et::size-of-linger)
      (values (slot optval 'et:onoff)
              (slot optval 'et:linger))))
  
  (defun get-socket-option-timeval (fd level option)
    (with-alien ((optval et:timeval))
      (et:setsockopt fd level option (addr optval) et::size-of-timeval)
      (values (slot optval 'et:tv-sec)
              (slot optval 'et:tv-usec))))
  
  
  (eval-when (:compile-toplevel :load-toplevel :execute)
    (defun make-keyword (sym)
  
negative.code:                         (,helper-set (socket-fd socket) ,level ,optname ,@args))
                       `(error 'option-not-available option-name)))))))))
  
  ;;;;;;;;;;;;;;;;;;;;;
  ;; Generic options ;;
  ;;;;;;;;;;;;;;;;;;;;;
  (define-socket-option accept-connections :get         et::so-acceptconn   et::sol-socket :bool    :unix)
  (define-socket-option broadcast          :get-and-set et::so-broadcast    et::sol-socket :bool    :unix)
  (define-socket-option debug              :get-and-set et::so-debug        et::sol-socket :bool    :unix)
  