Since the tillIn
function does not call the whenNotPaused
modifier but the withdraw
function does, more token amounts can be deposited but cannot be withdrawn when the token manager is paused. These newly deposited token amounts are locked in the capital pool as long as the token manager is paused.
The following withdraw
function calls the whenNotPaused
modifier but the tillIn
function below does not call the whenNotPaused
modifier. When the token manager is paused, more token amounts can still be deposited into the capital pool since calling the tillIn
function does not revert but these newly deposited token amounts cannot be withdrawn from the capital pool because calling the withdraw
function reverts.
Allowing more token amounts to be deposited through the tillIn
function, which cannot be paused, can cause these newly deposited token amounts to be locked in the capital pool as long as the token manager is paused.
Manual Review
Similar to the withdraw
function, the tillIn
function can be updated to call the whenNotPaused
modifier.
I believe this is informational and non-acceptable severity because: - A single pause on withdraw to be sufficient to pause the markets during times of emergencies, given that is the only function where collateral/point tokens/native ETH can be pulled from market transactions. - Every tadle market place can be switched offline by the admin via [`updateMarketPlaceStatus`](https://github.com/Cyfrin/2024-08-tadle/blob/04fd8634701697184a3f3a5558b41c109866e5f8/src/core/SystemConfig.sol#L160-L171) and is checked in market actions via [`checkMarketPlaceStatus`](https://github.com/Cyfrin/2024-08-tadle/blob/04fd8634701697184a3f3a5558b41c109866e5f8/src/libraries/MarketPlaceLibraries.sol#L54-L67) to be online. This prevents many major market actions including the creation, listing and settlement of offers.
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.