the blind referencing the blind added by zbigniew the colicky on Wed May 25 00:31:26 2011

;; self-referential structure from socket egg

(define-foreign-record-type (ai "struct addrinfo")         
  (constructor: alloc-ai)                                  
  (destructor: free-ai)   ; similar name!                  
  (int ai_flags ai-flags set-ai-flags!)                    
  (int ai_family ai-family set-ai-family!)                 
  (int ai_socktype ai-socktype set-ai-socktype!)           
  (int ai_protocol ai-protocol set-ai-protocol!)           
  (int ai_addrlen ai-addrlen)                              
  ((c-pointer sa) ai_addr ai-addr)  ;; non-null?           
  (c-string ai_canonname ai-canonname)                     
  ((c-pointer ai) ai_next ai-next))