private void SetupChannel() { if (this.authSet && !this._secure) { throw new RemotingException(CoreChannel.GetResourceString("Remoting_Tcp_AuthenticationConfigServer")); } this._channelData = new ChannelDataStore(null); if (this._port > 0) { this._channelData.ChannelUris = new string[] { this.GetChannelUri() }; } if (this._sinkProvider == null) { this._sinkProvider = this.CreateDefaultServerProviderChain(); } CoreChannel.CollectChannelDataFromServerSinkProviders(this._channelData, this._sinkProvider); IServerChannelSink nextSink = ChannelServices.CreateServerChannelSinkChain(this._sinkProvider, this); this._transportSink = new TcpServerTransportSink(nextSink, this._impersonate); this._acceptSocketCallback = new AsyncCallback(this.AcceptSocketCallbackHelper); if (this._port >= 0) { this._tcpListener = new ExclusiveTcpListener(this._bindToAddr, this._port); this.StartListening(null); } }
void Init(IServerChannelSinkProvider serverSinkProvider) { if (serverSinkProvider == null) { serverSinkProvider = new BinaryServerFormatterSinkProvider(); } if (host == null) { if (useIpAddress) { if (!bindAddress.Equals(IPAddress.Any)) { host = bindAddress.ToString(); } else { IPHostEntry he = Dns.Resolve(Dns.GetHostName()); if (he.AddressList.Length == 0) { throw new RemotingException("IP address could not be determined for this host"); } AddressFamily addressFamily = (Socket.SupportsIPv4) ? AddressFamily.InterNetwork : AddressFamily.InterNetworkV6; IPAddress addr = GetMachineAddress(he, addressFamily); if (addr != null) { host = addr.ToString(); } else { host = he.AddressList [0].ToString(); } } } else { host = Dns.GetHostByName(Dns.GetHostName()).HostName; } } // Gets channel data from the chain of channel providers channel_data = new ChannelDataStore(null); IServerChannelSinkProvider provider = serverSinkProvider; while (provider != null) { provider.GetChannelData(channel_data); provider = provider.Next; } // Creates the sink chain that will process all incoming messages IServerChannelSink next_sink = ChannelServices.CreateServerChannelSinkChain(serverSinkProvider, this); sink = new TcpServerTransportSink(next_sink); StartListening(null); }
} // SetupMachineName private void SetupChannel() { // set channel data // (These get changed inside of StartListening(), in the case where the listen // port is 0, because we can't determine the port number until after the // TcpListener starts.) if (authSet && !_secure) { throw new RemotingException(CoreChannel.GetResourceString( "Remoting_Tcp_AuthenticationConfigServer")); } _channelData = new ChannelDataStore(null); if (_port > 0) { _channelData.ChannelUris = new String[1]; _channelData.ChannelUris[0] = GetChannelUri(); } // set default provider (soap formatter) if no provider has been set if (_sinkProvider == null) { _sinkProvider = CreateDefaultServerProviderChain(); } CoreChannel.CollectChannelDataFromServerSinkProviders(_channelData, _sinkProvider); // construct sink chain IServerChannelSink sink = ChannelServices.CreateServerChannelSinkChain(_sinkProvider, this); _transportSink = new TcpServerTransportSink(sink, _impersonate); // Initialize the accept socket callback _acceptSocketCallback = new AsyncCallback(AcceptSocketCallbackHelper); if (_port >= 0) { // Open a TCP port and create a thread to start listening _tcpListener = new ExclusiveTcpListener(_bindToAddr, _port); // Wait for thread to spin up StartListening(null); } } // SetupChannel
} // SetupMachineName private void SetupChannel() { // set channel data // (These get changed inside of StartListening(), in the case where the listen // port is 0, because we can't determine the port number until after the // TcpListener starts.) _channelData = new ChannelDataStore(null); if (_port > 0) { _channelData.ChannelUris = new String[1]; _channelData.ChannelUris[0] = GetChannelUri(); } // set default provider (soap formatter) if no provider has been set if (_sinkProvider == null) { _sinkProvider = CreateDefaultServerProviderChain(); } CoreChannel.CollectChannelDataFromServerSinkProviders(_channelData, _sinkProvider); // construct sink chain IServerChannelSink sink = ChannelServices.CreateServerChannelSinkChain(_sinkProvider, this); _transportSink = new TcpServerTransportSink(sink); if (_port >= 0) { // Open a TCP port and create a thread to start listening _tcpListener = new TcpListener(_bindToAddr, _port); ThreadStart t = new ThreadStart(this.Listen); _listenerThread = new Thread(t); _listenerThread.IsBackground = true; // Wait for thread to spin up StartListening(null); } } // SetupChannel
void Init (IServerChannelSinkProvider serverSinkProvider) { if (serverSinkProvider == null) { serverSinkProvider = new BinaryServerFormatterSinkProvider (); } if (host == null) { if (useIpAddress) { if (!bindAddress.Equals(IPAddress.Any)) host = bindAddress.ToString (); else { IPHostEntry he = Dns.Resolve (Dns.GetHostName()); if (he.AddressList.Length == 0) throw new RemotingException ("IP address could not be determined for this host"); host = he.AddressList [0].ToString (); } } else host = Dns.GetHostByName(Dns.GetHostName()).HostName; } // Gets channel data from the chain of channel providers channel_data = new ChannelDataStore (null); IServerChannelSinkProvider provider = serverSinkProvider; while (provider != null) { provider.GetChannelData(channel_data); provider = provider.Next; } // Creates the sink chain that will process all incoming messages IServerChannelSink next_sink = ChannelServices.CreateServerChannelSinkChain (serverSinkProvider, this); sink = new TcpServerTransportSink (next_sink); StartListening (null); }
public ClientConnection (TcpServerChannel serverChannel, Socket socket, TcpServerTransportSink sink) { _socket = socket; _sink = sink; _id = _count++; }
} // SetupMachineName private void SetupChannel() { // set channel data // (These get changed inside of StartListening(), in the case where the listen // port is 0, because we can't determine the port number until after the // TcpListener starts.) _channelData = new ChannelDataStore(null); if (_port > 0) { _channelData.ChannelUris = new String[1]; _channelData.ChannelUris[0] = GetChannelUri(); } // set default provider (soap formatter) if no provider has been set if (_sinkProvider == null) _sinkProvider = CreateDefaultServerProviderChain(); CoreChannel.CollectChannelDataFromServerSinkProviders(_channelData, _sinkProvider); // construct sink chain IServerChannelSink sink = ChannelServices.CreateServerChannelSinkChain(_sinkProvider, this); _transportSink = new TcpServerTransportSink(sink); if (_port >= 0) { // Open a TCP port and create a thread to start listening _tcpListener = new TcpListener(_bindToAddr, _port); ThreadStart t = new ThreadStart(this.Listen); _listenerThread = new Thread(t); _listenerThread.IsBackground = true; // Wait for thread to spin up StartListening(null); } } // SetupChannel
public ClientConnection(TcpServerChannel serverChannel, Socket socket, TcpServerTransportSink sink) { _socket = socket; _sink = sink; _id = _count++; }
} // SetupMachineName private void SetupChannel() { // set channel data // (These get changed inside of StartListening(), in the case where the listen // port is 0, because we can't determine the port number until after the // TcpListener starts.) if (authSet && !_secure) throw new RemotingException(CoreChannel.GetResourceString( "Remoting_Tcp_AuthenticationConfigServer")); _channelData = new ChannelDataStore(null); if (_port > 0) { _channelData.ChannelUris = new String[1]; _channelData.ChannelUris[0] = GetChannelUri(); } // set default provider (soap formatter) if no provider has been set if (_sinkProvider == null) _sinkProvider = CreateDefaultServerProviderChain(); CoreChannel.CollectChannelDataFromServerSinkProviders(_channelData, _sinkProvider); // construct sink chain IServerChannelSink sink = ChannelServices.CreateServerChannelSinkChain(_sinkProvider, this); _transportSink = new TcpServerTransportSink(sink, _impersonate); // Initialize the accept socket callback _acceptSocketCallback = new AsyncCallback(AcceptSocketCallbackHelper); if (_port >= 0) { // Open a TCP port and create a thread to start listening _tcpListener = new ExclusiveTcpListener(_bindToAddr, _port); // Wait for thread to spin up StartListening(null); } } // SetupChannel