The project wants to provide a portable TCP/IP (and later on maybe
-UDP) socket interface for as many Common Lisp implementations as
-possible, while keeping the abstraction and portability layer as thin
-as possible.
-
-
Because trivial-sockets
-has been declared dead and its author has said he will declare usocket
-its successor if there is a zero effort path of migration, I'm also working
-on trivial-usocket which is supposed to be a sub-optimal, but zero
-effort migration from trivial-sockets.
-
-
If your lisp isn't mentioned in the list below, please feel free to
-submit a request for it at the mailing list mentioned below.
-
-
Comparison to other socket libraries
-
-
Since usocket is effectively the succesor to trivial-sockets, see the
- feature comparison with
- trivial-sockets in order to find out which one you should use.
-
-
After starting the project, many others turned out to have worked on
- something alike, many times as part of a broader project or library.
- Some of them were known at the start of this project, others have
- been conceived after the usocket project already started. Not all of
- them have exactly the same portability goal.
-
-
See the Implementation
- comparison page for a comparison of the portability of other
- libaries and how that relates to usocket.
This project has started Januari 2006. There isn't much of a community
- yet, though I'd like there to be one. So, you're invited to join
- the mailing list, announce yourself and even join the effort!
-
Project tracking happens in the
- project's Trac setup. Please take note of the guidelines before
- entering a bug or enhancement request into the database.
Development will at least follow the steps outlined below.
- Yet to be determined is whether the currently mentioned steps will
- be enough to release version 1.0. Possibly, UDP sockets remain to be
- addressed before doing 1.0; that will depend on your reactions :-)
-
-
The targeted implementations listed in the status table below are not
- a final list: others can be added if/when the need or interest arrises.
-
Please send patches, bug reports and suggestions to the development
- mailing list address given above. The table below indicates the
- current state of development.
-
The interfaces currently published in the :export part of the
-package definition are guaranteed to stay compatible for the
-entire 0.x lifecycle. Extention in a backward compatible way is
-ofcourse valid, as is the addition of new interface functions.
Fix where host resolution routine was unable to resolve would return
- NIL instead of erroring.
-
Mar 04, 2007
-
0.3.2
-
Fixes for many backends related to closing sockets.
- LispWorks fix for broken server sockets.
- API guarantee adjustments in preparation of porting Drakma.
-
Feb 28, 2007
-
0.3.1
-
fixed with-server-socket; prevent creation of invalid sockets;
- 2 more convenience macros.
-
Feb 26, 2007
-
re-release
-
Re-release of 0.2.3, 0.2.4, 0.2.5 and 0.3.0 tarballs
- because the originals included Subversion administration areas.
-
Jan 21, 2007
-
0.3.0
Server sockets
-
Jan 19, 2007
-
0.2.5
Allegro compilation fix.
-
Jan 17, 2007
-
0.2.4
Various fixes for CMUCL, OpenMCL, Allegro and LispWorks.
-
-
Jan 04, 2007
-
0.2.3
Add :element-type support to support stacking
- flexi-streams on socket streams for portable :external-format
- support.
-
Jan 03, 2007
-
0.2.2
Add ECL support and a small SBCL bugfix.
-
Dec 21, 2006
-
0.2.1
Remove 'open-stream' interface which is supposed
- to be provided by the 'trivial-usocket' package.
-
Dec 18, 2006
-
0.2.0
Add support for
- Scieneer
- Common Lisp, fix issue #6 and
- API preparation for server side sockets (not in this release)
Long ago the project was conceived and started by Erik Enge in an
-attempt to factor out all implementation specific sockets code from
-cl-irc. This 'long ago' must have been
-way before 2003 when I entered the cl-irc project.
-
-
In january 2006, Erik Huelsmann found Erik Enge willing to donate
-the code he had still laying around to restart the project. The restart
-took place at the 27th of january when the old code was imported into the
-public repository.
The project wants to provide a portable TCP/IP (and later on maybe
+UDP) socket interface for as many Common Lisp implementations as
+possible, while keeping the abstraction and portability layer as thin
+as possible.
+
+
Because trivial-sockets
+has been declared dead and its author has said he will declare usocket
+its successor if there is a zero effort path of migration, I'm also working
+on trivial-usocket which is supposed to be a sub-optimal, but zero
+effort migration from trivial-sockets.
+
+
If your lisp isn't mentioned in the list below, please feel free to
+submit a request for it at the mailing list mentioned below.
+
+
Comparison to other socket libraries
+
+
Since usocket is effectively the succesor to trivial-sockets, see the
+ feature comparison with
+ trivial-sockets in order to find out which one you should use.
+
+
After starting the project, many others turned out to have worked on
+ something alike, many times as part of a broader project or library.
+ Some of them were known at the start of this project, others have
+ been conceived after the usocket project already started. Not all of
+ them have exactly the same portability goal.
+
+
See the Implementation
+ comparison page for a comparison of the portability of other
+ libaries and how that relates to usocket.
This project has started Januari 2006. There isn't much of a community
+ yet, though I'd like there to be one. So, you're invited to join
+ the mailing list, announce yourself and even join the effort!
+
Project tracking happens in the
+ project's Trac setup. Please take note of the guidelines before
+ entering a bug or enhancement request into the database.
Development will at least follow the steps outlined below.
+ Yet to be determined is whether the currently mentioned steps will
+ be enough to release version 1.0. Possibly, UDP sockets remain to be
+ addressed before doing 1.0; that will depend on your reactions :-)
+
+
The targeted implementations listed in the status table below are not
+ a final list: others can be added if/when the need or interest arrises.
+
Please send patches, bug reports and suggestions to the development
+ mailing list address given above. The table below indicates the
+ current state of development.
+
The interfaces currently published in the :export part of the
+package definition are guaranteed to stay compatible for the
+entire 0.x lifecycle. Extention in a backward compatible way is
+ofcourse valid, as is the addition of new interface functions.
Fix where host resolution routine was unable to resolve would return
+ NIL instead of erroring.
+
Mar 04, 2007
+
0.3.2
+
Fixes for many backends related to closing sockets.
+ LispWorks fix for broken server sockets.
+ API guarantee adjustments in preparation of porting Drakma.
+
Feb 28, 2007
+
0.3.1
+
fixed with-server-socket; prevent creation of invalid sockets;
+ 2 more convenience macros.
+
Feb 26, 2007
+
re-release
+
Re-release of 0.2.3, 0.2.4, 0.2.5 and 0.3.0 tarballs
+ because the originals included Subversion administration areas.
+
Jan 21, 2007
+
0.3.0
Server sockets
+
Jan 19, 2007
+
0.2.5
Allegro compilation fix.
+
Jan 17, 2007
+
0.2.4
Various fixes for CMUCL, OpenMCL, Allegro and LispWorks.
+
+
Jan 04, 2007
+
0.2.3
Add :element-type support to support stacking
+ flexi-streams on socket streams for portable :external-format
+ support.
+
Jan 03, 2007
+
0.2.2
Add ECL support and a small SBCL bugfix.
+
Dec 21, 2006
+
0.2.1
Remove 'open-stream' interface which is supposed
+ to be provided by the 'trivial-usocket' package.
+
Dec 18, 2006
+
0.2.0
Add support for
+ Scieneer
+ Common Lisp, fix issue #6 and
+ API preparation for server side sockets (not in this release)
Long ago the project was conceived and started by Erik Enge in an
+attempt to factor out all implementation specific sockets code from
+cl-irc. This 'long ago' must have been
+way before 2003 when I entered the cl-irc project.
+
+
In january 2006, Erik Huelsmann found Erik Enge willing to donate
+the code he had still laying around to restart the project. The restart
+took place at the 27th of january when the old code was imported into the
+public repository.
The project wants to provide a portable TCP/IP (and later on maybe
-UDP) socket interface for as many Common Lisp implementations as
-possible, while keeping the abstraction and portability layer as thin
-as possible.
-
-
Because trivial-sockets
-has been declared dead and its author has said he will declare usocket
-its successor if there is a zero effort path of migration, I'm also working
-on trivial-usocket which is supposed to be a sub-optimal, but zero
-effort migration from trivial-sockets.
-
-
If your lisp isn't mentioned in the list below, please feel free to
-submit a request for it at the mailing list mentioned below.
-
-
Comparison to other socket libraries
-
-
Since usocket is effectively the succesor to trivial-sockets, see the
- feature comparison with
- trivial-sockets in order to find out which one you should use.
-
-
After starting the project, many others turned out to have worked on
- something alike, many times as part of a broader project or library.
- Some of them were known at the start of this project, others have
- been conceived after the usocket project already started. Not all of
- them have exactly the same portability goal.
-
-
See the Implementation
- comparison page for a comparison of the portability of other
- libaries and how that relates to usocket.
This project has started Januari 2006. There isn't much of a community
- yet, though I'd like there to be one. So, you're invited to join
- the mailing list, announce yourself and even join the effort!
-
Project tracking happens in the
- project's Trac setup. Please take note of the guidelines before
- entering a bug or enhancement request into the database.
Development will at least follow the steps outlined below.
- Yet to be determined is whether the currently mentioned steps will
- be enough to release version 1.0. Possibly, UDP sockets remain to be
- addressed before doing 1.0; that will depend on your reactions :-)
-
-
The targeted implementations listed in the status table below are not
- a final list: others can be added if/when the need or interest arrises.
-
Please send patches, bug reports and suggestions to the development
- mailing list address given above. The table below indicates the
- current state of development.
-
The interfaces currently published in the :export part of the
-package definition are guaranteed to stay compatible for the
-entire 0.x lifecycle. Extention in a backward compatible way is
-ofcourse valid, as is the addition of new interface functions.
Fix where host resolution routine was unable to resolve would return
- NIL instead of erroring.
-
Mar 04, 2007
-
0.3.2
-
Fixes for many backends related to closing sockets.
- LispWorks fix for broken server sockets.
- API guarantee adjustments in preparation of porting Drakma.
-
Feb 28, 2007
-
0.3.1
-
fixed with-server-socket; prevent creation of invalid sockets;
- 2 more convenience macros.
-
Feb 26, 2007
-
re-release
-
Re-release of 0.2.3, 0.2.4, 0.2.5 and 0.3.0 tarballs
- because the originals included Subversion administration areas.
-
Jan 21, 2007
-
0.3.0
Server sockets
-
Jan 19, 2007
-
0.2.5
Allegro compilation fix.
-
Jan 17, 2007
-
0.2.4
Various fixes for CMUCL, OpenMCL, Allegro and LispWorks.
-
-
Jan 04, 2007
-
0.2.3
Add :element-type support to support stacking
- flexi-streams on socket streams for portable :external-format
- support.
-
Jan 03, 2007
-
0.2.2
Add ECL support and a small SBCL bugfix.
-
Dec 21, 2006
-
0.2.1
Remove 'open-stream' interface which is supposed
- to be provided by the 'trivial-usocket' package.
-
Dec 18, 2006
-
0.2.0
Add support for
- Scieneer
- Common Lisp, fix issue #6 and
- API preparation for server side sockets (not in this release)
Long ago the project was conceived and started by Erik Enge in an
-attempt to factor out all implementation specific sockets code from
-cl-irc. This 'long ago' must have been
-way before 2003 when I entered the cl-irc project.
-
-
In january 2006, Erik Huelsmann found Erik Enge willing to donate
-the code he had still laying around to restart the project. The restart
-took place at the 27th of january when the old code was imported into the
-public repository.
The project wants to provide a portable TCP/IP (and later on maybe
+UDP) socket interface for as many Common Lisp implementations as
+possible, while keeping the abstraction and portability layer as thin
+as possible.
+
+
Because trivial-sockets
+has been declared dead and its author has said he will declare usocket
+its successor if there is a zero effort path of migration, I'm also working
+on trivial-usocket which is supposed to be a sub-optimal, but zero
+effort migration from trivial-sockets.
+
+
If your lisp isn't mentioned in the list below, please feel free to
+submit a request for it at the mailing list mentioned below.
+
+
Comparison to other socket libraries
+
+
Since usocket is effectively the succesor to trivial-sockets, see the
+ feature comparison with
+ trivial-sockets in order to find out which one you should use.
+
+
After starting the project, many others turned out to have worked on
+ something alike, many times as part of a broader project or library.
+ Some of them were known at the start of this project, others have
+ been conceived after the usocket project already started. Not all of
+ them have exactly the same portability goal.
+
+
See the Implementation
+ comparison page for a comparison of the portability of other
+ libaries and how that relates to usocket.
This project has started Januari 2006. There isn't much of a community
+ yet, though I'd like there to be one. So, you're invited to join
+ the mailing list, announce yourself and even join the effort!
+
Project tracking happens in the
+ project's Trac setup. Please take note of the guidelines before
+ entering a bug or enhancement request into the database.
Development will at least follow the steps outlined below.
+ Yet to be determined is whether the currently mentioned steps will
+ be enough to release version 1.0. Possibly, UDP sockets remain to be
+ addressed before doing 1.0; that will depend on your reactions :-)
+
+
The targeted implementations listed in the status table below are not
+ a final list: others can be added if/when the need or interest arrises.
+
Please send patches, bug reports and suggestions to the development
+ mailing list address given above. The table below indicates the
+ current state of development.
+
The interfaces currently published in the :export part of the
+package definition are guaranteed to stay compatible for the
+entire 0.x lifecycle. Extention in a backward compatible way is
+ofcourse valid, as is the addition of new interface functions.
Fix where host resolution routine was unable to resolve would return
+ NIL instead of erroring.
+
Mar 04, 2007
+
0.3.2
+
Fixes for many backends related to closing sockets.
+ LispWorks fix for broken server sockets.
+ API guarantee adjustments in preparation of porting Drakma.
+
Feb 28, 2007
+
0.3.1
+
fixed with-server-socket; prevent creation of invalid sockets;
+ 2 more convenience macros.
+
Feb 26, 2007
+
re-release
+
Re-release of 0.2.3, 0.2.4, 0.2.5 and 0.3.0 tarballs
+ because the originals included Subversion administration areas.
+
Jan 21, 2007
+
0.3.0
Server sockets
+
Jan 19, 2007
+
0.2.5
Allegro compilation fix.
+
Jan 17, 2007
+
0.2.4
Various fixes for CMUCL, OpenMCL, Allegro and LispWorks.
+
+
Jan 04, 2007
+
0.2.3
Add :element-type support to support stacking
+ flexi-streams on socket streams for portable :external-format
+ support.
+
Jan 03, 2007
+
0.2.2
Add ECL support and a small SBCL bugfix.
+
Dec 21, 2006
+
0.2.1
Remove 'open-stream' interface which is supposed
+ to be provided by the 'trivial-usocket' package.
+
Dec 18, 2006
+
0.2.0
Add support for
+ Scieneer
+ Common Lisp, fix issue #6 and
+ API preparation for server side sockets (not in this release)
Long ago the project was conceived and started by Erik Enge in an
+attempt to factor out all implementation specific sockets code from
+cl-irc. This 'long ago' must have been
+way before 2003 when I entered the cl-irc project.
+
+
In january 2006, Erik Huelsmann found Erik Enge willing to donate
+the code he had still laying around to restart the project. The restart
+took place at the 27th of january when the old code was imported into the
+public repository.
Code fixups based on advice from the ECL and OpenMCL maintainers.
+ New exported symbols: WITH-MAPPED-CONDITIONS, NS-CONDITION,
+ NS-ERROR, NS-UNKNOWN-ERROR and NS-UNKNOWN-CONDITION.
Jul 25, 2007
0.3.4
Fix clisp get-host-name, multiple ECL fixes.
From ehuelsmann at common-lisp.net Sat Jun 21 00:06:03 2008
From: ehuelsmann at common-lisp.net (ehuelsmann at common-lisp.net)
Date: Fri, 20 Jun 2008 20:06:03 -0400 (EDT)
Subject: [usocket-cvs] r353 - usocket/trunk/backend
Message-ID: <20080621000603.C5FE67D1B5@common-lisp.net>
Author: ehuelsmann
Date: Fri Jun 20 20:06:02 2008
New Revision: 353
Modified:
usocket/trunk/backend/allegro.lisp
usocket/trunk/backend/armedbear.lisp
usocket/trunk/backend/clisp.lisp
usocket/trunk/backend/cmucl.lisp
usocket/trunk/backend/lispworks.lisp
usocket/trunk/backend/openmcl.lisp
usocket/trunk/backend/sbcl.lisp
usocket/trunk/backend/scl.lisp
Log:
Start supporting the timeout parameter for SOCKET-CONNECT.
>From a patch by Hans Huebner, with additional supported platforms from me.
Modified: usocket/trunk/backend/allegro.lisp
==============================================================================
--- usocket/trunk/backend/allegro.lisp (original)
+++ usocket/trunk/backend/allegro.lisp Fri Jun 20 20:06:02 2008
@@ -49,13 +49,18 @@
:text
:binary))
-(defun socket-connect (host port &key (element-type 'character))
+(defun socket-connect (host port &key (element-type 'character) timeout)
(let ((socket))
(setf socket
(with-mapped-conditions (socket)
- (socket:make-socket :remote-host (host-to-hostname host)
- :remote-port port
- :format (to-format element-type))))
+ (if timeout
+ (mp:with-timeout (timeout nil)
+ (socket:make-socket :remote-host (host-to-hostname host)
+ :remote-port port
+ :format (to-format element-type)))
+ (socket:make-socket :remote-host (host-to-hostname host)
+ :remote-port port
+ :format (to-format element-type)))))
(make-stream-socket :socket socket :stream socket)))
Modified: usocket/trunk/backend/armedbear.lisp
==============================================================================
--- usocket/trunk/backend/armedbear.lisp (original)
+++ usocket/trunk/backend/armedbear.lisp Fri Jun 20 20:06:02 2008
@@ -185,7 +185,9 @@
(typecase condition
(error (error 'unknown-error :socket socket :real-error condition))))
-(defun socket-connect (host port &key (element-type 'character))
+(defun socket-connect (host port &key (element-type 'character) timeout)
+ (when timeout
+ (warn "SOCKET-CONNECT timeout not supported in ABCL"))
(let ((usock))
(with-mapped-conditions (usock)
(let* ((sock-addr (jdi:jcoerce
Modified: usocket/trunk/backend/clisp.lisp
==============================================================================
--- usocket/trunk/backend/clisp.lisp (original)
+++ usocket/trunk/backend/clisp.lisp Fri Jun 20 20:06:02 2008
@@ -55,14 +55,19 @@
(error usock-err :socket socket)
(signal usock-err :socket socket)))))))
-(defun socket-connect (host port &key (element-type 'character))
+(defun socket-connect (host port &key (element-type 'character) timeout)
(let ((socket)
(hostname (host-to-hostname host)))
(with-mapped-conditions (socket)
- (setf socket
- (socket:socket-connect port hostname
- :element-type element-type
- :buffered t)))
+ (setf socket
+ (if timeout
+ (socket:socket-connect port hostname
+ :element-type element-type
+ :buffered t
+ :timeout timeout)
+ (socket:socket-connect port hostname
+ :element-type element-type
+ :buffered t))))
(make-stream-socket :socket socket
:stream socket))) ;; the socket is a stream too
Modified: usocket/trunk/backend/cmucl.lisp
==============================================================================
--- usocket/trunk/backend/cmucl.lisp (original)
+++ usocket/trunk/backend/cmucl.lisp Fri Jun 20 20:06:02 2008
@@ -50,7 +50,9 @@
:socket socket
:condition condition))))
-(defun socket-connect (host port &key (element-type 'character))
+(defun socket-connect (host port &key (element-type 'character) timeout)
+ (when timeout
+ (warn "SOCKET-CONNECT timeout not supported in CMUCL"))
(let* ((socket))
(setf socket
(with-mapped-conditions (socket)
Modified: usocket/trunk/backend/lispworks.lisp
==============================================================================
--- usocket/trunk/backend/lispworks.lisp (original)
+++ usocket/trunk/backend/lispworks.lisp Fri Jun 20 20:06:02 2008
@@ -73,7 +73,9 @@
(declare (ignore host port err-msg))
(raise-usock-err errno socket condition)))))
-(defun socket-connect (host port &key (element-type 'base-char))
+(defun socket-connect (host port &key (element-type 'base-char) timeout)
+ (when timeout
+ (warn "SOCKET-CONNECT timeout not supported in Lispworks"))
(let ((hostname (host-to-hostname host))
(stream))
(setf stream
Modified: usocket/trunk/backend/openmcl.lisp
==============================================================================
--- usocket/trunk/backend/openmcl.lisp (original)
+++ usocket/trunk/backend/openmcl.lisp Fri Jun 20 20:06:02 2008
@@ -57,25 +57,30 @@
(defun handle-condition (condition &optional socket)
(typecase condition
(openmcl-socket:socket-error
- (raise-error-from-id (openmcl-socket:socket-error-identifier condition)
- socket condition))
+ (raise-error-from-id (openmcl-socket:socket-error-identifier condition)
+ socket condition))
+ (ccl:communication-deadline-expired
+ (error 'timeout-error :socket socket :real-error condition))
(ccl::socket-creation-error #| ugh! |#
- (raise-error-from-id (ccl::socket-creation-error-identifier condition)
- socket condition))))
+ (raise-error-from-id (ccl::socket-creation-error-identifier condition)
+ socket condition))))
(defun to-format (element-type)
(if (subtypep element-type 'character)
:text
:binary))
-(defun socket-connect (host port &key (element-type 'character))
+(defun socket-connect (host port &key (element-type 'character) timeout deadline)
(with-mapped-conditions ()
- (let ((mcl-sock
- (openmcl-socket:make-socket :remote-host (host-to-hostname host)
- :remote-port port
- :format (to-format element-type))))
- (openmcl-socket:socket-connect mcl-sock)
- (make-stream-socket :stream mcl-sock :socket mcl-sock))))
+ (let ((mcl-sock
+ (openmcl-socket:make-socket :remote-host (host-to-hostname host)
+ :remote-port port
+ :format (to-format element-type)
+ :deadline deadline
+ :connect-timeout (and timeout
+ (* timeout internal-time-units-per-second)))))
+ (openmcl-socket:socket-connect mcl-sock)
+ (make-stream-socket :stream mcl-sock :socket mcl-sock))))
(defun socket-listen (host port
&key reuseaddress
Modified: usocket/trunk/backend/sbcl.lisp
==============================================================================
--- usocket/trunk/backend/sbcl.lisp (original)
+++ usocket/trunk/backend/sbcl.lisp Fri Jun 20 20:06:02 2008
@@ -184,7 +184,10 @@
(signal usock-cond :socket socket))))))
-(defun socket-connect (host port &key (element-type 'character))
+(defun socket-connect (host port &key (element-type 'character) timeout deadline)
+ (declare (ignore deadline))
+ (when timeout
+ (warn "SOCKET-CONNECT timeout not supported in SBCL"))
(let* ((socket (make-instance 'sb-bsd-sockets:inet-socket
:type :stream :protocol :tcp))
(stream (sb-bsd-sockets:socket-make-stream socket
Modified: usocket/trunk/backend/scl.lisp
==============================================================================
--- usocket/trunk/backend/scl.lisp (original)
+++ usocket/trunk/backend/scl.lisp Fri Jun 20 20:06:02 2008
@@ -28,7 +28,9 @@
:socket socket
:condition condition))))
-(defun socket-connect (host port &key (element-type 'character))
+(defun socket-connect (host port &key (element-type 'character) timeout)
+ (when timeout
+ (warn "SOCKET-CONNECT timeout not supported in SCL"))
(let* ((socket (with-mapped-conditions ()
(ext:connect-to-inet-socket (host-to-hbo host) port
:kind :stream)))
From ehuelsmann at common-lisp.net Thu Jun 26 21:30:49 2008
From: ehuelsmann at common-lisp.net (ehuelsmann at common-lisp.net)
Date: Thu, 26 Jun 2008 17:30:49 -0400 (EDT)
Subject: [usocket-cvs] r354 - usocket/branches/0.3.x/backend
Message-ID: <20080626213049.EFB06240D8@common-lisp.net>
Author: ehuelsmann
Date: Thu Jun 26 17:30:49 2008
New Revision: 354
Modified:
usocket/branches/0.3.x/backend/openmcl.lisp
Log:
Fix OpenMCL (CCL) backend, directly on the branch, because this code
doesn't exist on trunk any longer.
Patch by: Chun Tian (binghe) (binghe.lisp at gmail.com)
Modified: usocket/branches/0.3.x/backend/openmcl.lisp
==============================================================================
--- usocket/branches/0.3.x/backend/openmcl.lisp (original)
+++ usocket/branches/0.3.x/backend/openmcl.lisp Thu Jun 26 17:30:49 2008
@@ -37,15 +37,15 @@
(ccl::fd-zero infds)
(ccl::fd-zero errfds)
(dolist (sock sockets)
- (ccl::fd-set (socket-os-fd sock infds))
- (ccl::fd-set (socket-os-fd sock errfds)))
+ (ccl::fd-set (openmcl-socket:socket-os-fd sock infds))
+ (ccl::fd-set (openmcl-socket:socket-os-fd sock errfds)))
(let* ((res (#_select
- (1+ (apply #'max fds))
+ (1+ (apply #'max infds))
infds (ccl::%null-ptr) errfds
(if ticks-to-wait tv (ccl::%null-ptr)))))
(when (> res 0)
(remove-if #'(lambda (x)
- (not (ccl::fd-is-set (socket-os-fd x) infds)))
+ (not (ccl::fd-is-set (openmcl-socket:socket-os-fd x) infds)))
sockets))))))
(defun wait-for-input (sockets &optional ticks-to-wait)
@@ -67,7 +67,7 @@
(raise-error-from-id (openmcl-socket:socket-error-identifier condition)
socket condition))
(ccl::socket-creation-error #| ugh! |#
- (raise-error-from-id (ccl::socket-creationg-error-identifier condition)
+ (raise-error-from-id (ccl::socket-creation-error-identifier condition)
socket condition))
(error (error 'unknown-error :socket socket :real-error condition))
(condition (signal 'unknown-condition :real-condition condition))))
From ehuelsmann at common-lisp.net Sat Jun 28 07:57:38 2008
From: ehuelsmann at common-lisp.net (ehuelsmann at common-lisp.net)
Date: Sat, 28 Jun 2008 03:57:38 -0400 (EDT)
Subject: [usocket-cvs] r355 - usocket/branches/0.3.x/backend
Message-ID: <20080628075738.EEE81710E4@common-lisp.net>
Author: ehuelsmann
Date: Sat Jun 28 03:57:38 2008
New Revision: 355
Modified:
usocket/branches/0.3.x/backend/openmcl.lisp
Log:
Followup to fix of OpenMCL backend.
Patch by: Chun Tian (binghe.lisp at gmail.com)
Modified: usocket/branches/0.3.x/backend/openmcl.lisp
==============================================================================
--- usocket/branches/0.3.x/backend/openmcl.lisp (original)
+++ usocket/branches/0.3.x/backend/openmcl.lisp Sat Jun 28 03:57:38 2008
@@ -37,8 +37,8 @@
(ccl::fd-zero infds)
(ccl::fd-zero errfds)
(dolist (sock sockets)
- (ccl::fd-set (openmcl-socket:socket-os-fd sock infds))
- (ccl::fd-set (openmcl-socket:socket-os-fd sock errfds)))
+ (ccl::fd-set (openmcl-socket:socket-os-fd sock) infds)
+ (ccl::fd-set (openmcl-socket:socket-os-fd sock) errfds))
(let* ((res (#_select
(1+ (apply #'max infds))
infds (ccl::%null-ptr) errfds
From ehuelsmann at common-lisp.net Sat Jun 28 10:12:14 2008
From: ehuelsmann at common-lisp.net (ehuelsmann at common-lisp.net)
Date: Sat, 28 Jun 2008 06:12:14 -0400 (EDT)
Subject: [usocket-cvs] r356 - usocket/tags/0.3.7
Message-ID: <20080628101214.81EB4640F4@common-lisp.net>
Author: ehuelsmann
Date: Sat Jun 28 06:12:13 2008
New Revision: 356
Added:
usocket/tags/0.3.7/
- copied from r355, usocket/branches/0.3.x/
Modified:
usocket/tags/0.3.7/usocket.asd
Log:
Create 0.3.7 tag.
Modified: usocket/tags/0.3.7/usocket.asd
==============================================================================
--- usocket/branches/0.3.x/usocket.asd (original)
+++ usocket/tags/0.3.7/usocket.asd Sat Jun 28 06:12:13 2008
@@ -14,7 +14,7 @@
(defsystem usocket
:name "usocket"
:author "Erik Enge & Erik Huelsmann"
- :version "0.3.5-dev"
+ :version "0.3.7"
:licence "MIT"
:description "Universal socket library for Common Lisp"
:depends-on (:split-sequence
From ehuelsmann at common-lisp.net Sat Jun 28 10:17:38 2008
From: ehuelsmann at common-lisp.net (ehuelsmann at common-lisp.net)
Date: Sat, 28 Jun 2008 06:17:38 -0400 (EDT)
Subject: [usocket-cvs] r357 - in public_html: . releases
Message-ID: <20080628101738.10E4F7A014@common-lisp.net>
Author: ehuelsmann
Date: Sat Jun 28 06:17:28 2008
New Revision: 357
Added:
public_html/releases/usocket-0.3.7.tar.gz (contents, props changed)
Modified:
public_html/index.shtml
Log:
Add 0.3.7 release.
Modified: public_html/index.shtml
==============================================================================
--- public_html/index.shtml (original)
+++ public_html/index.shtml Sat Jun 28 06:17:28 2008
@@ -391,6 +391,9 @@
Release history
Date
Release
Summary
+
Jun 28, 2008
+
0.3.7
+
Fix of OpenMCL (Closure CL) backend.
Jun 21, 2008
0.3.6
Code fixups based on advice from the ECL and OpenMCL maintainers.
Added: public_html/releases/usocket-0.3.7.tar.gz
==============================================================================
Binary file. No diff available.
From ehuelsmann at common-lisp.net Sat Jun 28 10:18:18 2008
From: ehuelsmann at common-lisp.net (ehuelsmann at common-lisp.net)
Date: Sat, 28 Jun 2008 06:18:18 -0400 (EDT)
Subject: [usocket-cvs] r358 - usocket/branches/0.3.x
Message-ID: <20080628101818.4476912061@common-lisp.net>
Author: ehuelsmann
Date: Sat Jun 28 06:18:15 2008
New Revision: 358
Modified:
usocket/branches/0.3.x/usocket.asd
Log:
Bump version number.
Modified: usocket/branches/0.3.x/usocket.asd
==============================================================================
--- usocket/branches/0.3.x/usocket.asd (original)
+++ usocket/branches/0.3.x/usocket.asd Sat Jun 28 06:18:15 2008
@@ -14,7 +14,7 @@
(defsystem usocket
:name "usocket"
:author "Erik Enge & Erik Huelsmann"
- :version "0.3.5-dev"
+ :version "0.3.8-dev"
:licence "MIT"
:description "Universal socket library for Common Lisp"
:depends-on (:split-sequence
From ehuelsmann at common-lisp.net Sat Jun 28 12:30:33 2008
From: ehuelsmann at common-lisp.net (ehuelsmann at common-lisp.net)
Date: Sat, 28 Jun 2008 08:30:33 -0400 (EDT)
Subject: [usocket-cvs] r359 - public_html/releases
Message-ID: <20080628123033.682AD340BB@common-lisp.net>
Author: ehuelsmann
Date: Sat Jun 28 08:30:31 2008
New Revision: 359
Added:
public_html/releases/usocket-0.3.6.tar.gz.asc
public_html/releases/usocket-0.3.7.tar.gz.asc
Log:
Add signature files.
Added: public_html/releases/usocket-0.3.6.tar.gz.asc
==============================================================================
--- (empty file)
+++ public_html/releases/usocket-0.3.6.tar.gz.asc Sat Jun 28 08:30:31 2008
@@ -0,0 +1,7 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.6 (GNU/Linux)
+
+iD8DBQBIZi7yi5O0Epaz9TkRAulwAJ9g2dVsqbYf7f6FdOyR1iUkq9J2yACeIjyl
+CDeMaYezgHhOpRFWWXoWeMM=
+=Qa9v
+-----END PGP SIGNATURE-----
Added: public_html/releases/usocket-0.3.7.tar.gz.asc
==============================================================================
--- (empty file)
+++ public_html/releases/usocket-0.3.7.tar.gz.asc Sat Jun 28 08:30:31 2008
@@ -0,0 +1,7 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.6 (GNU/Linux)
+
+iD8DBQBIZi8Hi5O0Epaz9TkRAsBRAJ9bLlrhPfjmolHIFwevuDQt+lOpdwCfVmfl
+oDpQpvdjRQhraZfB88TrgS0=
+=/Swp
+-----END PGP SIGNATURE-----