adjust app to use 2.8 xsd schema

This commit is contained in:
BlueBlock
2023-03-24 01:33:30 -04:00
parent 38f435f639
commit 7454b15ec9
9 changed files with 13 additions and 16 deletions

View File

@@ -9,6 +9,6 @@ namespace mRemoteNG.App.Info
public static readonly string DefaultConnectionsPath = SettingsFileInfo.SettingsPath;
public static readonly string DefaultConnectionsFile = "confCons.xml";
public static readonly string DefaultConnectionsFileNew = "confConsNew.xml";
public static readonly Version ConnectionFileVersion = new Version(3, 0);
public static readonly Version ConnectionFileVersion = new Version(2, 8);
}
}

View File

@@ -21,7 +21,7 @@ namespace mRemoteNG.Config.Serializers.ConnectionSerializers.Xml
.First().PasswordString
.ConvertToSecureString();
var connectionNodeSerializer = new XmlConnectionNodeSerializer27(
var connectionNodeSerializer = new XmlConnectionNodeSerializer28(
cryptographyProvider,
encryptionKey,
saveFilter ?? new SaveFilter());

View File

@@ -569,7 +569,7 @@ namespace mRemoteNG.Config.Serializers.ConnectionSerializers.Xml
switch (_confVersion)
{
case >= 3.0:
case >= 2.8:
connectionInfo.RedirectDiskDrives = xmlnode.GetAttributeAsEnum<RDPDiskDrives>("RedirectDiskDrives");
connectionInfo.RedirectDiskDrivesCustom = xmlnode.GetAttributeAsString("RedirectDiskDrivesCustom");
connectionInfo.Inheritance.RedirectDiskDrivesCustom = xmlnode.GetAttributeAsBool("InheritRedirectDiskDrivesCustom");

View File

@@ -119,7 +119,7 @@ public class CredentialHarvesterTests
{
var rootNode = new RootNodeInfo(RootNodeType.Connection) { PasswordString = _key.ConvertToUnsecureString() };
rootNode.AddChild(connectionInfo);
var nodeSerializer = new XmlConnectionNodeSerializer27(_cryptographyProvider, _key, new SaveFilter());
var nodeSerializer = new XmlConnectionNodeSerializer28(_cryptographyProvider, _key, new SaveFilter());
var serializer = new XmlConnectionsSerializer(_cryptographyProvider, nodeSerializer);
var serializedData = serializer.Serialize(rootNode);
return XDocument.Parse(serializedData);

View File

@@ -30,7 +30,7 @@ public class ValidateXmlSchemas
_connectionTreeModel.AddRootNode(root);
_cryptographyProvider = new AeadCryptographyProvider();
var connectionNodeSerializer = new XmlConnectionNodeSerializer27(
var connectionNodeSerializer = new XmlConnectionNodeSerializer28(
_cryptographyProvider,
_connectionTreeModel.RootNodes.OfType<RootNodeInfo>().First().PasswordString.ConvertToSecureString(),
new SaveFilter());

View File

@@ -30,7 +30,7 @@ public class XmlConnectionsDocumentCompilerTests
{
_connectionTreeModel = SetupConnectionTreeModel();
_cryptographyProvider = new CryptoProviderFactory(BlockCipherEngines.AES, BlockCipherModes.GCM).Build();
var connectionNodeSerializer = new XmlConnectionNodeSerializer27(
var connectionNodeSerializer = new XmlConnectionNodeSerializer28(
_cryptographyProvider,
_connectionTreeModel.RootNodes.OfType<RootNodeInfo>().First().PasswordString.ConvertToSecureString(),
new SaveFilter());

View File

@@ -21,7 +21,7 @@ public class XmlConnectionsDocumentEncryptorTests
{
var connectionTreeModel = SetupConnectionTreeModel();
var cryptoProvider = new CryptoProviderFactory(BlockCipherEngines.AES, BlockCipherModes.GCM).Build();
var connectionNodeSerializer = new XmlConnectionNodeSerializer27(
var connectionNodeSerializer = new XmlConnectionNodeSerializer28(
cryptoProvider,
connectionTreeModel.RootNodes.OfType<RootNodeInfo>().First().PasswordString.ConvertToSecureString(),
new SaveFilter());

View File

@@ -24,7 +24,7 @@ public class XmlConnectionsSerializerTests
{
_connectionTreeModel = SetupConnectionTreeModel();
_cryptographyProvider = new AeadCryptographyProvider();
var connectionNodeSerializer = new XmlConnectionNodeSerializer27(
var connectionNodeSerializer = new XmlConnectionNodeSerializer28(
_cryptographyProvider,
_connectionTreeModel.RootNodes.OfType<RootNodeInfo>().First().PasswordString.ConvertToSecureString(),
new SaveFilter());
@@ -37,8 +37,7 @@ public class XmlConnectionsSerializerTests
var serializedConnections = _serializer.Serialize(_connectionTreeModel);
var xmlDoc = new XmlDocument();
xmlDoc.LoadXml(serializedConnections);
var nodeCon4 =
xmlDoc.DocumentElement?.SelectSingleNode("Node[@Name='folder2']/Node[@Name='folder3']/Node[@Name='con4']");
var nodeCon4 = xmlDoc.DocumentElement?.SelectSingleNode("Node[@Name='folder2']/Node[@Name='folder3']/Node[@Name='con4']");
Assert.That(nodeCon4, Is.Not.Null);
}
@@ -59,7 +58,7 @@ public class XmlConnectionsSerializerTests
[TestCase("InheritAutomaticResize", null)]
public void SerializerRespectsSaveFilterSettings(string attributeName, string expectedValue)
{
var connectionNodeSerializer = new XmlConnectionNodeSerializer27(
var connectionNodeSerializer = new XmlConnectionNodeSerializer28(
_cryptographyProvider,
_connectionTreeModel.RootNodes.OfType<RootNodeInfo>().First().PasswordString.ConvertToSecureString(),
new SaveFilter(true));

View File

@@ -11,7 +11,6 @@ using System.Linq;
using System.Text;
using mRemoteNG.Config.Serializers.ConnectionSerializers.Xml;
namespace mRemoteNGTests.IntegrationTests
{
public class XmlSerializationLifeCycleTests
@@ -26,7 +25,7 @@ namespace mRemoteNGTests.IntegrationTests
{
_originalModel = SetupConnectionTreeModel();
var cryptoProvider = _cryptoFactory.Build();
var nodeSerializer = new XmlConnectionNodeSerializer27(
var nodeSerializer = new XmlConnectionNodeSerializer28(
cryptoProvider,
_originalModel.RootNodes.OfType<RootNodeInfo>().First().PasswordString.ConvertToSecureString(),
new SaveFilter());
@@ -71,13 +70,12 @@ namespace mRemoteNGTests.IntegrationTests
Assert.That(deserializedConnectionInfo.Description, Is.EqualTo(originalConnectionInfo.Description));
}
[Test]
public void SerializeAndDeserializeWithCustomKdfIterationsValue()
{
var cryptoProvider = _cryptoFactory.Build();
cryptoProvider.KeyDerivationIterations = 5000;
var nodeSerializer = new XmlConnectionNodeSerializer27(
var nodeSerializer = new XmlConnectionNodeSerializer28(
cryptoProvider,
_originalModel.RootNodes.OfType<RootNodeInfo>().First().PasswordString.ConvertToSecureString(),
new SaveFilter());