FIAT DAO veFDT contest - a12jmx's results

Unlock liquidity for your DeFi fixed income assets.

General Information

Platform: Code4rena

Start Date: 12/08/2022

Pot Size: $35,000 USDC

Total HM: 10

Participants: 126

Period: 3 days

Judge: Justin Goro

Total Solo HM: 3

Id: 154

League: ETH

FIAT DAO

Findings Distribution

Researcher Performance

Rank: 82/126

Findings: 2

Award: $44.84

🌟 Selected for report: 0

🚀 Solo Findings: 0

Contract: VotingEscrow.sol

It is unnecesary to iniliaze variables in for loops

line 309 line 717 line 739 line 834

Recommendation:

for (uint256 i; i < 255; i++) for (uint256 i; i < 128; i++) for (uint256 i; i < 128; i++) for (uint256 i; i < 255; i++)

2.

It is best practice to always use OpenZeppelin safeTransferFrom or safeTransfer with ERC20 tokens

line 426 line 486 line 546 line 657 line 676

Recommendation:

token.safeTransferFrom(msg.sender, address(this), _value), require(token.safeTransfer(msg.sender, value), "Transfer failed"); require(token.safeTransfer(msg.sender, remainingAmount), "Transfer failed"); require(token.safeTransfer(penaltyRecipient, amount), "Transfer failed");

Using ++i instead of i++ in for loops saves gas

Contract: VotingEscrow.sol

line 309 line 717 line 739 line 834

Recommendation:

for (uint256 i = 0; i < 255; ++i) for (uint256 i = 0; i < 128; ++i) for (uint256 i = 0; i < 128; ++i) for (uint256 i = 0; i < 255; ++i)
AuditHub

A portfolio for auditors, a security profile for protocols, a hub for web3 security.

Built bymalatrax © 2024

Auditors

Browse

Contests

Browse

Get in touch

ContactTwitter