[usocket-cvs] r473 - usocket/trunk/backend

Chun Tian (binghe) ctian at common-lisp.net
Wed Nov 12 13:37:45 UTC 2008


Author: ctian
Date: Wed Nov 12 13:37:41 2008
New Revision: 473

Log:
[usocket] update SOCKET-CONNECT on LW, TIMEOUT is supported.

Modified:
   usocket/trunk/backend/lispworks.lisp

Modified: usocket/trunk/backend/lispworks.lisp
==============================================================================
--- usocket/trunk/backend/lispworks.lisp	(original)
+++ usocket/trunk/backend/lispworks.lisp	Wed Nov 12 13:37:41 2008
@@ -93,11 +93,19 @@
                        timeout deadline (nodelay t nodelay-specified)
                        local-host local-port)
   (declare (ignorable nodelay))
-  (when timeout (unimplemented 'timeout 'socket-connect))
-  (when deadline (unsupported 'deadline 'socket-connect :minimum "LispWorks 5.1"))
+
+  ;; What's the meaning of this keyword?
+  (when deadline
+    (unimplemented 'deadline 'socket-connect))
   
-  #+(and (not lispworks4) (not lispworks5.0))
-  (when nodelay-specified (unimplemented 'nodelay 'socket-connect))
+  #+(or lispworks4.2 lispworks4.3) ; < 4.4.5
+  (when timeout
+    (unsupported 'timeout 'socket-connect :minimum "LispWorks 4.4.5"))
+
+  #+(or lispworks4 lispworks5.0) ; < 5.1
+  (when nodelay-specified
+    (unsupported 'nodelay 'socket-connect :minimum "LispWorks 5.1"))
+
   #+lispworks4 #+lispworks4
   (when local-host
      (unsupported 'local-host 'socket-connect :minimum "LispWorks 5.0"))
@@ -110,12 +118,15 @@
           (with-mapped-conditions ()
              (comm:open-tcp-stream hostname port
                                    :element-type element-type
+				   #-(or lispworks4.2 lispworks4.3) ; >= 4.4.5
+				   #-(or lispworks4.2 lispworks4.3)
+				   :timeout timeout
                                    #-lispworks4 #-lispworks4
                                    #-lispworks4 #-lispworks4
                                    :local-address (when local-host (host-to-hostname local-host))
                                    :local-port local-port
-                                   #+(and (not lispworks4) (not lispworks5.0))
-                                   #+(and (not lispworks4) (not lispworks5.0))
+                                   #-(or lispworks4 lispworks5.0) ; >= 5.1
+                                   #-(or lispworks4 lispworks5.0)
                                    :nodelay nodelay)))
     (if stream
         (make-stream-socket :socket (comm:socket-stream-socket stream)




More information about the usocket-cvs mailing list