ReentrancyGuardUpgradeable

Git Sourcearrow-up-right

Inherits: Initializable

This contract is a fork of the ReentrancyGuardUpgradeable contract from OpenZeppelin that has been modified to update the _nonReentrantBefore and _nonReentrantAfter functions to internal visibility. Contract module that helps prevent reentrant calls to a function. Inheriting from ReentrancyGuard will make the nonReentrant modifier available, which can be applied to functions to make sure there are no nested (reentrant) calls to them. Note that because there is a single nonReentrant guard, functions marked asnonReentrant may not call one another. This can be worked around by making those functions private, and then adding external nonReentrant entry points to them. TIP: If you would like to learn more about reentrancy and alternative ways to protect against it, check out our blog post https://blog.openzeppelin.com/reentrancy-after-istanbul/[Reentrancy After Istanbul].

State Variables

NOT_ENTERED

uint256 private constant NOT_ENTERED = 1;

ENTERED

uint256 private constant ENTERED = 2;

ReentrancyGuardStorageLocation

bytes32 private constant ReentrancyGuardStorageLocation =
    0x9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00;

Functions

_getReentrancyGuardStorage

__ReentrancyGuard_init

__ReentrancyGuard_init_unchained

nonReentrant

Prevents a contract from calling itself, directly or indirectly. Calling a nonReentrant function from another nonReentrant function is not supported. It is possible to prevent this from happening by making the nonReentrant function external, and making it call aprivate function that does the actual work.

_nonReentrantBefore

_nonReentrantAfter

_reentrancyGuardEntered

Returns true if the reentrancy guard is currently set to "entered", which indicates there is anonReentrant function in the call stack.

Errors

ReentrancyGuardReentrantCall

Unauthorized reentrant call.

Structs

ReentrancyGuardStorage

Last updated