[squeak-dev] The Trunk: NetworkTests-ul.32.mcz

David T. Lewis lewis at mail.msen.com
Wed Aug 15 12:32:28 UTC 2012


On Tue, Aug 14, 2012 at 10:46:59PM +0100, Frank Shearar wrote:
> On 14 August 2012 14:54, David T. Lewis <lewis at mail.msen.com> wrote:
> > When running on Cog, the original network support code is used. If the
> > new network support primitives are present, then the updated code is
> > used, which includes use of SocketAddress to represent socket addresses
> > rather than four byte ByteArray. There are some places where exceptions
> > are raised in the new support code associated with the use of SocketAddress.
> >
> > I can't say if this is right or not, but raising an exception when
> > asking for the peerName of an uninitialized socket does not seem too
> > unreasonable.
> 
> The test fails on my machine because in Socket >> #remoteSocketAddress
> the size local variable is assigned -1. SocketAddress new: -1 then
> fails. The -1 comes from the return value of self
> primSocketRemoteAddressSize: socketHandle. (So clearly NetNameResolver
> useOldNetwork returns false.)
> 

Oops, I gave you bad information: Eliot added the IPV6 primitives to
Cog a couple of months ago, so all recently compiled VMs will now have
the new network primitives.

In any case you're right, it does not work. The implementation of
Socket>>remoteSocketAddress looks bogus to me. I'm not entirely sure
how it *should* work either ... this might take a bit of thought.

I posted a patch that makes the test pass.

Dave



More information about the Squeak-dev mailing list