Omniscia Polkadex Audit
ERC20 Static Analysis Findings
ERC20 Static Analysis Findings
ERC-01S: Illegible Value Literals
Type | Severity | Location |
---|---|---|
Code Style | Informational | ERC20.sol:L699-L768 |
Description:
The mainHolder
vesting assignments contain numerous digits which are not separated.
Example:
696function mainHolder() internal {697 //for add new use first run _mint(useraddress,amount+decimals) then mintRegister(wallet address) and then for vesting token share defining VestedTokens[walletadress]=vestedtokenshare+decimals698
699 VestedTokens[0xd94D2A5A94C26AEAFed4bA22a2b4BB785d9BBC39] = 6000000000000000000000;700
701 VestedTokens[0xF14c9dbDb31b0a18aF44Fcf97Ed12b0abfE1b92e] = 80000000000000000000000;702
703 VestedTokens[0xcCa3041EB270B3cc31e85c4CEFC4ea06e7Ab8024] = 6000000000000000000000;704
705 VestedTokens[0xD9fc20ad04E81f75448985BE02222c46b4189f16] = 120000000000000000000000;706
707 VestedTokens[0x4233168fe150776bA6f8CDA98c90411b54551502] = 35000000000000000000000;708
709 VestedTokens[0x7C28A20A66d687107dfA810566f237fb3810CBf4] = 4375000000000000000000;710
711 VestedTokens[0xDebb257F2A15a38b1ffbB1F9Ea5e825434e3313e] = 17500000000000000000000;712
713 VestedTokens[0xa1CEc90603405dA9578c88cDc8cAe7e098532DEa] = 17500000000000000000000;714
715 VestedTokens[0x87e460405676f60993b7bc0c77A5ff049Ee2f744] = 17500000000000000000000;716
717 VestedTokens[0x5b791250481E6E5521073166c01F4CBcA2a56825] = 525000000000000000000;718
719 VestedTokens[0xbFC94A95d4448C802E848C68fdD2FC0fEE4a876E] = 63750000000000000000000;720
721 VestedTokens[0xb024A232257cA0dec600C9C4223313E5Dad862f5] = 35000000000000000000000;722
723 VestedTokens[0x53F470A909d7CE7f35e62f4470fD440B1eD5D8CD] = 42500000000000000000000;724
725 VestedTokens[0x9D943d33E70053e3146d82C57083aF4bd6a7009B] = 17500000000000000000000;726
727 VestedTokens[0xB089425c9C078b70cF96CC6051850f37f86B1426] = 17500000000000000000000;728
729 VestedTokens[0x527788Ae179be743614496680d38B39D87Ee1ce8] = 51250000000000000000000;730
731 VestedTokens[0x7131128602732F0842E19704D69AC44A87c36eca] = 31875000000000000000000;732
733 VestedTokens[0xA2dCB52F5cF34a84A2eBFb7D937f7051ae4C697B] = 25250000000000000000000;734
735 VestedTokens[0x1d945e9eA2DA9CB9A36B3E53e78B5e22BEa1e3D9] = 10000000000000000000000;736
737 VestedTokens[0x69fE859B2ae937927c24812DFF8eE078395522Bf] = 15280000000000000000000;738
739 VestedTokens[0x082878a39693BEEa5684A68789b7211cA7ae7221] = 20000000000000000000000;740
741 VestedTokens[0x4f720de916d89AD7e8a531EB3f8E92798687b4d1] = 40000000000000000000000;742
743 VestedTokens[0xb8067f9837376a004a596c069ab231Bb5C56F6a1] = 20000000000000000000000;744
745 VestedTokens[0x29D80C9A4Cc081d7c4Dea8D50d308396c6F75A18] = 10000000000000000000000;746
747 VestedTokens[0x436516D67AE3e77c9ED2AA0057380b08126F5310] = 20000000000000000000000;748
749 VestedTokens[0x66B8C2F780710874Fb21D2795404102010D7a034] = 50000000000000000000000;750
751 VestedTokens[0x0a220d7e56d9A03193e57fE74D8D4cb5492483B6] = 20000000000000000000000;752
753 VestedTokens[0xB17D155b1b263b7d9d999B675B02C2117ba046fc] = 20000000000000000000000;754
755 VestedTokens[0x63D417a577b50c96f4f09148D4E4d70950DB0522] = 20000000000000000000000;756
757 VestedTokens[0x08ea0b89eBA52bD3F7A27822ecEbA18BF77eE072] = 5000000000000000000000;758
759 VestedTokens[0xA93ee2d5ac5b802B9a8dBBC4Db2Cb3A772E89c7C] = 8750000000000000000000;760
761 VestedTokens[0x94dfA7f9ed91E5F08C24D12613f59dDBFFf0Bc80] = 10265000000000000000000;762
763 _mint(764 0x46E947F92267D951Dfe5De2E3db3078F3049B996,765 1963860000000000000000000766 );767
768 VestedTokens[0x46E947F92267D951Dfe5De2E3db3078F3049B996] = 345630000000000000000000;769
770}
Recommendation:
We advise those assignments to be properly separated by introducing the underscore (_
) separator in the declaration which is ignored by the compiler.
Alleviation:
The development team has acknowledged this exhibit but decided to not apply its remediation in the current version of the codebase citing time constraints.
ERC-02S: Non-Standard Naming Convention
Type | Severity | Location |
---|---|---|
Code Style | Informational | ERC20.sol:L357 |
Description:
The linked variables contain names that are not conformant to the official Solidity style guide.
Example:
357mapping(address => uint256) public VestedTokens;358mapping(address => uint256) private _balances;
Recommendation:
We advise the style guide to be followed by re-writing the naming conventions of the linked declarations and increasing the legibility of the codebase.
Alleviation:
The development team has acknowledged this exhibit but decided to not apply its remediation in the current version of the codebase citing time constraints.