The SablierFlow
contract allows the creation of streams with a ratePerSecond
of zero. This can lead to the creation of non-functional streams, where no funds are transferred, potentially causing confusion and misuse of the contract.
The issue arises from the absence of a validation check for ratePerSecond
in the _create
function. This allows streams to be created with a zero rate, which is not practical for a streaming payment system.
Streams with a zero rate do not transfer any funds, leading to non-functional streams.
Creating and managing such streams consumes blockchain resources without providing any utility.
Manual review
Foundry
Add a validation check in the _create
function to ensure that ratePerSecond
is greater than zero.
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.