Omniscia rain protocol Audit
RedeemableERC20 Manual Review Findings
RedeemableERC20 Manual Review Findings
RER-01M: Inexplicable Status Restriction
| Type | Severity | Location |
|---|---|---|
| Logical Fault | ![]() | RedeemableERC20.sol:L111 |
Description:
The RedeemableERC20 contract enforces the SENDER status to imply RECEIVER as well, however, this may not be true in case the transfers are frozen at a later date at which an address may possess a balance that was sent prior to the freeze operation.
Example:
contracts/redeemableERC20/RedeemableERC20.sol
109/// Bits for a receiver.110uint256 private constant RECEIVER = 0x1;111/// Bits for a sender. Sender is also receiver.112uint256 private constant SENDER = 0x3;Recommendation:
We advise this trait of the system to be re-evaluated and potentially to only use the 10 bit flag as the SENDER of assets.
Alleviation:
The 10 bit is now utilized by the SENDER representation (0x2) thereby alleviating this exhibit.
