In UniswapV3Adapter
contract, it call to uniswap router to swap token:
function executeSwapExactInputSingle(SwapExactInputSinglePayload calldata swapPayload)
external
returns (uint256 amountOut)
{
// transfer the tokenIn from the send to this contract
IERC20(swapPayload.tokenIn).transferFrom(msg.sender, address(this), swapPayload.amountIn);
In both functions above, deadline
variable is not defined. In solidity, it will become zero due to default value.
In uniswap v3, it have checkDeadline
modifier in both functions:
from checkDeadline
modifier, it can be seen that transaction always revert because deadline always equal to 0, which do not meet require
condition
Swapping on uniswap always revert
Make deadline equal to block.timestamp
.
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.