Modules¶
Delegate Call To Untrusted Contract¶
The delegatecall module detects SWC-112 (DELEGATECALL to Untrusted Callee).
Dependence on Predictable Variables¶
The predictable variables module detects SWC-120 (Weak Randomness) and SWC-116 (Timestamp Dependence).
Ether Thief¶
The Ether Thief module detects SWC-105 (Unprotected Ether Withdrawal).
Exceptions¶
The exceptions module detects SWC-110 (Assert Violation).
External Calls¶
The external calls module warns about SWC-107 (Reentrancy) by detecting calls to external contracts.
Integer¶
The integer module detects SWC-101 (Integer Overflow and Underflow).
Multiple Sends¶
The multiple sends module detects SWC-113 (Denial of Service with Failed Call) by checking for multiple calls or sends in a single transaction.
Suicide¶
The suicide module detects SWC-106 (Unprotected SELFDESTRUCT).
State Change External Calls¶
The state change external calls module detects SWC-107 (Reentrancy) by detecting state change after calls to an external contract.
Unchecked Retval¶
The unchecked retval module detects SWC-104 (Unchecked Call Return Value).
User Supplied assertion¶
The user supplied assertion module detects SWC-110 (Assert Violation) for user-supplied assertions. User supplied assertions should be log messages of the form: emit AssertionFailed(string)
.
Arbitrary Storage Write¶
The arbitrary storage write module detects SWC-124 (Write to Arbitrary Storage Location).
Arbitrary Jump¶
The arbitrary jump module detects SWC-127 (Arbitrary Jump with Function Type Variable).