public static bool Connect2Relayer(Tunnel tunnel) { bool result = false; if (tunnel != null) { Socket socket2Server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); IPEndPoint ipeOfServer = Conf.GetRemoteIPEndPoint(); try { socket2Server.Connect(ipeOfServer); } catch { socket2Server = null; } tunnel.SocketR = socket2Server; tunnel.EncryptR = false; if (CheckVersion(tunnel)) { tunnel.EncryptR = true; result = CheckUser(tunnel); } } return(result); }