Omniscia Keyko Audit
TreasuryImplementation Manual Review Findings
TreasuryImplementation Manual Review Findings
TIN-01M: Inexistent Initialization of Re-Entrancy Guard
Type | Severity | Location |
---|---|---|
Standard Conformity | Minor | TreasuryImplementation.sol:L11-L12, L42 |
Description:
The re-entrancy guard contract is never initialized in the initialize
call chain, thus causing it to be improperly set up.
Example:
contracts/token/TreasuryImplementation.sol
36/**37 * @notice Used to initialize a new Treasury contract38 *39 * @param communityAdmin_ Address of the CommunityAdmin contract40 */41function initialize(ICommunityAdmin communityAdmin_) public override initializer {42 __Ownable_init();43
44 _communityAdmin = communityAdmin_;45}
Recommendation:
We advise it to be properly initialized by invoking its __ReentrancyGuard_init
function within the initialize
function of the TreasuryImplementation
contract.
Alleviation:
The re-entrancy guard is now properly initialised in the initialize
call chain.