Omniscia Glimpse Audit

GLMS_ETH Manual Review Findings

GLMS_ETH Manual Review Findings

GLS-01M: Incorrect Inheritance

TypeSeverityLocation
Language SpecificMinorGLMS_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

TypeSeverityLocation
Standard ConformityInformationalGLMS_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.