KittyBridge::bridgeNftWithData
does not approve router
for spending LINK tokens on behalf of the KittyBridge
contract before calling ccip::Router::ccipSend
. This results in KittyBridge::bridgeNftWithData
always reverting.
ccip::Router::ccipSend
internally calls SafeERC20::safeTransferFrom
when the fee token used to pay for the transaction fee is LINK. Therefore, the caller of this function (KittyBridge
) needs to approve the ccip::Router
contract for spending LINK tokens before calling ccip::Router::ccipSend
. Failing to do so will result in the transaction being reverted due to a lack of allowance.
Calls to the KittyBridge::bridgeNftWithData
function will always revert, preventing any user from bridging their NFT.
Manual review.
Approve the ccip::Router
for spending tokens on behalf of the KittyBridge
before calling ccip::Router::ccipSend
.
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.