The closeBidTaker
function performs the following:
Retrieves information for the relevant stock and pre-offer.
Checks if the stock is of type Bid
, and if the caller is the stock authority.
Calculates the user's collateral fee and point token amount based on remaining points and settled amounts.
Updates the stock status to Finished
.
Emits the CloseBidTaker
event.
closeBidTaker
function should credit point token to the stock owner based on remaining points and settled amounts.
As we can see in above code, pointToken credited as the balance of collateral token contract.
So after this transaction, user can withdraw collateral token instead of pointToken, so user can't receive point token at all.
It makes protocol useless and breaks protocol, because accounting system is not working in correctly.
Due to this, user can't get point token and collateral token can be at risk, breaking protocol running.
Manual review
Valid high severity, In `settleAskTaker/closeBidTaker`, by assigning collateral token to user balance instead of point token, if collateral token is worth more than point, this can cause stealing of other users collateral tokens within the CapitalPool contract, If the opposite occurs, user loses funds based on the points they are supposed to receive
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.