Previous Versions3.xAPI Reference

Security

Outdated Version

You're viewing an older version (v3.x) The latest documentation is available for the current version. Click here to visit latest version.

This crate provides components to handle common security-related tasks.

Initializable

use openzeppelin_security::InitializableComponent;

Component enabling one-time initialization for contracts.

Embeddable Implementations

InitializableImpl

Internal Implementations

InternalImpl

Embeddable functions

is_initialized(self: @ComponentState) → bool

external

#

Returns whether the contract has been initialized.

Internal functions

initialize(ref self: ComponentState)

internal

#

Initializes the contract. Can only be called once.

Requirements:

  • the contract must not have been initialized before.

Pausable

use openzeppelin_security::PausableComponent;

Component to implement an emergency stop mechanism.

Embeddable Implementations

PausableImpl

Internal Implementations

InternalImpl

Events

Embeddable functions

is_paused(self: @ComponentState) → bool

external

#

Returns whether the contract is currently paused.

Internal functions

assert_not_paused(self: @ComponentState)

internal

#

Panics if the contract is paused.

assert_paused(self: @ComponentState)

internal

#

Panics if the contract is not paused.

pause(ref self: ComponentState)

internal

#

Pauses the contract.

Requirements:

  • the contract must not be paused.

Emits a Paused event.

unpause(ref self: ComponentState)

internal

#

Unpauses the contract.

Requirements:

  • the contract must be paused.

Emits an Unpaused event.

Events

Paused(account: ContractAddress)

event

#

Emitted when the contract is paused by account.

Unpaused(account: ContractAddress)

event

#

Emitted when the contract is unpaused by account.

ReentrancyGuard

use openzeppelin_security::ReentrancyGuardComponent;

Component to help prevent reentrant calls.

Internal Implementations

InternalImpl

Internal functions

start(ref self: ComponentState)

internal

#

Prevents a contract's function from calling itself or another protected function, directly or indirectly.

Requirements:

  • the guard must not be currently enabled.

end(ref self: ComponentState)

internal

#

Removes the reentrant guard.

On this page

InitializableInitializableComponentPausablePausableComponentReentrancyGuardReentrancyGuardComponent