using System;
using System.Security.Principal;
namespace System.Security.AccessControl
{
/// Represents the Windows access control security for a named mutex. This class cannot be inherited.
// Token: 0x020004CE RID: 1230
public sealed class MutexSecurity : NativeObjectSecurity
{
/// Initializes a new instance of the class with default values.
/// This class is not supported on Windows 98 or Windows Millennium Edition.
// Token: 0x06002D9C RID: 11676 RVA: 0x00093CB0 File Offset: 0x00091EB0
public MutexSecurity()
{
}
/// Initializes a new instance of the class with the specified sections of the access control security rules from the system mutex with the specified name.
/// The name of the system mutex whose access control security rules are to be retrieved.
/// A combination of flags specifying the sections to retrieve.
/// There is no system object with the specified name.
/// This class is not supported on Windows 98 or Windows Millennium Edition.
// Token: 0x06002D9D RID: 11677 RVA: 0x00093CB8 File Offset: 0x00091EB8
public MutexSecurity(string name, AccessControlSections includeSections)
{
}
/// Gets the enumeration that the class uses to represent access rights.
/// A object representing the enumeration.
// Token: 0x170008FA RID: 2298
// (get) Token: 0x06002D9E RID: 11678 RVA: 0x00093CC0 File Offset: 0x00091EC0
public override Type AccessRightType
{
get
{
return typeof(MutexRights);
}
}
/// Gets the type that the class uses to represent access rules.
/// A object representing the class.
// Token: 0x170008FB RID: 2299
// (get) Token: 0x06002D9F RID: 11679 RVA: 0x00093CCC File Offset: 0x00091ECC
public override Type AccessRuleType
{
get
{
return typeof(MutexAccessRule);
}
}
/// Gets the type that the class uses to represent audit rules.
/// A object representing the class.
// Token: 0x170008FC RID: 2300
// (get) Token: 0x06002DA0 RID: 11680 RVA: 0x00093CD8 File Offset: 0x00091ED8
public override Type AuditRuleType
{
get
{
return typeof(MutexAuditRule);
}
}
/// Creates a new access control rule for the specified user, with the specified access rights, access control, and flags.
/// A object representing the specified rights for the specified user.
/// An that identifies the user or group the rule applies to.
/// A bitwise combination of values specifying the access rights to allow or deny, cast to an integer.
/// Meaningless for named mutexes, because they have no hierarchy.
/// Meaningless for named mutexes, because they have no hierarchy.
/// Meaningless for named mutexes, because they have no hierarchy.
/// One of the values specifying whether the rights are allowed or denied.
///
/// , , , or specifies an invalid value.
///
/// is null. -or- is zero.
///
/// is neither of type , nor of a type such as that can be converted to type .
// Token: 0x06002DA1 RID: 11681 RVA: 0x00093CE4 File Offset: 0x00091EE4
public override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type)
{
return new MutexAccessRule(identityReference, (MutexRights)accessMask, type);
}
/// Searches for a matching access control rule with which the new rule can be merged. If none are found, adds the new rule.
/// The access control rule to add.
///
/// is null.
///
/// cannot be mapped to a known identity.
// Token: 0x06002DA2 RID: 11682 RVA: 0x00093CF0 File Offset: 0x00091EF0
[MonoTODO]
public void AddAccessRule(MutexAccessRule rule)
{
throw new NotImplementedException();
}
/// Searches for an access control rule with the same user and (allow or deny) as the specified rule, and with compatible inheritance and propagation flags; if such a rule is found, the rights contained in the specified access rule are removed from it.
/// true if a compatible rule is found; otherwise false.
/// A that specifies the user and to search for, and a set of inheritance and propagation flags that a matching rule, if found, must be compatible with. Specifies the rights to remove from the compatible rule, if found.
///
/// is null.
// Token: 0x06002DA3 RID: 11683 RVA: 0x00093CF8 File Offset: 0x00091EF8
[MonoTODO]
public bool RemoveAccessRule(MutexAccessRule rule)
{
throw new NotImplementedException();
}
/// Searches for all access control rules with the same user and (allow or deny) as the specified rule and, if found, removes them.
/// A that specifies the user and to search for. Any rights specified by this rule are ignored.
///
/// is null.
// Token: 0x06002DA4 RID: 11684 RVA: 0x00093D00 File Offset: 0x00091F00
[MonoTODO]
public void RemoveAccessRuleAll(MutexAccessRule rule)
{
throw new NotImplementedException();
}
/// Searches for an access control rule that exactly matches the specified rule and, if found, removes it.
/// The to remove.
///
/// is null.
// Token: 0x06002DA5 RID: 11685 RVA: 0x00093D08 File Offset: 0x00091F08
[MonoTODO]
public void RemoveAccessRuleSpecific(MutexAccessRule rule)
{
throw new NotImplementedException();
}
/// Removes all access control rules with the same user as the specified rule, regardless of , and then adds the specified rule.
/// The to add. The user specified by this rule determines the rules to remove before this rule is added.
///
/// is null.
// Token: 0x06002DA6 RID: 11686 RVA: 0x00093D10 File Offset: 0x00091F10
[MonoTODO]
public void ResetAccessRule(MutexAccessRule rule)
{
throw new NotImplementedException();
}
/// Removes all access control rules with the same user and (allow or deny) as the specified rule, and then adds the specified rule.
/// The to add. The user and of this rule determine the rules to remove before this rule is added.
///
/// is null.
// Token: 0x06002DA7 RID: 11687 RVA: 0x00093D18 File Offset: 0x00091F18
[MonoTODO]
public void SetAccessRule(MutexAccessRule rule)
{
throw new NotImplementedException();
}
/// Creates a new audit rule, specifying the user the rule applies to, the access rights to audit, and the outcome that triggers the audit rule.
/// A object representing the specified audit rule for the specified user. The return type of the method is the base class, , but the return value can be cast safely to the derived class.
/// An that identifies the user or group the rule applies to.
/// A bitwise combination of values specifying the access rights to audit, cast to an integer.
/// Meaningless for named wait handles, because they have no hierarchy.
/// Meaningless for named wait handles, because they have no hierarchy.
/// Meaningless for named wait handles, because they have no hierarchy.
/// A bitwise combination of values that specify whether to audit successful access, failed access, or both.
///
/// , , , or specifies an invalid value.
///
/// is null. -or- is zero.
///
/// is neither of type , nor of a type such as that can be converted to type .
// Token: 0x06002DA8 RID: 11688 RVA: 0x00093D20 File Offset: 0x00091F20
public override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags)
{
return new MutexAuditRule(identityReference, (MutexRights)accessMask, flags);
}
/// Searches for an audit rule with which the new rule can be merged. If none are found, adds the new rule.
/// The audit rule to add. The user specified by this rule determines the search.
// Token: 0x06002DA9 RID: 11689 RVA: 0x00093D2C File Offset: 0x00091F2C
[MonoTODO]
public void AddAuditRule(MutexAuditRule rule)
{
throw new NotImplementedException();
}
/// Searches for an audit control rule with the same user as the specified rule, and with compatible inheritance and propagation flags; if a compatible rule is found, the rights contained in the specified rule are removed from it.
/// true if a compatible rule is found; otherwise, false.
/// A that specifies the user to search for, and a set of inheritance and propagation flags that a matching rule, if found, must be compatible with. Specifies the rights to remove from the compatible rule, if found.
///
/// is null.
// Token: 0x06002DAA RID: 11690 RVA: 0x00093D34 File Offset: 0x00091F34
[MonoTODO]
public bool RemoveAuditRule(MutexAuditRule rule)
{
throw new NotImplementedException();
}
/// Searches for all audit rules with the same user as the specified rule and, if found, removes them.
/// A that specifies the user to search for. Any rights specified by this rule are ignored.
///
/// is null.
// Token: 0x06002DAB RID: 11691 RVA: 0x00093D3C File Offset: 0x00091F3C
[MonoTODO]
public void RemoveAuditRuleAll(MutexAuditRule rule)
{
throw new NotImplementedException();
}
/// Searches for an audit rule that exactly matches the specified rule and, if found, removes it.
/// The to be removed.
///
/// is null.
// Token: 0x06002DAC RID: 11692 RVA: 0x00093D44 File Offset: 0x00091F44
[MonoTODO]
public void RemoveAuditRuleSpecific(MutexAuditRule rule)
{
throw new NotImplementedException();
}
/// Removes all audit rules with the same user as the specified rule, regardless of the value, and then adds the specified rule.
/// The to add. The user specified by this rule determines the rules to remove before this rule is added.
///
/// is null.
// Token: 0x06002DAD RID: 11693 RVA: 0x00093D4C File Offset: 0x00091F4C
[MonoTODO]
public void SetAuditRule(MutexAuditRule rule)
{
throw new NotImplementedException();
}
}
}