_Follow along with this video:_ --- ### Mishandling of Eth and MEV Frankly, we're going to skip the write ups for these. MEV issues, as I've mentioned, we'll go over later in the course, so we'll skip this for now. As for Mishandling of Eth, we briefly touched on this earlier. The issue really boils down to this line: ```js require(address(this).balance == uint256(totalFees), "PuppyRaffle: There are currently players active!"); ``` This requirement to withdraw leads to a number of potential pitfalls, including an inability to withdraw if the contract accounting becomes broken as well as opening the protocol up to griefing should a raffle always be open. Generally something we should inform the protocol of.
Writing our report for ETH Mishandling in PuppyRaffle.
Previous lesson
Previous
Next lesson
Next
Give us feedback
Solidity Developer
Smart Contract SecurityDuration: 25min
Duration: 1h 18min
Duration: 35min
Duration: 2h 28min
Duration: 5h 03min
Duration: 5h 22min
Duration: 4h 33min
Duration: 2h 01min
Duration: 1h 40min
Testimonials
Read what our students have to say about this course.
Chainlink
Chainlink
Gustavo Gonzalez
Solutions Engineer at OpenZeppelin
Francesco Andreoli
Lead Devrel at Metamask
Albert Hu
DeForm Founding Engineer
Radek
Senior Developer Advocate at Ceramic
Boidushya
WalletConnect
Idris
Developer Relations Engineer at Axelar