summaryrefslogtreecommitdiff
path: root/src/mscorlib/src/System/CLRConfig.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/mscorlib/src/System/CLRConfig.cs')
-rw-r--r--src/mscorlib/src/System/CLRConfig.cs36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/mscorlib/src/System/CLRConfig.cs b/src/mscorlib/src/System/CLRConfig.cs
new file mode 100644
index 0000000000..0831c4bb65
--- /dev/null
+++ b/src/mscorlib/src/System/CLRConfig.cs
@@ -0,0 +1,36 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// See the LICENSE file in the project root for more information.
+
+using System.Runtime.CompilerServices;
+using System.Runtime.Versioning;
+using System.Runtime.InteropServices;
+using System.Security;
+
+namespace System {
+
+/// <summary>
+/// For now, this class should be the central point to collect all managed declarations
+/// of native functions designed to expose config switches.
+/// In Dev11 M2.2 we will redesign this class to expose CLRConfig from within the CLR
+/// and refactor managed Fx code to access all compat switches through here.
+/// </summary>
+[FriendAccessAllowed]
+internal class CLRConfig {
+
+ [FriendAccessAllowed]
+ [System.Security.SecurityCritical]
+ [MethodImplAttribute(MethodImplOptions.InternalCall)]
+ [SuppressUnmanagedCodeSecurity]
+ internal static extern bool CheckLegacyManagedDeflateStream();
+
+ [System.Security.SecurityCritical]
+ [MethodImplAttribute(MethodImplOptions.InternalCall)]
+ [SuppressUnmanagedCodeSecurity]
+ internal static extern bool CheckThrowUnobservedTaskExceptions();
+
+} // internal class CLRConfig
+
+} // namespace System
+
+// file CLRConfig