From fcca002ecd51ad32ef5c9c85b217acb9888cbf5c Mon Sep 17 00:00:00 2001 From: Rob Mensching Date: Thu, 29 Apr 2021 15:14:20 -0700 Subject: [PATCH] Remove deprecated attributes and move to standardized version --- .../AssemblyInfo.cs | 18 ----------- .../CabException.cs | 2 -- .../CabFileInfo.cs | 2 -- .../CabPacker.cs | 4 --- .../CabUnpacker.cs | 10 ------ .../NativeMethods.cs | 2 -- .../AssemblyInfo.cs | 16 ---------- .../ZipException.cs | 2 -- .../ZipFileInfo.cs | 2 -- .../ArchiveFileInfo.cs | 2 -- src/WixToolset.Dtf.Compression/ArchiveInfo.cs | 1 - .../AssemblyInfo.cs | 15 --------- src/WixToolset.Dtf.Resources/AssemblyInfo.cs | 16 ---------- src/WixToolset.Dtf.Resources/Resource.cs | 13 -------- .../ResourceCollection.cs | 31 ------------------- .../AssemblyInfo.cs | 8 ----- .../AssemblyInfo.cs | 8 ----- .../Exceptions.cs | 3 -- .../NativeMethods.cs | 2 -- version.json | 2 +- 20 files changed, 1 insertion(+), 158 deletions(-) delete mode 100644 src/WixToolset.Dtf.Compression/AssemblyInfo.cs delete mode 100644 src/WixToolset.Dtf.WindowsInstaller.Package/AssemblyInfo.cs delete mode 100644 src/WixToolset.Dtf.WindowsInstaller/AssemblyInfo.cs diff --git a/src/WixToolset.Dtf.Compression.Cab/AssemblyInfo.cs b/src/WixToolset.Dtf.Compression.Cab/AssemblyInfo.cs index de0e8a6..aea5bf2 100644 --- a/src/WixToolset.Dtf.Compression.Cab/AssemblyInfo.cs +++ b/src/WixToolset.Dtf.Compression.Cab/AssemblyInfo.cs @@ -2,22 +2,4 @@ using System.Diagnostics.CodeAnalysis; -#if NET20 -using System.Security; -using System.Security.Permissions; - -// SECURITY: The UnmanagedCode assertions in the cabinet classes are safe, because the -// assertions are not propagated through calls to the provided callbacks. So there -// is no way that a partially-trusted malicious client could trick a trusted cabinet -// class into executing its own unmanaged code. -[assembly: SecurityPermission(SecurityAction.RequestMinimum, Assertion=true, UnmanagedCode=true)] - -// SECURITY: Review carefully! -// This assembly is designed so that partially trusted callers should be able to -// do cabinet compression and extraction in a file path where they have limited -// file I/O permission. Or they can even do in-memory compression and extraction -// with absolutely no file I/O permission. -[assembly: AllowPartiallyTrustedCallers] -#endif - [assembly: SuppressMessage("Microsoft.Design", "CA1020:AvoidNamespacesWithFewTypes", Scope = "namespace", Target = "WixToolset.Dtf.Compression.Cab")] diff --git a/src/WixToolset.Dtf.Compression.Cab/CabException.cs b/src/WixToolset.Dtf.Compression.Cab/CabException.cs index e93e92d..e03f9f3 100644 --- a/src/WixToolset.Dtf.Compression.Cab/CabException.cs +++ b/src/WixToolset.Dtf.Compression.Cab/CabException.cs @@ -6,7 +6,6 @@ namespace WixToolset.Dtf.Compression.Cab using System.IO; using System.Resources; using System.Globalization; - using System.Security.Permissions; using System.Runtime.Serialization; /// @@ -114,7 +113,6 @@ namespace WixToolset.Dtf.Compression.Cab /// /// The SerializationInfo that holds the serialized object data about the exception being thrown. /// The StreamingContext that contains contextual information about the source or destination. - [SecurityPermission(SecurityAction.Demand, SerializationFormatter=true)] public override void GetObjectData(SerializationInfo info, StreamingContext context) { if (info == null) diff --git a/src/WixToolset.Dtf.Compression.Cab/CabFileInfo.cs b/src/WixToolset.Dtf.Compression.Cab/CabFileInfo.cs index 7271bf6..ad4a813 100644 --- a/src/WixToolset.Dtf.Compression.Cab/CabFileInfo.cs +++ b/src/WixToolset.Dtf.Compression.Cab/CabFileInfo.cs @@ -5,7 +5,6 @@ namespace WixToolset.Dtf.Compression.Cab using System; using System.IO; using System.Runtime.Serialization; - using System.Security.Permissions; /// /// Object representing a compressed file within a cabinet package; provides operations for getting @@ -72,7 +71,6 @@ namespace WixToolset.Dtf.Compression.Cab /// The SerializationInfo that holds the serialized object data. /// The StreamingContext that contains contextual information /// about the source or destination. - [SecurityPermission(SecurityAction.Demand, SerializationFormatter = true)] public override void GetObjectData(SerializationInfo info, StreamingContext context) { base.GetObjectData(info, context); diff --git a/src/WixToolset.Dtf.Compression.Cab/CabPacker.cs b/src/WixToolset.Dtf.Compression.Cab/CabPacker.cs index ca0c75b..ec6e3bd 100644 --- a/src/WixToolset.Dtf.Compression.Cab/CabPacker.cs +++ b/src/WixToolset.Dtf.Compression.Cab/CabPacker.cs @@ -5,7 +5,6 @@ namespace WixToolset.Dtf.Compression.Cab using System; using System.IO; using System.Text; - using System.Security.Permissions; using System.Collections.Generic; using System.Globalization; using System.Runtime.InteropServices; @@ -147,9 +146,6 @@ namespace WixToolset.Dtf.Compression.Cab this.CheckError(false); } - [SuppressMessage("Microsoft.Security", "CA2106:SecureAsserts")] - [SuppressMessage("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")] - [SecurityPermission(SecurityAction.Assert, UnmanagedCode = true)] public void Pack( IPackStreamContext streamContext, IEnumerable files, diff --git a/src/WixToolset.Dtf.Compression.Cab/CabUnpacker.cs b/src/WixToolset.Dtf.Compression.Cab/CabUnpacker.cs index eef2607..b0be4a1 100644 --- a/src/WixToolset.Dtf.Compression.Cab/CabUnpacker.cs +++ b/src/WixToolset.Dtf.Compression.Cab/CabUnpacker.cs @@ -5,7 +5,6 @@ namespace WixToolset.Dtf.Compression.Cab using System; using System.IO; using System.Text; - using System.Security.Permissions; using System.Collections.Generic; using System.Globalization; using System.Runtime.InteropServices; @@ -33,9 +32,6 @@ namespace WixToolset.Dtf.Compression.Cab private Predicate filter; - [SuppressMessage("Microsoft.Security", "CA2106:SecureAsserts")] - [SuppressMessage("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")] - [SecurityPermission(SecurityAction.Assert, UnmanagedCode = true)] public CabUnpacker(CabEngine cabEngine) : base(cabEngine) { @@ -69,8 +65,6 @@ namespace WixToolset.Dtf.Compression.Cab } } - [SuppressMessage("Microsoft.Security", "CA2106:SecureAsserts")] - [SecurityPermission(SecurityAction.Assert, UnmanagedCode = true)] public bool IsArchive(Stream stream) { if (stream == null) @@ -86,8 +80,6 @@ namespace WixToolset.Dtf.Compression.Cab } } - [SuppressMessage("Microsoft.Security", "CA2106:SecureAsserts")] - [SecurityPermission(SecurityAction.Assert, UnmanagedCode = true)] public IList GetFileInfo( IUnpackStreamContext streamContext, Predicate fileFilter) @@ -147,8 +139,6 @@ namespace WixToolset.Dtf.Compression.Cab } } - [SuppressMessage("Microsoft.Security", "CA2106:SecureAsserts")] - [SecurityPermission(SecurityAction.Assert, UnmanagedCode = true)] public void Unpack( IUnpackStreamContext streamContext, Predicate fileFilter) diff --git a/src/WixToolset.Dtf.Compression.Cab/NativeMethods.cs b/src/WixToolset.Dtf.Compression.Cab/NativeMethods.cs index e96e2b2..562e96d 100644 --- a/src/WixToolset.Dtf.Compression.Cab/NativeMethods.cs +++ b/src/WixToolset.Dtf.Compression.Cab/NativeMethods.cs @@ -5,7 +5,6 @@ namespace WixToolset.Dtf.Compression.Cab using System; using System.Text; using System.Security; -using System.Security.Permissions; using System.Runtime.InteropServices; using System.Diagnostics.CodeAnalysis; @@ -170,7 +169,6 @@ internal static class NativeMethods /// Releases the handle by calling FDIDestroy(). /// /// True if the release succeeded. - [SecurityPermission(SecurityAction.Assert, UnmanagedCode = true)] protected override bool ReleaseHandle() { return FCI.Destroy(this.handle); diff --git a/src/WixToolset.Dtf.Compression.Zip/AssemblyInfo.cs b/src/WixToolset.Dtf.Compression.Zip/AssemblyInfo.cs index 7d3e800..f782bbb 100644 --- a/src/WixToolset.Dtf.Compression.Zip/AssemblyInfo.cs +++ b/src/WixToolset.Dtf.Compression.Zip/AssemblyInfo.cs @@ -2,20 +2,4 @@ using System.Diagnostics.CodeAnalysis; -#if NET20 -using System.Security; -using System.Security.Permissions; - -// SECURITY: The UnmanagedCode assertions in the zip classes are safe, because -// only some very limited date-time unmanaged APIs are called. -[assembly: SecurityPermission(SecurityAction.RequestMinimum, Assertion = true, UnmanagedCode = true)] - -// SECURITY: Review carefully! -// This assembly is designed so that partially trusted callers should be able to -// do zip compression and extraction in a file path where they have limited -// file I/O permission. Or they can even do in-memory compression and extraction -// with absolutely no file I/O permission. -[assembly: AllowPartiallyTrustedCallers] -#endif - [assembly: SuppressMessage("Microsoft.Design", "CA1020:AvoidNamespacesWithFewTypes", Scope = "namespace", Target = "WixToolset.Dtf.Compression.Zip")] diff --git a/src/WixToolset.Dtf.Compression.Zip/ZipException.cs b/src/WixToolset.Dtf.Compression.Zip/ZipException.cs index 9fa569e..50fd615 100644 --- a/src/WixToolset.Dtf.Compression.Zip/ZipException.cs +++ b/src/WixToolset.Dtf.Compression.Zip/ZipException.cs @@ -6,7 +6,6 @@ namespace WixToolset.Dtf.Compression.Zip using System.IO; using System.Resources; using System.Globalization; - using System.Security.Permissions; using System.Runtime.Serialization; /// @@ -53,7 +52,6 @@ namespace WixToolset.Dtf.Compression.Zip /// /// The SerializationInfo that holds the serialized object data about the exception being thrown. /// The StreamingContext that contains contextual information about the source or destination. - [SecurityPermission(SecurityAction.Demand, SerializationFormatter=true)] public override void GetObjectData(SerializationInfo info, StreamingContext context) { base.GetObjectData(info, context); diff --git a/src/WixToolset.Dtf.Compression.Zip/ZipFileInfo.cs b/src/WixToolset.Dtf.Compression.Zip/ZipFileInfo.cs index 07064c7..d865bbb 100644 --- a/src/WixToolset.Dtf.Compression.Zip/ZipFileInfo.cs +++ b/src/WixToolset.Dtf.Compression.Zip/ZipFileInfo.cs @@ -5,7 +5,6 @@ namespace WixToolset.Dtf.Compression.Zip using System; using System.IO; using System.Runtime.Serialization; - using System.Security.Permissions; /// /// Object representing a compressed file within a zip package; provides operations for getting @@ -96,7 +95,6 @@ namespace WixToolset.Dtf.Compression.Zip /// The SerializationInfo that holds the serialized object data. /// The StreamingContext that contains contextual information /// about the source or destination. - [SecurityPermission(SecurityAction.Demand, SerializationFormatter = true)] public override void GetObjectData(SerializationInfo info, StreamingContext context) { base.GetObjectData(info, context); diff --git a/src/WixToolset.Dtf.Compression/ArchiveFileInfo.cs b/src/WixToolset.Dtf.Compression/ArchiveFileInfo.cs index 2b78c30..adcae3e 100644 --- a/src/WixToolset.Dtf.Compression/ArchiveFileInfo.cs +++ b/src/WixToolset.Dtf.Compression/ArchiveFileInfo.cs @@ -4,7 +4,6 @@ namespace WixToolset.Dtf.Compression { using System; using System.IO; - using System.Security.Permissions; using System.Runtime.Serialization; using System.Diagnostics.CodeAnalysis; @@ -281,7 +280,6 @@ namespace WixToolset.Dtf.Compression /// object data. /// The StreamingContext that contains contextual /// information about the source or destination. - [SecurityPermission(SecurityAction.Demand, SerializationFormatter = true)] public override void GetObjectData( SerializationInfo info, StreamingContext context) { diff --git a/src/WixToolset.Dtf.Compression/ArchiveInfo.cs b/src/WixToolset.Dtf.Compression/ArchiveInfo.cs index efdbab4..b5da4ea 100644 --- a/src/WixToolset.Dtf.Compression/ArchiveInfo.cs +++ b/src/WixToolset.Dtf.Compression/ArchiveInfo.cs @@ -8,7 +8,6 @@ namespace WixToolset.Dtf.Compression using System.Globalization; using System.Text; using System.Text.RegularExpressions; - using System.Security.Permissions; using System.Runtime.Serialization; using System.Diagnostics.CodeAnalysis; diff --git a/src/WixToolset.Dtf.Compression/AssemblyInfo.cs b/src/WixToolset.Dtf.Compression/AssemblyInfo.cs deleted file mode 100644 index ff84f29..0000000 --- a/src/WixToolset.Dtf.Compression/AssemblyInfo.cs +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. - -#if NET20 -using System.Security; -using System.Security.Permissions; - -[assembly: SecurityPermission(SecurityAction.RequestMinimum, Unrestricted = true)] - -// SECURITY: Review carefully! -// This assembly is designed so that partially trusted callers should be able to -// do compression and extraction in a file path where they have limited -// file I/O permission. Or they can even do in-memory compression and extraction -// with absolutely no file I/O permission. -[assembly: AllowPartiallyTrustedCallers] -#endif diff --git a/src/WixToolset.Dtf.Resources/AssemblyInfo.cs b/src/WixToolset.Dtf.Resources/AssemblyInfo.cs index b8b6416..77f33f9 100644 --- a/src/WixToolset.Dtf.Resources/AssemblyInfo.cs +++ b/src/WixToolset.Dtf.Resources/AssemblyInfo.cs @@ -2,20 +2,4 @@ using System.Diagnostics.CodeAnalysis; -#if NET20 -using System.Security; -using System.Security.Permissions; - -// SECURITY: The UnmanagedCode assertions in the resource classes are safe, because -// appropriate demands are made for file I/O permissions before reading/writing files. -[assembly: SecurityPermission(SecurityAction.RequestMinimum, Assertion = true, UnmanagedCode = true)] - -// SECURITY: Review carefully! -// This assembly is designed so that partially trusted callers should be able to -// read and write file version info in a path where they have limited -// file I/O permission. -[assembly: AllowPartiallyTrustedCallers] -#endif - - [assembly: SuppressMessage("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes", Scope = "member", Target = "WixToolset.Dtf.Resources.ResourceCollection.#System.Collections.Generic.ICollection`1.IsReadOnly")] diff --git a/src/WixToolset.Dtf.Resources/Resource.cs b/src/WixToolset.Dtf.Resources/Resource.cs index 5d401c3..23b4621 100644 --- a/src/WixToolset.Dtf.Resources/Resource.cs +++ b/src/WixToolset.Dtf.Resources/Resource.cs @@ -5,7 +5,6 @@ namespace WixToolset.Dtf.Resources using System; using System.IO; using System.Text; - using System.Security.Permissions; using System.Reflection; using System.Collections; using System.Globalization; @@ -107,14 +106,8 @@ namespace WixToolset.Dtf.Resources /// Loads the resource data from a file. The file is searched for a resource with matching type, name, and locale. /// /// Win32 PE file containing the resource - [SuppressMessage("Microsoft.Security", "CA2103:ReviewImperativeSecurity")] - [SecurityPermission(SecurityAction.Assert, UnmanagedCode = true)] public void Load(string file) { -#if NET20 - new FileIOPermission(FileIOPermissionAccess.Read, file).Demand(); -#endif - IntPtr module = NativeMethods.LoadLibraryEx(file, IntPtr.Zero, NativeMethods.LOAD_LIBRARY_AS_DATAFILE); try { @@ -148,14 +141,8 @@ namespace WixToolset.Dtf.Resources /// Saves the resource to a file. Any existing resource data with matching type, name, and locale is overwritten. /// /// Win32 PE file to contain the resource - [SuppressMessage("Microsoft.Security", "CA2103:ReviewImperativeSecurity")] - [SecurityPermission(SecurityAction.Assert, UnmanagedCode = true)] public void Save(string file) { -#if NET20 - new FileIOPermission(FileIOPermissionAccess.AllAccess, file).Demand(); -#endif - IntPtr updateHandle = IntPtr.Zero; try { diff --git a/src/WixToolset.Dtf.Resources/ResourceCollection.cs b/src/WixToolset.Dtf.Resources/ResourceCollection.cs index 605f971..5d9e565 100644 --- a/src/WixToolset.Dtf.Resources/ResourceCollection.cs +++ b/src/WixToolset.Dtf.Resources/ResourceCollection.cs @@ -5,7 +5,6 @@ namespace WixToolset.Dtf.Resources using System; using System.IO; using System.Text; - using System.Security.Permissions; using System.Reflection; using System.Collections; using System.Collections.Generic; @@ -45,14 +44,8 @@ namespace WixToolset.Dtf.Resources /// /// The file to be searched for resources. /// resources could not be read from the file - [SuppressMessage("Microsoft.Security", "CA2103:ReviewImperativeSecurity")] - [SecurityPermission(SecurityAction.Assert, UnmanagedCode = true)] public void Find(string resFile) { -#if NET20 - new FileIOPermission(FileIOPermissionAccess.Read, resFile).Demand(); -#endif - this.Clear(); IntPtr module = NativeMethods.LoadLibraryEx(resFile, IntPtr.Zero, NativeMethods.LOAD_LIBRARY_AS_DATAFILE); @@ -82,14 +75,8 @@ namespace WixToolset.Dtf.Resources /// The file to be searched for resources. /// The type of resource to search for; may be one of the ResourceType constants or a user-defined type. /// resources could not be read from the file - [SuppressMessage("Microsoft.Security", "CA2103:ReviewImperativeSecurity")] - [SecurityPermission(SecurityAction.Assert, UnmanagedCode = true)] public void Find(string resFile, ResourceType type) { -#if NET20 - new FileIOPermission(FileIOPermissionAccess.Read, resFile).Demand(); -#endif - this.Clear(); IntPtr module = NativeMethods.LoadLibraryEx(resFile, IntPtr.Zero, NativeMethods.LOAD_LIBRARY_AS_DATAFILE); @@ -115,14 +102,8 @@ namespace WixToolset.Dtf.Resources /// The type of resource to search for; may be one of the ResourceType constants or a user-defined type. /// The name of the resource to search for. /// resources could not be read from the file - [SuppressMessage("Microsoft.Security", "CA2103:ReviewImperativeSecurity")] - [SecurityPermission(SecurityAction.Assert, UnmanagedCode = true)] public void Find(string resFile, ResourceType type, string name) { -#if NET20 - new FileIOPermission(FileIOPermissionAccess.Read, resFile).Demand(); -#endif - this.Clear(); IntPtr module = NativeMethods.LoadLibraryEx(resFile, IntPtr.Zero, NativeMethods.LOAD_LIBRARY_AS_DATAFILE); @@ -196,14 +177,8 @@ namespace WixToolset.Dtf.Resources /// For all resources in the collection, loads their data from a resource file. /// /// The file from which resources are loaded. - [SuppressMessage("Microsoft.Security", "CA2103:ReviewImperativeSecurity")] - [SecurityPermission(SecurityAction.Assert, UnmanagedCode = true)] public void Load(string file) { -#if NET20 - new FileIOPermission(FileIOPermissionAccess.Read, file).Demand(); -#endif - IntPtr module = NativeMethods.LoadLibraryEx(file, IntPtr.Zero, NativeMethods.LOAD_LIBRARY_AS_DATAFILE); try { @@ -222,14 +197,8 @@ namespace WixToolset.Dtf.Resources /// For all resources in the collection, saves their data to a resource file. /// /// The file to which resources are saved. - [SuppressMessage("Microsoft.Security", "CA2103:ReviewImperativeSecurity")] - [SecurityPermission(SecurityAction.Assert, UnmanagedCode = true)] public void Save(string file) { -#if NET20 - new FileIOPermission(FileIOPermissionAccess.AllAccess, file).Demand(); -#endif - IntPtr updateHandle = IntPtr.Zero; try { diff --git a/src/WixToolset.Dtf.WindowsInstaller.Package/AssemblyInfo.cs b/src/WixToolset.Dtf.WindowsInstaller.Package/AssemblyInfo.cs deleted file mode 100644 index 46f6bcb..0000000 --- a/src/WixToolset.Dtf.WindowsInstaller.Package/AssemblyInfo.cs +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. - -#if NET20 -using System.Security; -using System.Security.Permissions; - -[assembly: SecurityPermission(SecurityAction.RequestMinimum, UnmanagedCode=true)] -#endif diff --git a/src/WixToolset.Dtf.WindowsInstaller/AssemblyInfo.cs b/src/WixToolset.Dtf.WindowsInstaller/AssemblyInfo.cs deleted file mode 100644 index 0291411..0000000 --- a/src/WixToolset.Dtf.WindowsInstaller/AssemblyInfo.cs +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. - -#if NET20 -using System.Security; -using System.Security.Permissions; - -[assembly: SecurityPermission(SecurityAction.RequestMinimum, UnmanagedCode = true)] -#endif diff --git a/src/WixToolset.Dtf.WindowsInstaller/Exceptions.cs b/src/WixToolset.Dtf.WindowsInstaller/Exceptions.cs index 1f5e017..4954cda 100644 --- a/src/WixToolset.Dtf.WindowsInstaller/Exceptions.cs +++ b/src/WixToolset.Dtf.WindowsInstaller/Exceptions.cs @@ -7,7 +7,6 @@ namespace WixToolset.Dtf.WindowsInstaller using System.Text; using System.Collections.Generic; using System.Globalization; - using System.Security.Permissions; using System.Runtime.Serialization; using System.Diagnostics.CodeAnalysis; @@ -114,7 +113,6 @@ namespace WixToolset.Dtf.WindowsInstaller /// /// The SerializationInfo that holds the serialized object data about the exception being thrown. /// The StreamingContext that contains contextual information about the source or destination. - [SecurityPermission(SecurityAction.Demand, SerializationFormatter=true)] public override void GetObjectData(SerializationInfo info, StreamingContext context) { if (info == null) @@ -560,7 +558,6 @@ namespace WixToolset.Dtf.WindowsInstaller /// /// The SerializationInfo that holds the serialized object data about the exception being thrown. /// The StreamingContext that contains contextual information about the source or destination. - [SecurityPermission(SecurityAction.Demand, SerializationFormatter=true)] public override void GetObjectData(SerializationInfo info, StreamingContext context) { if (info == null) diff --git a/src/WixToolset.Dtf.WindowsInstaller/NativeMethods.cs b/src/WixToolset.Dtf.WindowsInstaller/NativeMethods.cs index 6c5b84f..a438b64 100644 --- a/src/WixToolset.Dtf.WindowsInstaller/NativeMethods.cs +++ b/src/WixToolset.Dtf.WindowsInstaller/NativeMethods.cs @@ -4,7 +4,6 @@ namespace WixToolset.Dtf.WindowsInstaller { using System; using System.Text; -using System.Security.Permissions; using System.Runtime.InteropServices; using System.Diagnostics.CodeAnalysis; @@ -301,7 +300,6 @@ internal static class NativeMethods return msiHandle.handle; } - [SecurityPermission(SecurityAction.Assert, UnmanagedCode = true)] protected override bool ReleaseHandle() { return RemotableNativeMethods.MsiCloseHandle((int) this.handle) == 0; diff --git a/version.json b/version.json index 5f85777..2d200f9 100644 --- a/version.json +++ b/version.json @@ -1,5 +1,5 @@ { - "version": "4.0", + "version": "4.0.0-preview.0-build.{height}", "publicReleaseRefSpec": [ "^refs/heads/master$" ],