When sending tokens, one of the transfers may not be successful. The contract will stop sending with an error message. But the error does not contain the address to which the tokens could not be sent. The user does not know which address caused the mailing to be stopped in order to be removed from the list. The user will be forced not to use this protocol
After each sending of tokens, a check is made that the call to the token contract was successful. Unsuccessful sending may occur due to the fact that the recipient's address is added to the black list (for example, such a list is in the USDT contract). The contract will completely interrupt the sending of tokens (this is a known issue) and will revert with an error.
But the user will not receive any information to correct this. If a user wanted to send a mailing to 100 users, then he would have to check each address on the list to see if it was blacklisted.
Due to the fact that the user cannot understand due to which address the sending was interrupted, the user will be forced to either stop working with the protocol and use other solutions, or send tokens to each address separately - in this case, the whole point of using the protocol is also lost.
Due to the impossibility of solving the problem, makes working with the protocol impossible , I set severity for this issue - medium. User could prefer competing product
Manual review
The error should contain information about the address to which the unsuccessful call was made.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.