The InheritanceManager
contract includes explicit functionality for handling ETH, but does not implement any mechanism to receive ETH, making these features unusable. Specifically, the contract has:
A sendETH()
function for the owner to send ETH out of the contract:
ETH distribution functionality in withdrawInheritedFunds()
:
However, the contract does not include any of the following mechanisms that would allow it to receive ETH:
No receive()
function
No fallback()
function
No functions marked as payable
Without these mechanisms, it is impossible for the contract to receive ETH through normal transactions, making the ETH handling functionality effectively useless.
A central purpose of this contract appears to be the management and inheritance of ETH, which is unusable as designed. The contract suggests to users it can handle ETH inheritance through its functions, but this functionality is inaccessible.
Add a receive()
function to the contract to allow it to receive ETH
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.