Hi, If i modify the #useOldNetwork method, everything works. Thanks for that tip. However: is this not a 'bug' in Pharo to have ipv6 as default, since it is not working properly? With my simple SocketTest not working for instance? Kind regards, Bart 2009/11/16 Schwab,Wilhelm K <bschwab@anest.ufl.edu>
FWIW, I am fairly certain the IPv6 changes are incomplete at best. Others have reported needing to override #useOldNetwork to always answer true, and I have noted things that are called "in the clear" when they should be hidden behind an old net test.
So far, I have done what amounts to some glorified loopback tests and have watched MC download packages from IPv4 addresses.
Bill
------------------------------ *From:* pharo-project-bounces@lists.gforge.inria.fr [mailto: pharo-project-bounces@lists.gforge.inria.fr] *On Behalf Of *Bart Gauquie *Sent:* Monday, November 16, 2009 4:26 PM *To:* pharo-project@lists.gforge.inria.fr *Subject:* [Pharo-project] Socket accepts ipv6 addresses, but can not connect to them
Dear all,
I'm using Pharo1.0rc1 Latest update: #10493, on Windows Vista , runtime 3.11.4.
Following test is going fine:
SocketTest>>testConnectToLocalhostThroughNetNameResolverAddressForNameLocalhost |serverSocket clientSocket address|
serverSocket := Socket newTCP. clientSocket := Socket newTCP.
[ serverSocket listenOn: 6665. address := NetNameResolver addressForName: '127.0.0.1' timeout: 20. clientSocket connectTo: address port: 6665] ensure: [ clientSocket close. serverSocket close. ]
(connect to a socket on localhost)
however, following test:
testConnectToLocalhostThroughNetNameResolverLocalHostAddress |serverSocket clientSocket address|
serverSocket := Socket newTCP. clientSocket := Socket newTCP.
[ serverSocket listenOn: 6665. address := NetNameResolver localHostAddress. clientSocket connectTo: address port: 6665] ensure: [ clientSocket close. serverSocket close. ]
is failing with following error: ConnectionTimedOut: Cannot connect to: fe80::6dd3:7860:93c9:46a0%10(PC_xxx),6665(6665)
[] in Socket>>connectTo:waitForConnectionFor: Socket>>waitForConnectionFor:ifTimedOut: Socket>>connectTo:waitForConnectionFor: Socket>>connectTo: Socket>>connectTo:port: [] in SocketTest>>testConnectToLocalhostThroughNetNameResolverLocalHostAddress BlockClosure>>ensure: SocketTest>>testConnectToLocalhostThroughNetNameResolverLocalHostAddress SocketTest(TestCase)>>performTest [] in [] in SocketTest(TestCase)>>runCase BlockClosure>>ensure:
I understand that the above address is an ipv6 address. (the NetNameResolver localHostAddress lookup returns on my machine a ipv6 address) If i do ipconfig on my machine:
Ethernet-adapter LAN-verbinding:
Verbindingsspec. DNS-achtervoegsel: lan Link-local IPv6-adres . . . . . . : fe80::6dd3:7860:93c9:46a0%10 IPv4-adres. . . . . . . . . . . . : 10.0.0.39 Subnetmasker. . . . . . . . . . . : 255.255.255.0 Standaardgateway. . . . . . . . . : 10.0.0.138
its the same ipv6 address.
Is it normal that the Socket class can not handle ipv6 addresses ? I get a timeoutexception on it (however this happens immediately).
Is this the behaviour that i can expect ? The reason i noticed this is that I'm trying Magma, the server in a separate image but on the same machine, under ubuntu 9.10 everything worked fine, under Windows Vista it crashed, since internally it also uses NetNameResolver localHostAddress to connect to 'localhost', and i got the same connect timeout exception.
In attachment, a fileout of the SocketTest (had to create a new testclass for this :-( )
Kind regards,
Bart
-- imagination is more important than knowledge - Albert Einstein Logic will get you from A to B. Imagination will take you everywhere - Albert Einstein Learn from yesterday, live for today, hope for tomorrow. The important thing is not to stop questioning. - Albert Einstein The true sign of intelligence is not knowledge but imagination. - Albert Einstein Gravitation is not responsible for people falling in love. - Albert Einstein
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project