Kiln
Allowlist (v1)
This contract handles the list of allowed recipients.All accounts have an uint256 value associated with their addresses whereeach bit represents a right in the system. The DENY_MASK defined the maskused to identify if the denied bit is on, preventing users from interactingwith the system
Accept the transfer of ownership
Only callable by the pending admin. Resets the pending admin if succesful.
Sets the allowlisting status for one or more accounts
The permission value is overridden and not updated
Name | Type | Description |
---|---|---|
Retrieves the current admin address
Retrieves the allower address
Retrieve the current pending admin address
This method retrieves the raw permission value
This method returns true if the user has the expected permission ignoring any deny list membership
Initializes the allowlist
This method returns true if the user has the expected permission and is not in the deny list
This method returns true if the user is in the deny list
This method should be used as a modifier and is expected to revert if the user hasn't got the required permission or if the user is in the deny list.
Proposes a new address as admin
This security prevents setting an invalid address as an admin. The pendingadmin has to claim its ownership of the contract, and prove that the newaddress is able to perform regular transactions.
Changes the allower address
Emitted when the contract is properly initialized
The admin address changed
The stored allower address has been changed
The permissions of several accounts have changed
The pending admin address changed
The account is denied access
The provided accounts list is empty
An error occured during the initialization
The address is zero
The provided accounts and permissions list have different lengths
The operator is unauthorized for the caller
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
_accounts
address[]
Accounts with statuses to edit
_permissions
uint256[]
Allowlist permissions for each account, in the same order as _accounts
_0
address
The admin address
_0
address
The address of the allower
_0
address
The pending admin address
_account
address
Recipient to verify
_0
uint256
The raw permissions value of the account
_account
address
Recipient to verify
_mask
uint256
Combination of permissions to verify
_0
bool
True if mask is respected
_admin
address
Address of the Allowlist administrator
_allower
address
Address of the allower
_account
address
Recipient to verify
_mask
uint256
Combination of permissions to verify
_0
bool
True if mask is respected and user is allowed
_account
address
Recipient to verify
_0
bool
True if user is denied access
_account
address
Recipient to verify
_mask
uint256
Combination of permissions to verify
_newAdmin
address
New admin address
_newAllowerAddress
address
New address allowed to edit the allowlist
version
uint256
undefined
cdata
bytes
undefined
admin indexed
address
undefined
allower indexed
address
undefined
accounts
address[]
undefined
permissions
uint256[]
undefined
pendingAdmin indexed
address
undefined
_account
address
The denied account
version
uint256
The version that was attempting to be initialized
expectedVersion
uint256
The version that was expected
caller
address
Address performing the call