private static VPNGateServer FromCsv(string csvLine) { string[] values = csvLine.Split(','); VPNGateServer server = new VPNGateServer(); server.CountryLong = values[5]; server.CountryShort = values[6]; server.HostName = values[0]; server.IP = values[1]; server.Score = int.Parse(values[2]); server.LogType = values[11]; server.Message = values[13]; server.NumVpnSessions = values[7]; server.Uptime = long.Parse(values[8]); server.Operator = values[12]; server.Ping = values[3]; server.Speed = int.Parse(values[4]); server.TotalTraffic = long.Parse(values[10]); server.TotalUsers = int.Parse(values[9]); byte[] data = Convert.FromBase64String(values[14]); string decodedString = Encoding.UTF8.GetString(data); server.OpenVPNConfigData = decodedString; return server; }
public static void SelectServer(VPNGateServer server) { var config = Path.GetFullPath(OpenVPN.GetOpenVpnDirectory() + @"\config\" + VpnGateConifg); FileStream file = null; if (!File.Exists(config)) { file = File.Create(config); } else { File.WriteAllText(config, ""); file = File.OpenWrite(config); } using (file) { using (StreamWriter sw = new StreamWriter(file)) { sw.Write(server.OpenVPNConfigData); } } OpenVPN.SecureConfigs(); Settings settings = Settings.Get(); settings.SelectedVPNGateServer = server; Settings.Save(settings); }