keeping pristine CMUCL sockets
From: Conrad Barski (mygenericemailaccount_at_yahoo.com)
Date: 11/23/03
- Next message: Joachim Durchholz: "Re: Why I don't believe in static typing"
- Previous message: Joachim Durchholz: "Re: Why I don't believe in static typing"
- Next in thread: Marc Spitzer: "Re: keeping pristine CMUCL sockets"
- Reply: Marc Spitzer: "Re: keeping pristine CMUCL sockets"
- Reply: Harald Hanche-Olsen: "Re: keeping pristine CMUCL sockets"
- Reply: Conrad Barski: "Re: keeping pristine CMUCL sockets"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: 22 Nov 2003 20:33:31 -0800
My socket server keeps hosing my CMUCL sockets, a problem CLISP didn't
cause for me- Any abnormal exit will block the socket permanently, and
I can't figure out why...
If I run:
(let ((sock (extensions:create-inet-listener 1000)))
(unwind-protect
(let* ((x (extensions:accept-tcp-connection sock))
(f (sys:make-fd-stream x :input t :output t)))
(unwind-protect
(break)
(close f)))
(extensions:close-socket sock)))
then connect to the socket (for instance, with "telnet localhost
1000") the program reaches the breakpoint. If I then "q" out of the
debugger kill the program, my protection clauses are triggered and the
socket should be returned to a clean state.
However, next time I try to connect to the socket, I get an exception
"Error binding socket to port 1000: Address already in use".
Is there something I'm not clearing out properly to return the
socket/port back to a default state?
-Thanks in advance everybody-
- Next message: Joachim Durchholz: "Re: Why I don't believe in static typing"
- Previous message: Joachim Durchholz: "Re: Why I don't believe in static typing"
- Next in thread: Marc Spitzer: "Re: keeping pristine CMUCL sockets"
- Reply: Marc Spitzer: "Re: keeping pristine CMUCL sockets"
- Reply: Harald Hanche-Olsen: "Re: keeping pristine CMUCL sockets"
- Reply: Conrad Barski: "Re: keeping pristine CMUCL sockets"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]