From: Daniel B. <da...@us...> - 2003-09-02 02:39:06
|
Update of /cvsroot/sbcl/sbcl/contrib/sb-bsd-sockets In directory sc8-pr-cvs1:/tmp/cvs-serv22406/contrib/sb-bsd-sockets Modified Files: sockets.lisp sockopt.lisp Log Message: 0.8.3.24 Duh. A working version of socket-accept would be an improvement Index: sockets.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/contrib/sb-bsd-sockets/sockets.lisp,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- sockets.lisp 2 Sep 2003 00:08:14 -0000 1.3 +++ sockets.lisp 2 Sep 2003 02:39:03 -0000 1.4 @@ -77,9 +77,9 @@ (defmethod socket-accept ((socket socket)) (let ((sockaddr (make-sockaddr-for socket))) - (sb-ext::with-pointers-preserved (sockaddr) + (sb-sys:with-pinned-objects (sockaddr) (let ((fd (sockint::accept (socket-file-descriptor socket) - (sockint::array-data-address sickint) + (sockint::array-data-address sockaddr) (size-of-sockaddr socket)))) (apply #'values (if (= fd -1) Index: sockopt.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/contrib/sb-bsd-sockets/sockopt.lisp,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sockopt.lisp 7 Feb 2003 17:11:52 -0000 1.1 +++ sockopt.lisp 2 Sep 2003 02:39:03 -0000 1.2 @@ -57,14 +57,14 @@ `(progn (export ',lisp-name) (defun ,lisp-name (socket &aux (fd (socket-file-descriptor socket))) - (sb-sys:without-gcing - (let ((buf (make-array sockint::size-of-int - :element-type '(unsigned-byte 8) - :initial-element 0))) - (if (= -1 (sockint::getsockopt - fd ,find-level ,number (sockint::array-data-address buf) ,size)) - (socket-error "getsockopt") - (,mangle-return buf ,size))))) + (let ((buf (make-array sockint::size-of-int + :element-type '(unsigned-byte 8) + :initial-element 0))) + (sb-sys:with-pinned-objects (buf) + (if (= -1 (sockint::getsockopt + fd ,find-level ,number (sockint::array-data-address buf) ,size)) + (socket-error "getsockopt") + (,mangle-return buf ,size))))) (defun (setf ,lisp-name) (new-val socket &aux (fd (socket-file-descriptor socket))) (if (= -1 |