X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=contrib%2Fsb-bsd-sockets%2Fconstants.lisp;h=de0e2e8f8733165854e621c3e34d5edd17c619f4;hb=HEAD;hp=d967b4fd71aa1ec52f2efab5a87f22b95f52b7b6;hpb=ab3d6a76abf70414aa13702abdbbfc2126348e10;p=sbcl.git diff --git a/contrib/sb-bsd-sockets/constants.lisp b/contrib/sb-bsd-sockets/constants.lisp index d967b4f..de0e2e8 100644 --- a/contrib/sb-bsd-sockets/constants.lisp +++ b/contrib/sb-bsd-sockets/constants.lisp @@ -44,10 +44,15 @@ #+linux (:integer so-passcred "SO_PASSCRED") (:integer so-rcvbuf "SO_RCVBUF") (:integer so-keepalive "SO_KEEPALIVE" - "Send periodic keepalives: if peer does not respond, we get SIGPIPE") + "Send periodic keepalives. If peer does not respond, we get SIGPIPE.") + #+linux (:integer tcp-keepcnt "TCP_KEEPCNT" + "Number of unacknowledged probes before the connection is considered dead.") + #+linux (:integer tcp-keepidle "TCP_KEEPIDLE" + "Seconds between the last data packet sent and the first keepalive probe.") + #+linux (:integer tcp-keepintvl "TCP_KEEPINTVL" "Seconds between keepalive probes.") (:integer so-oobinline "SO_OOBINLINE" "Put out-of-band data into the normal input queue when received") - #-freebsd + #+linux (:integer so-no-check "SO_NO_CHECK") #+linux (:integer so-priority "SO_PRIORITY") (:integer so-linger "SO_LINGER" @@ -62,6 +67,12 @@ #+linux (:integer so-bindtodevice "SO_BINDTODEVICE") (:integer ifnamsiz "IFNAMSIZ") +;; socket shutdown flags +(:integer SHUT_RD "SHUT_RD") +(:integer SHUT_WR "SHUT_WR") +(:integer SHUT_RDWR "SHUT_RDWR") + +;; errors (:integer EADDRINUSE "EADDRINUSE") (:integer EAGAIN "EAGAIN") (:integer EBADF "EBADF") @@ -86,7 +97,7 @@ (:integer NO-RECOVERY "NO_RECOVERY" "Non recoverable errors, FORMERR, REFUSED, NOTIMP.") (:integer NO-DATA "NO_DATA" "Valid name, no data record of requested type.") (:integer NO-ADDRESS "NO_ADDRESS" "No address, look for MX record.") - #-hpux (:function h-strerror ("hstrerror" c-string (errno int))) + #-(or hpux sunos) (:function h-strerror ("hstrerror" c-string (errno int))) (:integer O-NONBLOCK "O_NONBLOCK") (:integer f-getfl "F_GETFL") @@ -99,7 +110,7 @@ (:integer msg-eor "MSG_EOR") (:integer msg-dontroute "MSG_DONTROUTE") (:integer msg-dontwait "MSG_DONTWAIT") - (:integer msg-nosignal "MSG_NOSIGNAL") + #+linux (:integer msg-nosignal "MSG_NOSIGNAL") #+linux (:integer msg-confirm "MSG_CONFIRM") #+linux (:integer msg-more "MSG_MORE") @@ -126,6 +137,7 @@ (name c-string))) ;; getprotobyname_r is a thread-safe reentrant version of getprotobyname + #+os-provides-getprotoby-r (:function getprotobyname-r ("getprotobyname_r" int (name c-string) (result_buf (* protoent)) @@ -138,6 +150,7 @@ (:function getprotobynumber ("getprotobynumber" (* protoent) (proto int))) ;;ditto, save for the getprotobynumber part + #+os-provides-getprotoby-r (:function getprotobynumber-r ("getprotobynumber_r" int (proto int) (result_buf (* protoent)) @@ -207,6 +220,8 @@ (addrlen socklen-t))) (:function close ("close" int (fd int))) + (:function shutdown ("shutdown" int + (fd int) (how int))) (:function recvfrom ("recvfrom" ssize-t (socket int) (buf (* t)) @@ -272,8 +287,8 @@ #+darwin (integer addrlen "socklen_t" "ai_addrlen") #-darwin (integer addrlen "size_t" "ai_addrlen") ((* sockaddr-in) addr "struct sockaddr*" "ai_addr") - (c-string canonname "char *" "ai_canonname") - ((* t) next "struct addrinfo*" "ai_next"))) + (c-string-pointer canonname "char *" "ai_canonname") + ((* (struct addrinfo)) next "struct addrinfo*" "ai_next"))) #+sb-bsd-sockets-addrinfo (:function getaddrinfo ("getaddrinfo"