--- /home/andy/sbcl/sbcl-1.0.38/contrib/sb-bsd-sockets/constants.lisp 2009-07-30 06:02:22.000000000 -0500 +++ /home/andy/sbcl-1.0.38/contrib/sb-bsd-sockets/constants.lisp 2010-05-06 14:50:01.000000000 -0500 @@ -74,6 +74,7 @@ (:integer EOPNOTSUPP "EOPNOTSUPP") (:integer EPERM "EPERM") (:integer EPROTONOSUPPORT "EPROTONOSUPPORT") + (:integer ERANGE "ERANGE") (:integer ESOCKTNOSUPPORT "ESOCKTNOSUPPORT") (:integer ENETUNREACH "ENETUNREACH") (:integer ENOTCONN "ENOTCONN") @@ -123,8 +124,28 @@ (integer proto "int" "p_proto"))) (:function getprotobyname ("getprotobyname" (* protoent) (name c-string))) + +;; getprotobyname_r is a thread-safe reentrant version of getprotobyname + (:function getprotobyname-r ("getprotobyname_r" int + (name c-string) + (result_buf (* protoent)) + (buffer (* char)) + (buffer-len size-t) + #-solaris + (result (* (* protoent))))) + + (:function getprotobynumber ("getprotobynumber" (* protoent) (proto int))) + ;;ditto, save for the getprotobynumber part + (:function getprotobynumber-r ("getprotobynumber_r" int + (proto int) + (result_buf (* protoent)) + (buffer (* char)) + (buffer-len size-t) + #-solaris + (result (* (* protoent))))) + (:integer inaddr-any "INADDR_ANY") (:structure in-addr ("struct in_addr" ((array (unsigned 8)) addr "u_int32_t" "s_addr")))