void _server_onClientConnected(object sender, ClientEventArgs e) { //Console.WriteLine("Client connected."); SocksClient client = new SocksClient(e.Client); client.onClientConnected += client_onClientConnected; client.onClientDisconnected += client_onClientDisconnected; client.OnClientAuthenticating += client_OnClientAuthenticating; Clients.Add(client); client.Authentication = this.Authentication; client.Begin(this.PacketSize, this.Timeout); }
void _server_onClientConnected(object sender, ClientEventArgs e) { //Console.WriteLine("Client connected."); //call plugins related to ClientConnectedHandler. foreach (ClientConnectedHandler cch in PluginLoader.LoadPlugin(typeof(ClientConnectedHandler))) { try { if (!cch.OnConnect(e.Client, (IPEndPoint)e.Client.Sock.RemoteEndPoint)) { e.Client.Disconnect(); return; } } catch { } } SocksClient client = new SocksClient(e.Client); e.Client.onDataReceived += Client_onDataReceived; e.Client.onDataSent += Client_onDataSent; client.onClientDisconnected += client_onClientDisconnected; Clients.Add(client); client.Begin(this.OutboundIPAddress, this.PacketSize, this.Timeout); }