Omniscia Moby Audit
BaseToken Static Analysis Findings
BaseToken Static Analysis Findings
BTN-01S: Inexistent Event Emissions
Type | Severity | Location |
---|---|---|
Language Specific | BaseToken.sol:L44-L47, L49-L51, L58-L60, L62-L64, L66-L71, L73-L78 |
Description:
The linked functions adjust sensitive contract variables yet do not emit an event for it.
Example:
contracts/tokens/BaseToken.sol
49function setYieldTrackers(address[] memory _yieldTrackers) external onlyAdmin {50 yieldTrackers = _yieldTrackers;51}
Recommendation:
We advise an event
to be declared and correspondingly emitted for each function to ensure off-chain processes can properly react to this system adjustment.
Alleviation (a8720219a6a97e10b8d9c6a70c6345747f0fdcb3):
The SetInfo
, SetYieldTrackers
, setInPrivateTransferMode
, SetHandler
, UpdateNonStakingAccount
, and UpdateNonStakingAccount
events were introduced to the codebase and are correspondingly emitted in the BaseToken::setInfo
, BaseToken::setYieldTrackers
, BaseToken::setInPrivateTransferMode
, BaseToken::setHandler
, BaseToken::addNonStakingAccount
, and BaseToken::removeNonStakingAccount
functions respectively, addressing this exhibit in full.