LayerZero-Labs / LayerZero-v1

An Omnichain Interoperability Protocol
Other
1.96k stars 1.25k forks source link

About the second argument of estimateFees #4

Closed Akira-Taniguchi closed 2 years ago

Akira-Taniguchi commented 2 years ago

As you can see in this example, the second argument of estimateFees is the address of the chain to which the message is sent.

https://layerzero.gitbook.io/docs/faq/ultra-light-node/economic-and-fees#manage-fees

However, this example shows that the sender's address is set.

https://github.com/LayerZero-Labs/solidity-examples/blob/main/contracts/token/oft/OFT.sol#L21

Which is correct?

and....

If the destination address needs to be specified, shouldn't the type be bytes, not address, as it is in other functions?

https://github.com/LayerZero-Labs/solidity-examples/blob/main/contracts/interfaces/ILayerZeroEndpoint.sol#L41

calebbanister commented 2 years ago

Which is correct? -> The source sending UA address is the correct address to pass to estimateFees() to get the quote for.

Its possible that behind the scenes there are different pricing structures for different UAs due to Oracle or Relayer incentives, etc.

This also should clear up the answer to your last question. Since its the local UA , on an evm it will just be an address ( its not required to be bytes).


I updated gitbook, thanks for pointing it out! (https://layerzero.gitbook.io/docs/faq/ultra-light-node/economic-and-fees#manage-fees)

Akira-Taniguchi commented 2 years ago

ok, thanks