0.8.12.40:
[sbcl.git] / contrib / sb-bsd-sockets / defpackage.lisp
index 58e5270..a99bea2 100644 (file)
   (add-package-nickname "SYSTEM" "SB-SYS"))
 
 (defpackage "SB-BSD-SOCKETS"
-  (:export socket unix-socket inet-socket
-           make-unix-socket make-inet-socket
+  (:export socket local-socket inet-socket
+           make-local-socket make-inet-socket
            socket-bind socket-accept socket-connect
            socket-send socket-receive socket-recv
            socket-name socket-peername socket-listen
-           socket-close socket-file-descriptor socket-make-stream
-           get-protocol-by-name
+           socket-close socket-file-descriptor
+          socket-family socket-protocol socket-type
+          socket-make-stream get-protocol-by-name
 
            get-host-by-name get-host-by-address
            host-ent
           ;; all socket options are also exported, by code in
           ;; sockopt.lisp
 
-           bad-file-descriptor-error
-           address-in-use-error
-           interrupted-error
-           invalid-argument-error
-           out-of-memory-error
-           operation-not-supported-error
-           operation-not-permitted-error
-           protocol-not-supported-error
-          socket-type-not-supported-error
-           network-unreachable-error
-           
+          socket-error
+
+          ;; other errno-based socket errors are exported by code in
+          ;; sockets.lisp
+          
            make-inet-address
 
            non-blocking-mode
@@ -92,7 +87,7 @@ arguments to fit Lisp style more closely.
 <li> Methods applicable to a particular subclass
 <ol>
 <li> <a href="#internet">INET-SOCKET</a> - Internet Protocol (TCP, UDP, raw) sockets
-<li> Methods on <a href="#UNIX-SOCKET">UNIX-SOCKET</a> - Unix-domain sockets 
+<li> Methods on <a href="#LOCAL-SOCKET">LOCAL-SOCKET</a> - Local-domain sockets 
 </ol>
 <li> <a href="#name-service">Name resolution</a> (DNS, /etc/hosts, &amp;c)
 </ol>
@@ -105,11 +100,12 @@ available on a variety of systems, and documented.  There are some
 differences in approach where we have taken advantage of some of the more useful features of Common Lisp - briefly
 
 <ul>
-<li> Where the C API would typically return -1 and set errno, bsd-sockets
-signals an error.  All the errors are subclasses of SOCKET-CONDITION
+<li> Where the C API would typically return -1 and set errno, we
+signal an error.  All the errors are subclasses of SOCKET-CONDITION
 and generally correspond one for one with possible <tt>errno</tt> values
 
-<li> We use multiple return values in many places where the C API would use p[ass-by-reference values
+<li> We use multiple return values in many places where the C API would use
+pass-by-reference values
 
 <li> We can often avoid supplying an explicit <i>length</i> argument to
 functions because we already know how long the argument is.
@@ -121,3 +117,14 @@ than "network-endian integers".  See the section on <a href="#internet"
 
 
 |#
+
+(in-package :sb-bsd-sockets)
+
+(defmethod asdf:hyperdocumentation
+    ((package (eql #.*package*)) symbol kind)
+  (declare (ignore kind))
+  (format nil "file://~A#~A"
+         #.(namestring
+            (merge-pathnames "index.html"
+                             (or *load-pathname* *compile-file-pathname*)))
+         symbol))