Omniscia Glimpse Audit
GLMS_ETH Manual Review Findings
GLMS_ETH Manual Review Findings
GLS-01M: Incorrect Inheritance
Type | Severity | Location |
---|---|---|
Language Specific | Minor | GLMS_ETH.sol:L6 |
Description:
The GLMS_ETH
version of the Glimpse token incorrectly inherits the IBEP20
standard instead of the IERC20
standard which does not exist within the project.
Example:
contracts/GLMS_ETH.sol
6contract GLMS_ETH is Context, IBEP20, Ownable {
Recommendation:
We advise the IERC20
standard to be defined within the project and inherited by the GLMS_ETH
, rendering the getOwner
function redundant.
Alleviation:
The IERC20
implementation was defined and is now properly inherited in the codebase.
GLS-02M: Inconsistent GSN Conformity
Type | Severity | Location |
---|---|---|
Standard Conformity | Informational | GLMS_ETH.sol:L44, L99 |
Description:
The batchTransfer
function does not conform to the _msgSender()
convention the rest of the contract does.
Example:
contracts/GLMS_ETH.sol
42function batchTransfer(TransferData[] calldata data) external {43 for (uint i = 0; i < data.length; i++) {44 _transfer(msg.sender, data[i].recipient, data[i].amount);45 }46}
Recommendation:
We strongly recommend the _msgSender()
getter function to be utilized to ensure potential conformity with the GSN in the future.
Alleviation:
The batchTransfer
custom function was adapted to be GSN compliant according to our recommendation.