The contract purpose is to "force" the attendees to pay upon signup. However, users can use the function ChristmasDinner::changeParticipationStatus
to become a participant without deposit.
The function ChristmasDinner::changeParticipationStatus
changes participation status to true
for the msg.sender
if it is false
and deadline has not passed. However, this allows anyone to become a participant without a deposit, and that breaks the contract purpose.
Users can become participants without deposit, broking the contract purpose.
Manual review
Add another mapping to track who has deposited on sign up and check the mapping in the changeParticipationStatus
function.
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.