At a certain threshold no more players will be able to join the raffle.
As the array of active players grows, the nested loop within enterRaffle() will be unable to loop through its duplicate address check and cause a DoS.
Users will be unable to join the raffle which doubles as a DoS and financial losses to the protocol.
manual review
Replace this nested loop duplicate address check with a mapping mapping(address => bool) activePlayer; where address is the user we are checking and it's true if the user is already active in the raffle false if not.
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.