Karol Skocik
2006-02-23 21:03:28 UTC
Hi guys,
I have a problem with connecting to SBCL 0.98 running on our FreeBSD
server.
The server serves as firewall as well, and it looks like that SWANK
wants to open another port (besides the one on 4005) somewhere and we
dont know the where it is. Since we don't want to allow all ports by
default, and want to keep server working as firewall, how to solve
this?
I start SWANK with this :
***@saturn ~ $ cat multi-repl-sbcl
sbcl --load multi-repl-sbcl.lisp
where multi-repl-sbcl.lisp looks like this :
(load "/usr/local/cl-registry/slime/swank-loader")
(swank-loader:load-swank)
(load "/usr/local/cl-registry/slime/present")
(defun start-swank (&key (port swank::default-server-port)
(style swank:*communication-style*)
(dont-close t))
"Start the SLIME swank server, listening on PORT. Multiple
connections are allowed."
(swank:create-server :port port
:style style
:dont-close dont-close))
(start-swank)
When I start SBCL like "sbcl --load multi-repl-sbcl.lisp", SWANK is
started and listens on server according to sockstat :
***@Server$ sockstat | grep sbcl
md sbcl 61826 6 tcp4 127.0.0.1:4005 *:*
So, here is first problem :
-1- How to setup SWANK to listen on the address of the server
(192.168.0.1) instead of server's localhost address??? (we are
redirecting communication - is it problem?)
Now, I connect to SWANK. I do slime-connect RET 192.168.0.1 RET 4005
RET,
and I get this on the bottom of the Emacs :
error in process filter: connection failed: connection refused,
127.0.0.1, *lisp-output-stream*
Why is the 127.0.0.1 there?
Now, after the attempt to connect, sockstat looks like this :
md sbcl 61826 5 tcp4 127.0.0.1:4005
192.168.0.50:54812
md sbcl 61826 6 tcp4 127.0.0.1:4005 *:*
md sbcl 61826 7 tcp4 127.0.0.1:57255 *:*
so we can see that there is port 57255 on server (127.0.0.1), which is
not allowed, and that's why is probably fails (maybe.. what's that
another 4005 doing there?)
When I want to close Emacs, I see this process list :
Proc Status Buffer Tty Command
---- ------ ------ --- -------
SLIME Lisp open *cl-connection* (none) (network stream
connection to 192.168.0.1)
What to do? We would really like to use SLIME & SBCL, and connect
remotely, but how to solve this?
Thanks for any ideas,
Karol
I have a problem with connecting to SBCL 0.98 running on our FreeBSD
server.
The server serves as firewall as well, and it looks like that SWANK
wants to open another port (besides the one on 4005) somewhere and we
dont know the where it is. Since we don't want to allow all ports by
default, and want to keep server working as firewall, how to solve
this?
I start SWANK with this :
***@saturn ~ $ cat multi-repl-sbcl
sbcl --load multi-repl-sbcl.lisp
where multi-repl-sbcl.lisp looks like this :
(load "/usr/local/cl-registry/slime/swank-loader")
(swank-loader:load-swank)
(load "/usr/local/cl-registry/slime/present")
(defun start-swank (&key (port swank::default-server-port)
(style swank:*communication-style*)
(dont-close t))
"Start the SLIME swank server, listening on PORT. Multiple
connections are allowed."
(swank:create-server :port port
:style style
:dont-close dont-close))
(start-swank)
When I start SBCL like "sbcl --load multi-repl-sbcl.lisp", SWANK is
started and listens on server according to sockstat :
***@Server$ sockstat | grep sbcl
md sbcl 61826 6 tcp4 127.0.0.1:4005 *:*
So, here is first problem :
-1- How to setup SWANK to listen on the address of the server
(192.168.0.1) instead of server's localhost address??? (we are
redirecting communication - is it problem?)
Now, I connect to SWANK. I do slime-connect RET 192.168.0.1 RET 4005
RET,
and I get this on the bottom of the Emacs :
error in process filter: connection failed: connection refused,
127.0.0.1, *lisp-output-stream*
Why is the 127.0.0.1 there?
Now, after the attempt to connect, sockstat looks like this :
md sbcl 61826 5 tcp4 127.0.0.1:4005
192.168.0.50:54812
md sbcl 61826 6 tcp4 127.0.0.1:4005 *:*
md sbcl 61826 7 tcp4 127.0.0.1:57255 *:*
so we can see that there is port 57255 on server (127.0.0.1), which is
not allowed, and that's why is probably fails (maybe.. what's that
another 4005 doing there?)
When I want to close Emacs, I see this process list :
Proc Status Buffer Tty Command
---- ------ ------ --- -------
SLIME Lisp open *cl-connection* (none) (network stream
connection to 192.168.0.1)
What to do? We would really like to use SLIME & SBCL, and connect
remotely, but how to solve this?
Thanks for any ideas,
Karol