Merge branch 'master' into support_eip1559
This commit is contained in:
@@ -13,6 +13,8 @@ Specification version 1.0 - 24th of September 2020
|
||||
|
||||
This specification describes the plugin interface used to display a specific UI on device for Ethereum smart contracts.
|
||||
|
||||
Feel free to checkout the ParaSwap plugin to see an actual implementation. Link: https://github.com/LedgerHQ/app-ethereum/blob/named-external-plugins/doc/ethapp_plugins.asc .
|
||||
|
||||
## Flow overview
|
||||
|
||||
When signing an Ethereum transaction containing data, the Ethereum application looks for a plugin using .either a selector list or the contract address.
|
||||
@@ -149,7 +151,7 @@ typedef struct ethPluginFinalize_t {
|
||||
uint8_t *tokenLookup2;
|
||||
|
||||
uint8_t *amount; // set an uint256 pointer if uiType is UI_AMOUNT_ADDRESS
|
||||
uint8_t *address; // set to a 20 bytes address pointer if uiType is UI_AMOUNT_ADDRESS
|
||||
uint8_t *address; // set to the destination address if uiType is UI_AMOUNT_ADDRESS. Set to the user's address if uiType is UI_TYPE_GENERIC
|
||||
|
||||
uint8_t uiType;
|
||||
uint8_t numScreens; // ignored if uiType is UI_AMOUNT_ADDRESS
|
||||
@@ -282,7 +284,7 @@ The following return codes are expected, any other will abort the signing proces
|
||||
|
||||
When setting a pointer from the plugin space, make sure to use an address that will be accessible from the Ethereum application (typically in the plugin RAM context, *not* on the plugin stack)
|
||||
|
||||
Do not use data types that need to be aligned (such as uint32_t) in the plugin context
|
||||
Do not use data types that need to be aligned (such as uint32_t) in the plugin context.
|
||||
|
||||
## TODOs
|
||||
|
||||
|
||||
Reference in New Issue
Block a user