- Timestamp:
- 08/21/04 21:48:10 (21 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified trunk/command.lisp ¶
r50 r67 140 140 (send-irc-message connection :quit message) 141 141 #+(and sbcl (not sb-thread)) 142 (sb-sys:invalidate-descriptor (sb- bsd-sockets:socket-file-descriptor143 (server-socketconnection)))142 (sb-sys:invalidate-descriptor (sb-sys:fd-stream-fd 143 (server-stream connection))) 144 144 (close (server-stream connection))) 145 145 … … 250 250 (defun socket-stream (socket) 251 251 #+sbcl 252 (values 253 (sb-bsd-sockets:socket-make-stream socket 254 :element-type 'character 255 :input t 256 :output t 257 :buffering :none) 258 socket) 252 (sb-bsd-sockets:socket-make-stream socket 253 :element-type 'character 254 :input t 255 :output t 256 :buffering :none) 259 257 #+openmcl 260 258 socket) … … 280 278 (logging-stream t)) 281 279 "Connect to server and return a connection object." 282 (multiple-value-bind (stream socket) 283 (socket-connect server port) 284 (let* ((user (make-user :nickname nickname 285 :username username 286 :realname realname)) 287 (connection (make-connection :server-stream stream 288 :server-socket socket 289 :client-stream logging-stream 290 :user user 291 :server-name server))) 280 (let* ((stream (socket-connect server port)) 281 (user (make-user :nickname nickname 282 :username username 283 :realname realname)) 284 (connection (make-connection :server-stream stream 285 :client-stream logging-stream 286 :user user 287 :server-name server))) 292 288 (nick connection nickname) 293 289 (user- connection (or username nickname) mode (or realname nickname)) 294 290 (add-default-hooks connection) 295 connection)) )291 connection)) 296 292 297 293 (defmethod trace- ((connection connection) &optional (target "")) -
TabularUnified trunk/protocol.lisp ¶
r60 r67 34 34 :accessor server-stream 35 35 :documentation "Stream used to talk to the IRC server.") 36 (server-socket37 :initarg :server-socket38 :accessor server-socket39 :initform nil)40 36 (client-stream 41 37 :initarg :client-stream … … 81 77 (server-name "") 82 78 (server-stream nil) 83 (server-socket nil)84 79 (client-stream t) 85 80 (hooks nil)) … … 88 83 :server-name server-name 89 84 :server-stream server-stream 90 :server-socket server-socket91 85 :client-stream client-stream))) 92 86 (dolist (hook hooks) … … 126 120 127 121 (define-condition invalidate-me (condition) 128 ((s ocket :initarg :socket129 :reader invalidate-me-s ocket)122 ((stream :initarg :stream 123 :reader invalidate-me-stream) 130 124 (condition :initarg :condition 131 125 :reader invalidate-me-condition))) … … 141 135 (irc-message-event message) 142 136 message))) ; needed because of the "loop while" in read-message-loop 143 (stream-error (c) (setf read-more-p nil)144 (signal 'invalidate-me :s ocket145 (server-s ocketconnection)137 (stream-error (c) (setf read-more-p nil) 138 (signal 'invalidate-me :stream 139 (server-stream connection) 146 140 :condition c))))) 147 141 … … 171 165 (read-message connection) 172 166 (invalidate-me (c) 173 (sb-sys:invalidate-descriptor 174 (invalidate-me-socket c)) 167 (sb-sys:invalidate-descriptor fd) 175 168 (format t "Socket closed: ~A~%" 176 169 (invalidate-me-condition c)))))))))
Note: See TracChangeset
for help on using the changeset viewer.