diff --git a/src/Microsoft.PackageManagement/providers/inbox/Common/Utility/PathUtility.cs b/src/Microsoft.PackageManagement/providers/inbox/Common/Utility/PathUtility.cs index 6f4d357ca3..ad4ed28d59 100644 --- a/src/Microsoft.PackageManagement/providers/inbox/Common/Utility/PathUtility.cs +++ b/src/Microsoft.PackageManagement/providers/inbox/Common/Utility/PathUtility.cs @@ -192,7 +192,7 @@ namespace Microsoft.PackageManagement.Provider.Utility #if !CORECLR Marshal.ZeroFreeGlobalAllocUnicode(value); #else - SecureStringMarshal.ZeroFreeCoTaskMemUnicode(value); + Marshal.ZeroFreeCoTaskMemUnicode(value); #endif } } @@ -250,4 +250,4 @@ namespace Microsoft.PackageManagement.Provider.Utility } } -} \ No newline at end of file +} diff --git a/src/Microsoft.PowerShell.Commands.Management/cimSupport/cmdletization/cim/cimConverter.cs b/src/Microsoft.PowerShell.Commands.Management/cimSupport/cmdletization/cim/cimConverter.cs index 41d28ddbb1..98f35b7041 100644 --- a/src/Microsoft.PowerShell.Commands.Management/cimSupport/cmdletization/cim/cimConverter.cs +++ b/src/Microsoft.PowerShell.Commands.Management/cimSupport/cmdletization/cim/cimConverter.cs @@ -96,7 +96,7 @@ namespace Microsoft.PowerShell.Cim } finally { - ClrFacade.ZeroFreeCoTaskMemUnicode(plainTextString); + Marshal.ZeroFreeCoTaskMemUnicode(plainTextString); } } diff --git a/src/Microsoft.PowerShell.Commands.Management/commands/management/Process.cs b/src/Microsoft.PowerShell.Commands.Management/commands/management/Process.cs index 6efe7c1180..073c1e5fe5 100644 --- a/src/Microsoft.PowerShell.Commands.Management/commands/management/Process.cs +++ b/src/Microsoft.PowerShell.Commands.Management/commands/management/Process.cs @@ -2574,7 +2574,7 @@ namespace Microsoft.PowerShell.Commands { if (password != IntPtr.Zero) { - ClrFacade.ZeroFreeCoTaskMemUnicode(password); + Marshal.ZeroFreeCoTaskMemUnicode(password); } } }//end of if diff --git a/src/Microsoft.PowerShell.Commands.Management/commands/management/Service.cs b/src/Microsoft.PowerShell.Commands.Management/commands/management/Service.cs index c155a5dad0..df78a5849c 100644 --- a/src/Microsoft.PowerShell.Commands.Management/commands/management/Service.cs +++ b/src/Microsoft.PowerShell.Commands.Management/commands/management/Service.cs @@ -2230,7 +2230,7 @@ namespace Microsoft.PowerShell.Commands { if (IntPtr.Zero != password) { - ClrFacade.ZeroFreeCoTaskMemUnicode(password); + Marshal.ZeroFreeCoTaskMemUnicode(password); } if (IntPtr.Zero != hService) diff --git a/src/Microsoft.PowerShell.LocalAccounts/LocalAccounts/Extensions.cs b/src/Microsoft.PowerShell.LocalAccounts/LocalAccounts/Extensions.cs index 2d43f187c8..fdc8c2c82f 100644 --- a/src/Microsoft.PowerShell.LocalAccounts/LocalAccounts/Extensions.cs +++ b/src/Microsoft.PowerShell.LocalAccounts/LocalAccounts/Extensions.cs @@ -160,7 +160,7 @@ namespace System.Management.Automation.SecurityAccountsManager.Extensions #if CORECLR IntPtr buffer = SecureStringMarshal.SecureStringToCoTaskMemUnicode(str); string clear = Marshal.PtrToStringUni(buffer); - SecureStringMarshal.ZeroFreeCoTaskMemUnicode(buffer); + Marshal.ZeroFreeCoTaskMemUnicode(buffer); #else var bstr = Marshal.SecureStringToBSTR(str); string clear = Marshal.PtrToStringAuto(bstr); @@ -200,4 +200,4 @@ namespace System.Management.Automation.SecurityAccountsManager.Extensions return ex.MakeErrorRecord(ex.ErrorName, ex.ErrorCategory, target ?? ex.Target); } } -} \ No newline at end of file +} diff --git a/src/System.Management.Automation/engine/Credential.cs b/src/System.Management.Automation/engine/Credential.cs index 3d15e1cd82..3a6b07a77a 100644 --- a/src/System.Management.Automation/engine/Credential.cs +++ b/src/System.Management.Automation/engine/Credential.cs @@ -9,6 +9,7 @@ using System.Net; using System.Security; using SafeString=System.String; using System.Runtime.Serialization; +using System.Runtime.InteropServices; using System.Security.Cryptography; using Microsoft.PowerShell; @@ -286,7 +287,7 @@ namespace System.Management.Automation { if (unmanagedPtr != IntPtr.Zero) { - ClrFacade.ZeroFreeCoTaskMemUnicode(unmanagedPtr); + Marshal.ZeroFreeCoTaskMemUnicode(unmanagedPtr); } } #else diff --git a/src/System.Management.Automation/engine/Utils.cs b/src/System.Management.Automation/engine/Utils.cs index 8fb7d56631..d9fa665494 100644 --- a/src/System.Management.Automation/engine/Utils.cs +++ b/src/System.Management.Automation/engine/Utils.cs @@ -179,7 +179,7 @@ namespace System.Management.Automation { if (p != IntPtr.Zero) { - ClrFacade.ZeroFreeCoTaskMemUnicode(p); + Marshal.ZeroFreeCoTaskMemUnicode(p); } } diff --git a/src/System.Management.Automation/engine/remoting/fanin/WSManNativeAPI.cs b/src/System.Management.Automation/engine/remoting/fanin/WSManNativeAPI.cs index a11eeb9b5a..0947e2d729 100644 --- a/src/System.Management.Automation/engine/remoting/fanin/WSManNativeAPI.cs +++ b/src/System.Management.Automation/engine/remoting/fanin/WSManNativeAPI.cs @@ -379,7 +379,7 @@ namespace System.Management.Automation.Remoting.Client { if (cred.password != IntPtr.Zero) { - ClrFacade.ZeroFreeCoTaskMemUnicode(cred.password); + Marshal.ZeroFreeCoTaskMemUnicode(cred.password); cred.password = IntPtr.Zero; } diff --git a/src/System.Management.Automation/security/SecureStringHelper.cs b/src/System.Management.Automation/security/SecureStringHelper.cs index 50948e91fb..89f777ce78 100644 --- a/src/System.Management.Automation/security/SecureStringHelper.cs +++ b/src/System.Management.Automation/security/SecureStringHelper.cs @@ -94,7 +94,7 @@ namespace Microsoft.PowerShell } finally { - ClrFacade.ZeroFreeCoTaskMemUnicode(ptr); + Marshal.ZeroFreeCoTaskMemUnicode(ptr); } } diff --git a/src/System.Management.Automation/utils/ClrFacade.cs b/src/System.Management.Automation/utils/ClrFacade.cs index 54f6424ac9..1f340b9ee5 100644 --- a/src/System.Management.Automation/utils/ClrFacade.cs +++ b/src/System.Management.Automation/utils/ClrFacade.cs @@ -148,7 +148,7 @@ namespace System.Management.Automation { if (unmanagedMemory != IntPtr.Zero) { - ZeroFreeCoTaskMemUnicode(unmanagedMemory); + Marshal.ZeroFreeCoTaskMemUnicode(unmanagedMemory); } } return passwordInClearText; @@ -213,19 +213,6 @@ namespace System.Management.Automation #endif } - /// - /// Needed to pair with the SecureStringToCoTaskMemUnicode method which is member of - /// 'SecureStringMarshal' on CORE CLR, and member of 'Marshal' on Full CLR. - /// - internal static void ZeroFreeCoTaskMemUnicode(IntPtr unmanagedStr) - { -#if CORECLR - SecureStringMarshal.ZeroFreeCoTaskMemUnicode(unmanagedStr); -#else - Marshal.ZeroFreeCoTaskMemUnicode(unmanagedStr); -#endif - } - /// /// Facade for SecureStringToCoTaskMemUnicode /// diff --git a/src/System.Management.Automation/utils/CryptoUtils.cs b/src/System.Management.Automation/utils/CryptoUtils.cs index 51fb8edf05..bc794d99b4 100644 --- a/src/System.Management.Automation/utils/CryptoUtils.cs +++ b/src/System.Management.Automation/utils/CryptoUtils.cs @@ -1023,7 +1023,7 @@ namespace System.Management.Automation.Internal { data[i] = Marshal.ReadByte(ptr, i); } - ClrFacade.ZeroFreeCoTaskMemUnicode(ptr); + Marshal.ZeroFreeCoTaskMemUnicode(ptr); try {