Mariano, Understood. I have not had time to run it down, but I am not being a complete slug today (not that you implied I was being such). I added to my stream protocol, wrote a nice test of in-image socket server and client, and am now tweaking my "load script" to look for code that I wrote and is not properly packaged. My image is ancient, and I don't know when Stef might make good on his threat to hunt us down for that :)
Bill ________________________________ From: [email protected] [mailto:[email protected]] On Behalf Of Mariano Martinez Peck Sent: Monday, November 02, 2009 10:25 PM To: [email protected] Subject: Re: [Pharo-project] Server sockets, ephermal ports, and a Linux VM crash Bill: As always, it would help if you can give us/them more information. For example, running Pharo from command line and send the output of the command line. Or the PharoDebug.log or whatever other thing that may help. Best mariano 2009/11/3 Schwab,Wilhelm K <[email protected]<mailto:[email protected]>> John, By crash, I mean pretty much the standard thing: one instant, Pharo is running, click something on the inspector, and suddenly Pharo is gone. Not good. Bill ________________________________ From: [email protected]<mailto:[email protected]> [mailto:[email protected]<mailto:[email protected]>] On Behalf Of John McIntosh Sent: Monday, November 02, 2009 9:43 PM To: [email protected]<mailto:[email protected]> Subject: Re: [Pharo-project] Server sockets, ephermal ports, and a Linux VM crash On Mon, Nov 2, 2009 at 5:52 PM, Igor Stasenko <[email protected]<mailto:[email protected]>> wrote: 2009/11/2 Schwab,Wilhelm K <[email protected]<mailto:[email protected]>>: > A nice trick is to use "ephmeral" ports, which is a fancy way of saying to > pass zero for the listening port and let the OS assign a port. OS-X assigns you the range 49152-65535 As for the getOption, the values for the key and the results is platform specific, and likely operating system version specific too. However for platforms that use BSD sockets, ala (Unix/Linux/OS-X) then the keys are in this table. Obviously if you fiddle with them then you know what you are doing? { "SO_DEBUG", SOL_SOCKET, SO_DEBUG }, { "SO_REUSEADDR", SOL_SOCKET, SO_REUSEADDR }, { "SO_DONTROUTE", SOL_SOCKET, SO_DONTROUTE }, { "SO_BROADCAST", SOL_SOCKET, SO_BROADCAST }, { "SO_SNDBUF", SOL_SOCKET, SO_SNDBUF }, { "SO_RCVBUF", SOL_SOCKET, SO_RCVBUF }, { "SO_KEEPALIVE", SOL_SOCKET, SO_KEEPALIVE }, { "SO_OOBINLINE", SOL_SOCKET, SO_OOBINLINE }, { "SO_LINGER", SOL_SOCKET, SO_LINGER }, { "IP_TTL", SOL_IP, IP_TTL }, { "IP_HDRINCL", SOL_IP, IP_HDRINCL }, { "IP_MULTICAST_IF", SOL_IP, IP_MULTICAST_IF }, { "IP_MULTICAST_TTL", SOL_IP, IP_MULTICAST_TTL }, { "IP_MULTICAST_LOOP", SOL_IP, IP_MULTICAST_LOOP }, #ifdef IP_ADD_MEMBERSHIP { "IP_ADD_MEMBERSHIP", SOL_IP, IP_ADD_MEMBERSHIP }, { "IP_DROP_MEMBERSHIP", SOL_IP, IP_DROP_MEMBERSHIP }, #endif { "TCP_MAXSEG", SOL_TCP, TCP_MAXSEG }, { "TCP_NODELAY", SOL_TCP, TCP_NODELAY }, #ifdef SO_REUSEPORT { "SO_REUSEPORT", SOL_SOCKET, SO_REUSEPORT }, #endif I created a TcpService on port zero, the listening socket gets a port and all seems reasonably well until I later inspect a few aspects of the TcpService, at which point the vm crashes. > > Bill More details required about the crashes? Whatever crashes mean. -- =========================================================================== John M. McIntosh <[email protected]<mailto:[email protected]>> Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com =========================================================================== _______________________________________________ Pharo-project mailing list [email protected]<mailto:[email protected]> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list [email protected] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
