Open hats-bug-reporter[bot] opened 5 months ago
the end timestamp does only matter in the streaming payment processor to compare it to the start time. In combination with the streamingpaymentProcessor it might also be advantageous to keep the end timestamp in the past I would say this is invalid
Github username: @0xRizwan Twitter username: 0xRizwann Submission hash (on-chain): 0x03ed2b20bd5a77672579d30426d5c2be0b74e333d4053ca034d5e2b52199f2c9 Severity: low
Description: Description\
LM_PC_PaymentRouter_v1.sol
is used to push payments directly to the Payment Processor. This contracts haspushPayment()
function which process single payment andpushPaymentBatched()
function process batch payments.The issue is that, the end timestmp which is used as the timestamps at which the payments should be fulfilled is not validated. It means that, it can be set to 0 or the timestamp can be set which is already passed i.e in past time. If this happens, the end timestamp wont be able to fulfill the payment within time.
end
time should be more or equal to block.timestamp and it should be in future and must be validated at the start of function.Recommendation to fix\ Consider validating the end timestamp in both function: