Squeak listening to specific IP Addresses?

Lex Spoon lex at cc.gatech.edu
Thu Jan 22 17:02:05 UTC 2004

> > Not if you want to use a specific local interface in a connect() call 
> > (that
> > was the starting point for the discussion).
> Conceded.

There are two issues: compatibility to old images, and compatibility to
MacOS classic.  Old images use the old primitives, including the strange
listenOn: primitive which closes the listening socket after the first
connection.  Granted, it has been a few years at this point.  As a
bigger issue, there was a problem using BSD sockets on MacOS classic. 
That's why Squeak has its distinctive sockets API to begin with...

But I would guess neither of these is a big deal.

That aside, let's go whole hog!  Make a real BSDSocket class that has
all the functions BSD sockets are supposed to have.  To get an idea of
what is required, download Scheme Shell and look what they did; I have
heard they have a quite thorough wrapper for BSD sockets into Scheme,
plus some nice utilities sitting on top of them.


Keep in mind that there are probably a lot of odds and ends that the
current primitives overlook.  For example, there is out of band data
that would be useful for a proper telnet client.  There are also various
flags in some of the functions that we are probably overlooking.

Anyway, I am not volunteering any effort here, so do as ye will.  :)  It
just worries me to see this endless tinkering.  Either we want
super-portable primitives like the original Squeak primitives, or we
want to insist on full BSD semantics.  Playing around in the between
spaces seems strange.


More information about the Squeak-dev mailing list