The contract is designed to handle ETH payments alongside ERC20 tokens. However, based on the implementation, there is no specific function to facilitate the withdrawal of ETH contributions. This omission can lead to ambiguity and potential misuse of the withdraw function or other mechanisms to access ETH, posing a risk to both participants and the host.
The ChristmasDinner::_refundETH function facilitates ETH refunds to participants by transferring back their balance, but no similar mechanism is provided for ETH withdrawals by the host after the deadline.
ETH contributions are stored in the contract without a dedicated withdrawal function and these funds remain inaccessible by the host, creating a functionality gap.
ETH contributions become locked in the contract if no withdrawal mechanism exists, rendering them inaccessible by the host for the intended by the protocol purposes.
Manual review
Add an ETH-Specific Withdrawal Function, while ensuring that withdrawals are only possible after the deadline
or remake the existing ChristmasDinner::withdraw function, again concidering the deadline and adding ETH-transfer functionality:
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.