0.9.11.16:
[sbcl.git] / contrib / sb-bsd-sockets / win32-sockets.lisp
index 9dff001..42d5c86 100644 (file)
 \r
 (sb-alien:define-alien-type nil\r
   (struct WSADATA\r
-         (wVersion (unsigned 16))\r
-         (wHighVersion (unsigned 16))\r
-         (szDescription (array char 257))\r
-         (szSystemStatus (array char 129))\r
-         (iMaxSockets (unsigned 16))\r
-         (iMaxUdpDg (unsigned 16))\r
-         (lpVendorInfo sb-alien:c-string)))\r
+          (wVersion (unsigned 16))\r
+          (wHighVersion (unsigned 16))\r
+          (szDescription (array char 257))\r
+          (szSystemStatus (array char 129))\r
+          (iMaxSockets (unsigned 16))\r
+          (iMaxUdpDg (unsigned 16))\r
+          (lpVendorInfo sb-alien:c-string)))\r
 \r
 (sb-alien:define-alien-type nil\r
   (struct s_un_byte\r
-         (s_b1 (unsigned 8))\r
-         (s_b2 (unsigned 8))\r
-         (s_b3 (unsigned 8))\r
-         (s_b4 (unsigned 8))))\r
+          (s_b1 (unsigned 8))\r
+          (s_b2 (unsigned 8))\r
+          (s_b3 (unsigned 8))\r
+          (s_b4 (unsigned 8))))\r
 \r
 (sb-alien:define-alien-type nil\r
   (struct s_un_wide\r
-         (s_w1 (unsigned 16))\r
-         (s_w2 (unsigned 16))))\r
+          (s_w1 (unsigned 16))\r
+          (s_w2 (unsigned 16))))\r
 \r
 (sb-alien:define-alien-type nil\r
   (union s_union\r
-        (s_un_b (struct s_un_byte))\r
-        (s_un_w (struct s_un_wide))\r
-        (s_addr (unsigned 32))))\r
+         (s_un_b (struct s_un_byte))\r
+         (s_un_w (struct s_un_wide))\r
+         (s_addr (unsigned 32))))\r
 \r
 (sb-alien:define-alien-type nil\r
   (struct in_addr\r
-         (s_union (union s_union))))\r
+          (s_union (union s_union))))\r
 \r
 (sb-alien:define-alien-type nil\r
   (struct sockaddr_in\r
-         (sin_family (signed 16))\r
-         (sin_port (array (unsigned 8) 2))\r
-         (sin_addr (array (unsigned 8) 4))\r
-         (sin_zero (array char 8))))\r
+          (sin_family (signed 16))\r
+          (sin_port (array (unsigned 8) 2))\r
+          (sin_addr (array (unsigned 8) 4))\r
+          (sin_zero (array char 8))))\r
 \r
 (defconstant size-of-sockaddr-in 16)\r
 \r
 \r
 (sb-alien:define-alien-type nil\r
   (struct sockaddr\r
-         (sa_family (unsigned 16))\r
-         (sa_data (array char 14))))\r
+          (sa_family (unsigned 16))\r
+          (sa_data (array char 14))))\r
 \r
 (sb-alien:define-alien-type nil\r
   (struct hostent\r
-         (h_name sb-alien:c-string)\r
-         (h_aliases (* sb-alien:c-string))\r
-         (h_addrtype sb-alien:short)\r
-         (h_length sb-alien:short)\r
-         (h_addr_list (* (* (unsigned 8))))))\r
+          (h_name sb-alien:c-string)\r
+          (h_aliases (* sb-alien:c-string))\r
+          (h_addrtype sb-alien:short)\r
+          (h_length sb-alien:short)\r
+          (h_addr_list (* (* (unsigned 8))))))\r
 \r
 (sb-alien:define-alien-type nil\r
   (struct  protoent\r
-       (pname sb-alien:c-string)\r
-       (p_aliases (* sb-alien:c-string))\r
-       (p_proto (signed 16))))\r
+        (pname sb-alien:c-string)\r
+        (p_aliases (* sb-alien:c-string))\r
+        (p_proto (signed 16))))\r
 \r
 (sb-alien:define-alien-type socklen-t\r
-                           (unsigned 32))\r
+                            (unsigned 32))\r
 \r
 \r
 ;;; these are all non-HANDLE using, so are safe to have here\r
 (sb-alien:define-alien-routine "gethostbyaddr" (struct hostent)\r
-                              (addr sb-alien:c-string)\r
-                              (len int)\r
-                              (type int))\r
+                               (addr sb-alien:c-string)\r
+                               (len int)\r
+                               (type int))\r
 \r
 (sb-alien:define-alien-routine "gethostbyname" (struct hostent)\r
-                              (addr sb-alien:c-string))\r
+                               (addr sb-alien:c-string))\r
 \r
 (sb-alien:define-alien-routine "getservbyport" (struct servent)\r
-                              (port int)\r
-                              (proto sb-alien:c-string))\r
+                               (port int)\r
+                               (proto sb-alien:c-string))\r
 \r
 (sb-alien:define-alien-routine "getservbyname" (struct servent)\r
-                              (name sb-alien:c-string)\r
-                              (proto sb-alien:c-string))\r
+                               (name sb-alien:c-string)\r
+                               (proto sb-alien:c-string))\r
 \r
 (sb-alien:define-alien-routine "getprotobynumber" (struct protoent)\r
-                              (number int))\r
+                               (number int))\r
 \r
 (sb-alien:define-alien-routine "getprotobyname" (struct protoent)\r
-                              (name sb-alien:c-string))\r
+                               (name sb-alien:c-string))\r
 \r
 ;;; these are the alien references to the\r
 ;;; winsock calls\r
   (addrlen int :in-out))\r
 \r
 (sb-alien:define-alien-routine "recv" int\r
-                              (s int)\r
-                              (buf (* t))\r
-                              (len int)\r
-                              (flags int))\r
+                               (s int)\r
+                               (buf (* t))\r
+                               (len int)\r
+                               (flags int))\r
 \r
 (sb-alien:define-alien-routine "recvfrom" int\r
-                              (s int)\r
-                              (buf (* t))\r
-                              (len int)\r
-                              (flags int)\r
-                              (from (* (struct sockint::sockaddr_in)))\r
-                              (fromlen (* sockint::socklen-t)))\r
+                               (s int)\r
+                               (buf (* t))\r
+                               (len int)\r
+                               (flags int)\r
+                               (from (* (struct sockint::sockaddr_in)))\r
+                               (fromlen (* sockint::socklen-t)))\r
 \r
 (sb-alien:define-alien-routine ("closesocket" close) int\r
-                              (s int))\r
+                               (s int))\r
 \r
 (sb-alien:define-alien-routine "connect" int\r
-                              (s int)\r
-                              (name (* (struct sockint::sockaddr_in)))\r
-                              (namelen int))\r
+                               (s int)\r
+                               (name (* (struct sockint::sockaddr_in)))\r
+                               (namelen int))\r
 \r
 (sb-alien:define-alien-routine "getpeername" int\r
-                              (s int)\r
-                              (name (* (struct sockint::sockaddr_in)))\r
-                              (namelen int :in-out))\r
+                               (s int)\r
+                               (name (* (struct sockint::sockaddr_in)))\r
+                               (namelen int :in-out))\r
 \r
 (sb-alien:define-alien-routine "getsockopt" int\r
-                              (s int)\r
-                              (level int)\r
-                              (optname int)\r
-                              (optval sb-alien:c-string)\r
-                              (optlen int :in-out))\r
+                               (s int)\r
+                               (level int)\r
+                               (optname int)\r
+                               (optval sb-alien:c-string)\r
+                               (optlen int :in-out))\r
 \r
 (sb-alien:define-alien-routine ("ioctlsocket" ioctl) int\r
-                              (s int)\r
-                              (cmd int)\r
-                              (argp (unsigned 32) :in-out))\r
+                               (s int)\r
+                               (cmd int)\r
+                               (argp (unsigned 32) :in-out))\r
 \r
 (sb-alien:define-alien-routine "setsockopt" int\r
-                              (s int)\r
-                              (level int)\r
-                              (optname int)\r
-                              (optval (* t))\r
-                              (optlen int))\r
+                               (s int)\r
+                               (level int)\r
+                               (optname int)\r
+                               (optval (* t))\r
+                               (optlen int))\r
 \r
 \r
 ;;;; we are now going back to the normal sockint\r
 (in-package :sockint)\r
 \r
 (sb-alien:define-alien-routine ("_get_osfhandle" fd->handle) sb-alien:long\r
-                              (fd int))\r
+                               (fd int))\r
 \r
 (sb-alien:define-alien-routine ("_open_osfhandle" handle->fd) int\r
-                              (osfhandle int)\r
-                              (flags int))\r
+                               (osfhandle int)\r
+                               (flags int))\r
 \r
 (defun socket (af type proto)\r
   (let* ((handle (win32sockint::wsa-socket af type proto nil 0 0))\r
-        (fd (handle->fd handle 0)))\r
+         (fd (handle->fd handle 0)))\r
     fd))\r
 \r
 (defun bind (fd &rest options)\r
 (defmacro with-in-addr (name init &rest body)\r
   (declare (ignore init))\r
   `(with-alien ((,name (struct in_addr)))\r
-              ,@body))\r
+               ,@body))\r
 \r
 (defun in-addr-addr (addr)\r
   (sb-alien:slot (sb-alien:slot addr 's_union) 's_addr))\r