Exemple #1
0
 public virtual Endpoint Listen()
 {
     try
     {
         Debug.Assert(_fd != null);
         _addr = Network.DoBind(_fd, _addr);
         Network.DoListen(_fd, _backlog);
     }
     catch (SystemException)
     {
         _fd = null;
         throw;
     }
     _endpoint = (TcpEndpoint)_endpoint.NewPort(EffectivePort());
     return(_endpoint);
 }
Exemple #2
0
        internal TcpAcceptor(TcpEndpoint endpoint, ObjectAdapter adapter)
        {
            _adapter = adapter;

            _addr = Network.GetAddressForServerEndpoint(endpoint.Host,
                                                        endpoint.Port,
                                                        endpoint.Communicator.IPVersion,
                                                        endpoint.Communicator.PreferIPv6);

            _fd = Network.CreateServerSocket(false, _addr.AddressFamily, endpoint.Communicator.IPVersion);
            Network.SetBlock(_fd, false);
            Network.SetTcpBufSize(_fd, endpoint.Communicator);

            _addr = Network.DoBind(_fd, _addr);
            Network.DoListen(_fd, endpoint.Communicator.GetPropertyAsInt("Ice.TCP.Backlog") ?? 511);

            Endpoint = endpoint.NewPort((ushort)_addr.Port);
        }