From 126dffdfeb5792b4fc01f8e18731c35eae10fe5c Mon Sep 17 00:00:00 2001 From: dahall Date: Thu, 7 Oct 2021 10:29:48 -0600 Subject: [PATCH] Added MANDATORY_LEVEL enum. --- PInvoke/Security/AdvApi32/WinNT.cs | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/PInvoke/Security/AdvApi32/WinNT.cs b/PInvoke/Security/AdvApi32/WinNT.cs index 70eca830..a3c46392 100644 --- a/PInvoke/Security/AdvApi32/WinNT.cs +++ b/PInvoke/Security/AdvApi32/WinNT.cs @@ -302,6 +302,37 @@ namespace Vanara.PInvoke SECURITY_CAPABILITY_REMOVABLE_STORAGE = 0x0000000A, } + /// The MANDATORY_LEVEL enumeration lists the possible security levels. + /// These values have been adjusted to equal the RID values of the mandatory SID label. + /// + // https://docs.microsoft.com/en-us/windows/win32/api/winnt/ne-winnt-mandatory_level typedef enum _MANDATORY_LEVEL { + // MandatoryLevelUntrusted, MandatoryLevelLow, MandatoryLevelMedium, MandatoryLevelHigh, MandatoryLevelSystem, + // MandatoryLevelSecureProcess, MandatoryLevelCount } MANDATORY_LEVEL, *PMANDATORY_LEVEL; + [PInvokeData("winnt.h", MSDNShortId = "NE:winnt._MANDATORY_LEVEL")] + public enum MANDATORY_LEVEL : uint + { + /// Untrusted + MandatoryLevelUntrusted = 0, + + /// Low + MandatoryLevelLow = 0x1000, + + /// Medium + MandatoryLevelMedium = 0x2000, + + /// Medium High + MandatoryLevelMediumHigh = MandatoryLevelMedium + 0x100, + + /// High + MandatoryLevelHigh = 0x3000, + + /// System + MandatoryLevelSystem = 0x4000, + + /// Secure process + MandatoryLevelSecureProcess = 0x5000, + } + /// /// A set of bit flags that indicate whether the ObjectType and InheritedObjectType members are present in an object ACE. ///