diff --git a/mythril/analysis/modules/external_calls.py b/mythril/analysis/modules/external_calls.py index 5b5d61eb..d3357f3b 100644 --- a/mythril/analysis/modules/external_calls.py +++ b/mythril/analysis/modules/external_calls.py @@ -28,6 +28,11 @@ an informational issue. class CallIssue: + """ This class is a struct of + call: the Call struct + user_defined_address: Whether the address can be defined by user or not + """ + def __init__(self, call: Call, user_defined_address: bool) -> None: self.call = call self.user_defined_address = user_defined_address @@ -155,7 +160,7 @@ class ExternalCalls(DetectionModule): swc_id=REENTRANCY, description=DESCRIPTION, entrypoint="callback", - pre_hooks=["CALL"], + pre_hooks=["CALL", "DELEGATECALL"], ) def execute(self, state: GlobalState): diff --git a/mythril/analysis/modules/state_change_external_calls.py b/mythril/analysis/modules/state_change_external_calls.py index efaefbca..87809f12 100644 --- a/mythril/analysis/modules/state_change_external_calls.py +++ b/mythril/analysis/modules/state_change_external_calls.py @@ -109,7 +109,7 @@ class StateChange(DetectionModule): swc_id=REENTRANCY, description=DESCRIPTION, entrypoint="callback", - pre_hooks=["CALL", "SSTORE"], + pre_hooks=["CALL", "SSTORE", "CREATE", "DELEGATECALL"], ) def execute(self, state: GlobalState):