Ace
Immutable NFSv4 access-control entry.
The class methods below require built Mask and
Flags values; use ace for symbolic mask
and flag coercion.
Example
let read = Mask(:READ_DATA:, :READ_ATTRIBUTES:)
Ace.user 1000 type: :ALLOW: mask: $read flags: (Flags(:FILE_INHERIT:))
Class Methods
everyone :type :mask … -> Ace
Constructs the EVERYONE@ entry.
Parameters
| Name | Type | Description |
|---|---|---|
:type |
AceType |
Entry type. |
:mask |
Mask |
Permission mask. |
:flags? |
Flags |
Inheritance/audit flags. Defaults to empty. |
group id :type :mask … -> Ace
Constructs a named-group entry.
Parameters
| Name | Type | Description |
|---|---|---|
id |
Int |
Group ID. |
:type |
AceType |
Entry type. |
:mask |
Mask |
Permission mask. |
:flags? |
Flags |
Inheritance/audit flags. Defaults to empty. |
owner :type :mask … -> Ace
Constructs the OWNER@ entry.
Parameters
| Name | Type | Description |
|---|---|---|
:type |
AceType |
Entry type. |
:mask |
Mask |
Permission mask. |
:flags? |
Flags |
Inheritance/audit flags. Defaults to empty. |
owning_group :type :mask … -> Ace
Constructs the GROUP@ entry.
Parameters
| Name | Type | Description |
|---|---|---|
:type |
AceType |
Entry type. |
:mask |
Mask |
Permission mask. |
:flags? |
Flags |
Inheritance/audit flags. Defaults to empty. |
user id :type :mask … -> Ace
Constructs a named-user entry.
Parameters
| Name | Type | Description |
|---|---|---|
id |
Int |
User ID. |
:type |
AceType |
Entry type. |
:mask |
Mask |
Permission mask. |
:flags? |
Flags |
Inheritance/audit flags. Defaults to empty. |
Fields
flags @ Flags[get]The entry's inheritance/audit flags.
id @ (Int | nil)[get]Numeric user or group ID.
Returns
nilunlessprincipalis:USER:or:GROUP:.mask @ Mask[get]The entry's permission mask.
principal @ (:OWNER: | :OWNING_GROUP: | :EVERYONE: | :USER: | :GROUP:)[get]Entry qualifier.
type @ AceType[get]Entry type.