fix(launcher): harden updater crash recovery
This commit is contained in:
parent
2d2a5b5046
commit
1955ca8ab5
27 changed files with 2714 additions and 544 deletions
|
|
@ -50,6 +50,12 @@ public sealed class SafeZipExtractorTests : IDisposable
|
|||
[InlineData("a/./b")]
|
||||
[InlineData("CON")]
|
||||
[InlineData("aux.txt")]
|
||||
[InlineData("CLOCK$/value")]
|
||||
[InlineData("CONIN$.txt")]
|
||||
[InlineData("CONOUT$/value")]
|
||||
[InlineData("COM¹.dll")]
|
||||
[InlineData("com²/value")]
|
||||
[InlineData("LPT³.log")]
|
||||
[InlineData("trailing.")]
|
||||
[InlineData("trailing ")]
|
||||
public async Task RejectsTraversalRootedAdsAndPortableUnsafeNames(string entry)
|
||||
|
|
@ -66,6 +72,15 @@ public sealed class SafeZipExtractorTests : IDisposable
|
|||
Assert.False(File.Exists(Path.Combine(_root, "escape")));
|
||||
}
|
||||
|
||||
[Theory]
|
||||
[InlineData("CONIN$.txt")]
|
||||
[InlineData("CONOUT$/child")]
|
||||
[InlineData("COM¹.dll")]
|
||||
[InlineData("LPT³/child")]
|
||||
[InlineData("CLOCK$")]
|
||||
public void VersionMetadataUsesTheSameCompletePortableDeviceRules(string path) =>
|
||||
Assert.False(ClientVersionStore.IsNormalizedRelative(path));
|
||||
|
||||
[Fact]
|
||||
public async Task RejectsDuplicateCaseAndFileDirectoryCollisionsBeforeExtraction()
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue