Open code423n4 opened 2 years ago
Adding zero address checks adds a bunch of overhead and doesn't make much sense in a heavily permissioned system. safeTransfer should be fine since it is only operating on tokens we've specified. The rest looks good and will aim to implement.
[L-01] Missing nonReentrant for function not using checks-effects-interactions
The
batchToTresury
function has access control, but it's updating the state after external calls. Consider adding anonReetrancy
modifier.[L-02] Missing zero address checks for setters
Consider adding checks against zero address when a function is receiving an input address.
[NC-01] Non library files should use fixed compiler verion
Locking the pragma helps to ensure that contracts do not accidentally get deployed using an outdated compiler version. Note that pragma statements can be allowed to float when a contract is intended for consumption by other developers, as in the case with contracts in a library or a package.
There are 3 instances of this issue.
[NC-02] Public functions not called by the contract should be declared external
There are 2 instances of this issue
[NC-03] Missing NATSPEC
Consider adding NATSPEC on all functions to enhance the project documentation.
[NC-04] Lack of event when kernel grants or revoke status
Consider emitting an event when
setActiveStatus
is called to facilitate monitoring of the system.[NC-05] TODOs should should be resolved before deployment
There are 4 instances of this issue.