public Tor(string torDirectory, bool x86 = true, string torControlPassword = null) { versionRegex = new Regex(@"Tor version (?<version>\S+)", RegexOptions.Compiled); var httpHandler = new HttpClientHandler { AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate, SslProtocols = SslProtocols.Tls11 | SslProtocols.Tls12, AllowAutoRedirect = false, }; var httpClient = new HttpClient(httpHandler); httpClient.DefaultRequestHeaders.UserAgent.ParseAdd("Tor4NET (+https://github.com/Zaczerp/Tor4NET)"); httpClient.DefaultRequestHeaders.Connection.Clear(); httpClient.DefaultRequestHeaders.ConnectionClose = false; httpClient.DefaultRequestHeaders.Connection.Add("Keep-Alive"); torUpdater = new TorUpdater(httpClient, x86); this.torDirectory = torDirectory; torExecutable = $@"{this.torDirectory}\Tor\tor.exe"; if (!string.IsNullOrEmpty(torControlPassword)) { controlPassword = torControlPassword; } }
public Tor(string torDirectory, bool?x86 = null, int socksPort = 9450, int controlPort = 9451, string controlPassword = "") { if (!x86.HasValue) { x86 = !Environment.Is64BitProcess; } var httpHandler = new HttpClientHandler { AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate, SslProtocols = SslProtocols.Tls11 | SslProtocols.Tls12, AllowAutoRedirect = false, }; var httpClient = new HttpClient(httpHandler); httpClient.DefaultRequestHeaders.UserAgent.ParseAdd("Tor4NET (+https://github.com/Zaczero/Tor4NET)"); torUpdater = new TorUpdater(httpClient, x86.Value); this.torDirectory = torDirectory; torExecutable = $@"{this.torDirectory}\Tor\tor.exe"; this.socksPort = socksPort; this.controlPort = controlPort; this.controlPassword = controlPassword; }