X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=contrib%2Fsb-bsd-sockets%2Fsockets.lisp;h=146d32b4d13286ce03c03d91fec7466e6a0aaa28;hb=b9691ef5009d3669c4f87f4dfbd2baf4538e60f8;hp=5d09d65eafe839c345b71de6b1666b5192f783cd;hpb=9d17f7daef6d930a229ae6c0339c9eefc3dd71e6;p=sbcl.git diff --git a/contrib/sb-bsd-sockets/sockets.lisp b/contrib/sb-bsd-sockets/sockets.lisp index 5d09d65..146d32b 100644 --- a/contrib/sb-bsd-sockets/sockets.lisp +++ b/contrib/sb-bsd-sockets/sockets.lisp @@ -26,6 +26,8 @@ protocol. Other values are used as-is.") (type :initarg :type :reader socket-type :documentation "Type of the socket: :STREAM or :DATAGRAM.") + #+win32 + (non-blocking-p :type (member t nil) :initform nil) (stream)) (:documentation "Common base class of all sockets, not meant to be directly instantiated."))) @@ -433,7 +435,7 @@ request an input stream and get an output stream in response\)." :external-format external-format :timeout timeout :auto-close auto-close - :serve-events serve-events)) + :serve-events (and serve-events #+win32 nil))) (setf (slot-value socket 'stream) stream)) (sb-ext:cancel-finalization socket) stream)) @@ -454,7 +456,9 @@ request an input stream and get an output stream in response\)." (socket-error-syscall c) (or (socket-error-symbol c) (socket-error-errno c)) #+cmu (sb-unix:get-unix-error-msg num) - #+sbcl (sb-int:strerror num))))) + #+sbcl + #+win32 (sb-win32::get-last-error-message num) + #-win32 (sb-int:strerror num))))) (:documentation "Common base class of socket related conditions.")) ;;; watch out for slightly hacky symbol punning: we use both the value