<!-- canonical: https://0xsimao.com/findings/fuji-finance-perform-important-actions-sure -->

# Connext delegates can perform important actions, make sure smart contract users implement them

Medium · Three Sigma · Lending aggregator · 6th May, 2023

Finding 3S-FUJI-M09 of the Fuji Finance security review.

- Report: /reports/fuji-finance
- Source: https://cdn.sanity.io/files/qoqld077/staging/32181a28eac3175d15fb8924d249bb0d91ca350c.pdf

---

### Description

Connext implements a mechanism of adjusting/forcing parameters in the bridged assets
which can be triggered by a delegate. If the delegate is a EOA or wallet, there is no problem,
as the delegate can call directly the connext bridge. However, care must be taken if the
caller of xBundle(...) is a smart contract, in which it may not implement the necessary
Connext function calls. This can be dangerous if the smart contract user set, for example, a
low slippage tolerance and did not implement the function forceUpdateSlippage(...) of
the connext bridge.

### Recommendation

Implement methods in the Router/Handler to handle these function calls, such as
bumpTransfer(...) and make the ConnextRouter the delegate. In alternative, make it very
clear in the documentation and comments in the interface/code that the user must
implement these important Connext methods if it is a smart contract.

### Status

Addressed here: [Fujicracy/fuji-v2#628](https://github.com/Fujicracy/fuji-v2/pull/628)

---

Related findings:

- [Implement Storage Gap in Delegatable Contract](https://0xsimao.com/findings/ostium-implement-storage-gap-delegatable): Ostium
- [Anyone can grief users, stopping them from fulfilling their withdrawals](https://0xsimao.com/findings/clip-finance-i-grief-stopping-fulfilling-withdrawals): Clip Finance Strategies
- [Users buying too many tickets will DoS them and the protocol if they are the winner due to OOG](https://0xsimao.com/findings/winnables-raffles-buying-tickets-winner-oog): Winnables Raffles
- [Users will lock raffle prizes on the `WinnablesPrizeManager` contract by calling `WinnablesTicketManager::propagateRaffleWinner` with wrong CCIP inputs](https://0xsimao.com/findings/winnables-raffles-lock-propagate-ccip-inputs): Winnables Raffles
