On Mon, Nov 2, 2009 at 5:52 PM, Igor Stasenko <siguctua@gmail.com> wrote:
2009/11/2 Schwab,Wilhelm K <bschwab@anest.ufl.edu>:

> 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 <johnmci@smalltalkconsulting.com>
Corporate Smalltalk Consulting Ltd. �http://www.smalltalkconsulting.com
===========================================================================