Some functions including closeBidTaker()
and abortBidTaker()
, do not verify the market status
before executing their operations. This oversight can lead to unauthorized actions, potential misuse, and operational inconsistencies.
The protocol is designed to manage various market operations
, including closing bid offers
, settling ask makers
, settling ask takers
etc. These operations are highly dependent on the current state of the market
. The market status
can be one of the following:
UnInitialized
Online
AskSettling
BidSettling
Offline
Each of these statuses
represents a specific phase in the market's lifecycle, and certain operations should only be permissible during specific statuses
. For example, closing a bid offer
should ideally only be allowed when the market is in the BidSettling/AskSettling
state.
However, Some functions including closeBidTaker()
and abortBidTaker()
, do not verify the market status
before executing their operations.
This oversight can lead to unauthorized actions and operational inconsistencies.
Manual Review
Ensure that all functions that depend on the market's state verify the current market status
before proceeding with their operations.
Informational, during emergencies, even if abortions are allowed, withdrawal can be paused and collateral cannot be pulled anyways (`whenNotPaused` modifier within `withdraw()`), so there is no impact here, given funds outflow can be paused.
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.