Author: ctian Date: Sat Jan 28 12:49:31 2012 New Revision: 682
Log: Merge r678 from 0.5.x branch, this new feature is left for 0.6.0
Modified: usocket/trunk/CHANGES usocket/trunk/server.lisp
Modified: usocket/trunk/CHANGES ============================================================================== --- usocket/trunk/CHANGES Sat Jan 28 12:31:12 2012 (r681) +++ usocket/trunk/CHANGES Sat Jan 28 12:49:31 2012 (r682) @@ -1,7 +1,8 @@ 0.6.0:
* New feature: SOCKET-OPTION for seting and geting various socket options. -* Enhancement: SOCKET-CONNECT argument :nodelay can now set to :if-supported (patch from Anton Vodonosov). +* Enhancement: SOCKET-CONNECT argument :nodelay now support :if-supported as value (patch from Anton Vodonosov). +* Enhancement: Add *remote-host* *remote-port* to SOCKET-SERVER stream handler (suggested by Matthew Curry). * Bugfix: [LispWorks] Fixed UDP support for LispWorks 6.1 (patch from Camille Troillard). * Bugfix: [LispWorks] Stop using hcl:add-special-free-action for reclaiming unused UDP socket fds to improve multi-threading stablity (suggested by Camille Troillard).
Modified: usocket/trunk/server.lisp ============================================================================== --- usocket/trunk/server.lisp Sat Jan 28 12:31:12 2012 (r681) +++ usocket/trunk/server.lisp Sat Jan 28 12:49:31 2012 (r682) @@ -80,7 +80,8 @@ &key element-type multi-threading) (let ((real-function #'(lambda (client-socket &rest arguments) (unwind-protect - (apply function (socket-stream client-socket) arguments) + (multiple-value-bind (*remote-host* *remote-port*) (get-peer-name client-socket) + (apply function (socket-stream client-socket) arguments)) (close (socket-stream client-socket)) (socket-close client-socket) nil))))