OMA3 smart contracts encompass an ERC20 token, a token lock and staking contracts with different purposes. AccessControlEnumerable, ERC20 and SafeERC20 contracts from the standard Openzeppelin library were integrated into the OMA3 contracts. The OMALock contract allows for the creation and update of Lock details, staking, un-staking and slashing of locks. The OMABoardStaking is designed for allowing users to stake OMA tokens and un-stake. The OMABountyStaking shares similar features as the OMABoardStaking but instead of the unstake feature, users get their staked tokens when the release address invokes release function. The implementation across all of the contract allows some unique addresses to onboard users into the protocol.
Low | Medium | High | Critical | Total | |
---|---|---|---|---|---|
Not fixed | 2 | 1 | - | - | 3 |
Fixed | 2 | - | - | - | 2 |
Total | 4 | 1 | 0 | 0 | 5 |
# | File Name |
---|---|
1 | OMABoardStaking.sol |
2 | OMABountyStaking.sol |
3 | OMA.sol |
4 | OMALock.sol |