updateFeeType()
is use to Updates parameters for a specific fee type
The contract supports 8 different fee types (0-7):
Protocol Fees (0): General operations
Lending Fees (1): Lending/borrowing activities
Performance Fees (2): Yield products
Insurance Fees (3): NFT loan insurance
Mint/Redeem Fees (4): Token operations
Vault Fees (5): Vault management
Swap Tax (6): Trading operations
NFT Royalties (7): NFT transactions
Each fee type has configurable distribution parameters:
veRAACShare: Percentage for veRAAC holders
burnShare: Percentage for token burning
repairShare: Percentage for repair fund
treasuryShare: Percentage for treasury
if we look at _initializeFeeTypes()
which Initializes default fee types according to protocol rules
Place to look here is feeTypes[6] & feeTypes[7]
where combining all 4 parameter it doesn't reach 100% (i.e 100_00 BIPs)
But when setting feeTypes with new fee via updateFeeType() it has strong check that all 4 configurable distribution parameters
should comined equal to 100% which will be not correct for feeTypes[6] & feeTypes[7]
as shown above.
manuall review
should reconsider this design.
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.