/// <summary> /// Get saved sessions from sessions.xml configuration file. /// </summary> /// <returns>Class with Lists of sessions conenction info</returns> public SavedConnectionInfo get_Sessions() { SavedConnectionInfo xml_connection_info = new SavedConnectionInfo(); String filePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), "PuTTYStorm", "sessions.xml"); try { using (XmlReader reader = XmlReader.Create(filePath)) { while (reader.Read()) { if (reader.IsStartElement()) { switch (reader.Name) { case "hostname": if (reader.Read()) { xml_connection_info.hostnames.Add(reader.Value); } break; case "username": if (reader.Read()) { xml_connection_info.usernames.Add(reader.Value); } break; case "password": if (reader.Read()) { // Handle passwordless login if (reader.Value == " ") { xml_connection_info.passwords.Add(null); } else { xml_connection_info.passwords.Add(AESEncryptDecrypt.Decrypt(reader.Value)); } } break; case "count": if (reader.Read()) { xml_connection_info.counts.Add(reader.Value); } break; case "group": if (reader.Read()) { if (reader.Value == " ") { xml_connection_info.groups.Add(null); } else { xml_connection_info.groups.Add(reader.Value); } } break; case "subgroup": if (reader.Read()) { if (reader.Value == " ") { xml_connection_info.sub_groups.Add(null); } else { xml_connection_info.sub_groups.Add(reader.Value); } } break; } } } } } catch (Exception e) { MessageBox.Show(e.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Stop); } return(xml_connection_info); }
/// <summary> /// Get saved private keys from privatekeys.xml configuration file. /// </summary> /// <returns>Class with List of private keys</returns> public SavedPrivatekeysInfo get_PrivateKeys() { SavedPrivatekeysInfo xml_privatekeys_info = new SavedPrivatekeysInfo(); String filePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), "PuTTYStorm", "privatekeys.xml"); try { using (XmlReader reader = XmlReader.Create(filePath)) { while (reader.Read()) { if (reader.IsStartElement()) { switch (reader.Name) { case "name": if (reader.Read()) { xml_privatekeys_info.names.Add(reader.Value); } break; case "type": if (reader.Read()) { xml_privatekeys_info.types.Add(reader.Value); } break; case "group": if (reader.Read()) { xml_privatekeys_info.groups.Add(reader.Value); } break; case "pwd": if (reader.Read()) { if (reader.Value == " ") { xml_privatekeys_info.pwds.Add(null); } else { xml_privatekeys_info.pwds.Add(AESEncryptDecrypt.Decrypt(reader.Value)); } } break; } } } } } catch (Exception e) { MessageBox.Show(e.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Stop); } return(xml_privatekeys_info); }