Hash :
d55d1aa0
Author :
Thomas de Grivel
Date :
2017-05-27T21:38:38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
;;
;; cffi-socket - Common Lisp wrapper for BSD sockets
;;
;; Copyright 2017 Thomas de Grivel <thoxdg@gmail.com>
;;
;; Permission to use, copy, modify, and distribute this software for any
;; purpose with or without fee is hereby granted, provided that the above
;; copyright notice and this permission notice appear in all copies.
;;
;; THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
;; WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
;; MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
;; ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
;; WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
;; ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
;; OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
;;
(in-package :cffi-socket)
;; Sockets
(include "sys/types.h")
(include "sys/socket.h")
(constant (+af-unix+ "AF_UNIX"))
(constant (+af-local+ "AF_LOCAL"))
(constant (+af-inet+ "AF_INET"))
(constant (+af-inet6+ "AF_INET6"))
(constant (+af-ipx+ "AF_IPX"))
(constant (+af-packet+ "AF_PACKET"))
(constant (+sock-stream+ "SOCK_STREAM"))
(constant (+sock-dgram+ "SOCK_DGRAM"))
(constant (+sock-raw+ "SOCK_RAW"))
(constant (+sock-nonblock+ "SOCK_NONBLOCK"))
(constant (+sock-cloexec+ "SOCK_CLOEXEC"))
(constant (+shut-rd+ "SHUT_RD"))
(constant (+shut-wr+ "SHUT_WR"))
(constant (+shut-rdwr+ "SHUT_RDWR"))
(ctype socklen-t "socklen_t")
(ctype size-t "size_t")
(ctype ssize-t "ssize_t")
;; INET
(include "arpa/inet.h")
(ctype uint16-t "uint16_t")
(ctype uint32-t "uint32_t")
;; IP
(include "netinet/in.h")
(constant (+inaddr-any+ "INADDR_ANY"))
(ctype sa-family-t "sa_family_t")
(ctype in-port-t "in_port_t")