SantaToken.burn() does not take an amount variable.
Because SantaToken.burn() doesn't take an amount variable, it cannot then pass that amount to the _burn() function, which is defined to take an amount variable. Instead, burn() passes 1e18 as the amount to _burn()
Likelihood:
This will happen anytime burn() is successfully called, which will always pass 1e18 as the amount.
Impact:
The impact is that the increased functionality of burning more than 1e18 of the token at a time is now lost.
Instead, if one wants to burn more than 1e18 of the token, they must repeatedly call burn() until their desired amount is burned.
This shows how only 1e18 is burned when burn() is called. We see here also an updated version of burn() that takes an amount variable, which then can pass that amount to _burn() for an easier method of buring tokens rather than repeated calls burning 1e18 at a time.
We recommend rewriting the definition of burn() so that it can take a uint256 amount parameter that can be passed on to _burn().
The contest is live. Earn rewards by submitting a finding.
Submissions are being reviewed by our AI judge. Results will be available in a few minutes.
View all submissionsThe contest is complete and the rewards are being distributed.