You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In the current design if a token holder wants to withdraw their tokens from escrow, they have to call a DAO function which then calls the escrow; the escrow's withdraw function only allows the DAO to call it. If the DAO passes a proposal to swap the escrow contract with a new one, tokens held in the old escrow contract can only be withdrawn if the governor (DAO logic) is upgraded with a new function allowing token holders to call the old escrow's withdraw function. Without such an upgrade those token holders do not have access to their tokens.
A solution would be to allow any token holder to call the withdraw function directly on the escrow contract.
The text was updated successfully, but these errors were encountered:
Based on this C4 issue found as part of the DAO V3 audit: code-423n4/2023-07-nounsdao-findings#56.
In the current design if a token holder wants to withdraw their tokens from escrow, they have to call a DAO function which then calls the escrow; the escrow's withdraw function only allows the DAO to call it. If the DAO passes a proposal to swap the escrow contract with a new one, tokens held in the old escrow contract can only be withdrawn if the governor (DAO logic) is upgraded with a new function allowing token holders to call the old escrow's withdraw function. Without such an upgrade those token holders do not have access to their tokens.
A solution would be to allow any token holder to call the withdraw function directly on the escrow contract.
The text was updated successfully, but these errors were encountered: