Skip to content

Commit

Permalink
Merge pull request #37 from Zondax/dev
Browse files Browse the repository at this point in the history
Blind sign app calls
  • Loading branch information
0xPxt authored Dec 30, 2024
2 parents 191ca98 + 7271ed4 commit b31b7a1
Show file tree
Hide file tree
Showing 668 changed files with 226 additions and 88 deletions.
1 change: 1 addition & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ jobs:
- id: get-user
run: echo "uid_gid=$(id -u):$(id -g)" >> $GITHUB_OUTPUT


build:
runs-on: ubuntu-latest
steps:
Expand Down
2 changes: 1 addition & 1 deletion app/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ DEFINES += PRODUCTION_BUILD=$(PRODUCTION_BUILD)

include $(CURDIR)/../deps/ledger-zxlib/makefiles/Makefile.app_testing

DEFINES += REVIEW_SCREEN_ENABLED SHORTCUT_MODE_ENABLED
DEFINES += APP_BLINDSIGN_MODE_ENABLED

ifndef COIN
COIN=ALGO
Expand Down
4 changes: 2 additions & 2 deletions app/Makefile.version
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# This is the `transaction_version` field of `Runtime`
APPVERSION_M=2
# This is the `spec_version` field of `Runtime`
APPVERSION_N=1
APPVERSION_N=2
# This is the patch version of this release
APPVERSION_P=14
APPVERSION_P=0
5 changes: 5 additions & 0 deletions app/src/apdu_handler.c
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
#include "addr.h"
#include "crypto.h"
#include "coin.h"
#include "parser.h"
#include "zxmacros.h"

static bool tx_initialized = false;
Expand Down Expand Up @@ -151,6 +152,10 @@ __Z_INLINE void handle_sign_msgpack(volatile uint32_t *flags, volatile uint32_t
int error_msg_length = strlen(error_msg);
memcpy(G_io_apdu_buffer, error_msg, error_msg_length);
*tx += (error_msg_length);
if (strcmp(error_msg, parser_getErrorDescription(parser_blindsign_mode_required)) == 0) {
*flags |= IO_ASYNCH_REPLY;
view_blindsign_error_show();
}
THROW(APDU_CODE_DATA_INVALID);
}

Expand Down
2 changes: 2 additions & 0 deletions app/src/common/parser_common.h
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,8 @@ typedef enum {
parser_display_idx_out_of_range,
parser_display_page_out_of_range,
parser_unexpected_error,
parser_blindsign_mode_required,

// Coin generic
parser_unexpected_type,
parser_unexpected_method,
Expand Down
67 changes: 47 additions & 20 deletions app/src/parser_impl.c
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@

#include "parser_impl.h"
#include "msgpack.h"
#include "app_mode.h"

static uint8_t num_items;
static uint8_t common_num_items;
Expand All @@ -40,6 +41,23 @@ static parser_error_t _findKey(parser_context_t *c, const char *key);
counter++; \
}

#define DISPLAY_APP_ITEM(appIdx, len, counter, v) \
if (!app_mode_blindsign()) { \
for(uint8_t j = 0; j < len; j++) { \
CHECK_ERROR(addItem(appIdx)) \
counter++; \
} \
}

#define DISPLAY_COMMON_ITEM(appIdx, len, counter, v) \
if (v->type == TX_APPLICATION && app_mode_blindsign()) { \
if (appIdx == IDX_COMMON_SENDER || appIdx == IDX_COMMON_REKEY_TO) { \
DISPLAY_ITEM(appIdx, len, counter) \
} \
} else { \
DISPLAY_ITEM(appIdx, len, counter) \
}

parser_error_t parser_init_context(parser_context_t *ctx,
const uint8_t *buffer,
uint16_t bufferSize) {
Expand Down Expand Up @@ -773,44 +791,44 @@ static parser_error_t _readTxCommonParams(parser_context_t *c, parser_tx_t *v)

CHECK_ERROR(_findKey(c, KEY_COMMON_SENDER))
CHECK_ERROR(_readBinFixed(c, v->sender, sizeof(v->sender)))
DISPLAY_ITEM(IDX_COMMON_SENDER, 1, common_num_items)
DISPLAY_COMMON_ITEM(IDX_COMMON_SENDER, 1, common_num_items, v)

if (_findKey(c, KEY_COMMON_LEASE) == parser_ok) {
CHECK_ERROR(_readBinFixed(c, v->lease, sizeof(v->lease)))
DISPLAY_ITEM(IDX_COMMON_LEASE, 1, common_num_items)
DISPLAY_COMMON_ITEM(IDX_COMMON_LEASE, 1, common_num_items, v)
}

if (_findKey(c, KEY_COMMON_REKEY) == parser_ok) {
CHECK_ERROR(_readBinFixed(c, v->rekey, sizeof(v->rekey)))
DISPLAY_ITEM(IDX_COMMON_REKEY_TO, 1, common_num_items)
DISPLAY_COMMON_ITEM(IDX_COMMON_REKEY_TO, 1, common_num_items, v)
}

v->fee = 0;
if (_findKey(c, KEY_COMMON_FEE) == parser_ok) {
CHECK_ERROR(_readInteger(c, &v->fee))
}
DISPLAY_ITEM(IDX_COMMON_FEE, 1, common_num_items)
DISPLAY_COMMON_ITEM(IDX_COMMON_FEE, 1, common_num_items, v)

if (_findKey(c, KEY_COMMON_GEN_ID) == parser_ok) {
CHECK_ERROR(_readString(c, (uint8_t*)v->genesisID, sizeof(v->genesisID)))
DISPLAY_ITEM(IDX_COMMON_GEN_ID, 1, common_num_items)
DISPLAY_COMMON_ITEM(IDX_COMMON_GEN_ID, 1, common_num_items, v)
}

CHECK_ERROR(_findKey(c, KEY_COMMON_GEN_HASH))
CHECK_ERROR(_readBinFixed(c, v->genesisHash, sizeof(v->genesisHash)))
DISPLAY_ITEM(IDX_COMMON_GEN_HASH, 1, common_num_items)
DISPLAY_COMMON_ITEM(IDX_COMMON_GEN_HASH, 1, common_num_items, v)

if (_findKey(c, KEY_COMMON_GROUP_ID) == parser_ok) {
CHECK_ERROR(_readBinFixed(c, v->groupID, sizeof(v->groupID)))
DISPLAY_ITEM(IDX_COMMON_GROUP_ID, 1, common_num_items)
DISPLAY_COMMON_ITEM(IDX_COMMON_GROUP_ID, 1, common_num_items, v)
}

if (_findKey(c, KEY_COMMON_NOTE) == parser_ok) {
CHECK_ERROR(_readBinSize(c, &v->note_len))
if(v->note_len > MAX_NOTE_LEN) {
return parser_unexpected_value;
}
DISPLAY_ITEM(IDX_COMMON_NOTE, 1, common_num_items)
DISPLAY_COMMON_ITEM(IDX_COMMON_NOTE, 1, common_num_items, v)
}

// First and Last valid won't be display --> don't count them
Expand Down Expand Up @@ -1049,31 +1067,31 @@ static parser_error_t _readTxApplication(parser_context_t *c, parser_tx_t *v)
if (_findKey(c, KEY_APP_ID) == parser_ok) {
CHECK_ERROR(_readInteger(c, &application->id))
}
DISPLAY_ITEM(IDX_APP_ID, 1, tx_num_items)
DISPLAY_APP_ITEM(IDX_APP_ID, 1, tx_num_items, v)

if (_findKey(c, KEY_APP_ONCOMPLETION) == parser_ok) {
CHECK_ERROR(_readInteger(c, &application->oncompletion))
}
DISPLAY_ITEM(IDX_ON_COMPLETION, 1, tx_num_items)
DISPLAY_APP_ITEM(IDX_ON_COMPLETION, 1, tx_num_items, v)

if (_findKey(c, KEY_APP_BOXES) == parser_ok) {
CHECK_ERROR(_readBoxes(c, application->boxes, &application->num_boxes))
DISPLAY_ITEM(IDX_BOXES, application->num_boxes, tx_num_items)
DISPLAY_APP_ITEM(IDX_BOXES, application->num_boxes, tx_num_items, v)
}

if (_findKey(c, KEY_APP_FOREIGN_APPS) == parser_ok) {
CHECK_ERROR(_readArrayU64(c, application->foreign_apps, &application->num_foreign_apps, MAX_FOREIGN_APPS))
DISPLAY_ITEM(IDX_FOREIGN_APP, application->num_foreign_apps, tx_num_items)
DISPLAY_APP_ITEM(IDX_FOREIGN_APP, application->num_foreign_apps, tx_num_items, v)
}

if (_findKey(c, KEY_APP_FOREIGN_ASSETS) == parser_ok) {
CHECK_ERROR(_readArrayU64(c, application->foreign_assets, &application->num_foreign_assets, MAX_FOREIGN_ASSETS))
DISPLAY_ITEM(IDX_FOREIGN_ASSET, application->num_foreign_assets, tx_num_items)
DISPLAY_APP_ITEM(IDX_FOREIGN_ASSET, application->num_foreign_assets, tx_num_items, v)
}

if (_findKey(c, KEY_APP_ACCOUNTS) == parser_ok) {
CHECK_ERROR(_verifyAccounts(c, &application->num_accounts, MAX_ACCT))
DISPLAY_ITEM(IDX_ACCOUNTS, application->num_accounts, tx_num_items)
DISPLAY_APP_ITEM(IDX_ACCOUNTS, application->num_accounts, tx_num_items, v)
}

if(application->num_accounts + application->num_foreign_apps + application->num_foreign_assets > ACCT_FOREIGN_LIMIT) {
Expand All @@ -1082,7 +1100,7 @@ static parser_error_t _readTxApplication(parser_context_t *c, parser_tx_t *v)

if (_findKey(c, KEY_APP_ARGS) == parser_ok) {
CHECK_ERROR(_verifyAppArgs(c, application->app_args_len, &application->num_app_args, MAX_ARG))
DISPLAY_ITEM(IDX_APP_ARGS, application->num_app_args, tx_num_items)
DISPLAY_APP_ITEM(IDX_APP_ARGS, application->num_app_args, tx_num_items, v)
}

uint16_t app_args_total_len = 0;
Expand All @@ -1095,30 +1113,30 @@ static parser_error_t _readTxApplication(parser_context_t *c, parser_tx_t *v)

if (_findKey(c, KEY_APP_GLOBAL_SCHEMA) == parser_ok) {
CHECK_ERROR(_readStateSchema(c, &application->global_schema))
DISPLAY_ITEM(IDX_GLOBAL_SCHEMA, 1, tx_num_items)
DISPLAY_APP_ITEM(IDX_GLOBAL_SCHEMA, 1, tx_num_items, v)
}

if (_findKey(c, KEY_APP_LOCAL_SCHEMA) == parser_ok) {
CHECK_ERROR(_readStateSchema(c, &application->local_schema))
DISPLAY_ITEM(IDX_LOCAL_SCHEMA, 1, tx_num_items)
DISPLAY_APP_ITEM(IDX_LOCAL_SCHEMA, 1, tx_num_items, v)
}

if (_findKey(c, KEY_APP_EXTRA_PAGES) == parser_ok) {
CHECK_ERROR(_readUInt8(c, &application->extra_pages))
if (application->extra_pages > 3){
return parser_too_many_extra_pages;
}
DISPLAY_ITEM(IDX_EXTRA_PAGES, 1, tx_num_items)
DISPLAY_APP_ITEM(IDX_EXTRA_PAGES, 1, tx_num_items, v)
}

if (_findKey(c, KEY_APP_APROG_LEN) == parser_ok) {
CHECK_ERROR(_getPointerBin(c, &application->aprog, &application->aprog_len))
DISPLAY_ITEM(IDX_APPROVE, 1, tx_num_items)
DISPLAY_APP_ITEM(IDX_APPROVE, 1, tx_num_items, v)
}

if (_findKey(c, KEY_APP_CPROG_LEN) == parser_ok) {
CHECK_ERROR(_getPointerBin(c, &application->cprog, &application->cprog_len))
DISPLAY_ITEM(IDX_CLEAR, 1, tx_num_items)
DISPLAY_APP_ITEM(IDX_CLEAR, 1, tx_num_items, v)
}

if (application->id == 0 && application->cprog_len + application->aprog_len > PAGE_LEN *(1+application->extra_pages)){
Expand Down Expand Up @@ -1163,7 +1181,14 @@ parser_error_t _read(parser_context_t *c, parser_tx_t *v)
CHECK_ERROR(_readTxAssetConfig(c, v))
break;
case TX_APPLICATION:
#if defined(TARGET_NANOS) || defined(TARGET_NANOS2) || defined(TARGET_NANOX) || defined(TARGET_STAX) || defined(TARGET_FLEX)
CHECK_ERROR(_readTxApplication(c, v))
if (!app_mode_blindsign()) {
app_mode_skip_blindsign_ui();
}
#else
CHECK_ERROR(_readTxApplication(c, v))
#endif
break;
default:
return parser_unknown_transaction;
Expand Down Expand Up @@ -1222,6 +1247,8 @@ const char *parser_getErrorDescription(parser_error_t err) {
return "display page out of range";
case parser_unexpected_error:
return "Unexpected error in parser";
case parser_blindsign_mode_required:
return "Blind signing mode required";
case parser_unexpected_type:
return "Unexpected type";
case parser_unexpected_method:
Expand Down
2 changes: 1 addition & 1 deletion deps/ledger-secure-sdk
Submodule ledger-secure-sdk updated 152 files
2 changes: 1 addition & 1 deletion deps/ledger-zxlib
Submodule ledger-zxlib updated 59 files
+34 −39 app/common/app_main.c
+31 −30 app/common/app_main.h
+37 −26 app/ui/view.c
+10 −0 app/ui/view.h
+35 −37 app/ui/view_inspect_s.c
+45 −2 app/ui/view_internal.h
+98 −86 app/ui/view_nano.c
+1 −1 app/ui/view_nano.h
+15 −14 app/ui/view_nano_inspect.h
+89 −79 app/ui/view_nbgl.c
+148 −7 app/ui/view_s.c
+339 −118 app/ui/view_x.c
+1 −1 dockerized_build.mk
+32 −33 include/apdu_codes.h
+23 −16 include/app_mode.h
+19 −21 include/base58.h
+1 −1 include/base64.h
+1 −1 include/bech32.h
+1 −1 include/bignum.h
+1 −6 include/bittools.h
+20 −23 include/buffering.h
+15 −15 include/hexutils.h
+8 −35 include/segwit_addr.h
+15 −18 include/sigutils.h
+17 −16 include/timeutils.h
+318 −415 include/utf8.h
+145 −149 include/view_templates.h
+14 −14 include/zxcanary.h
+51 −49 include/zxerror.h
+76 −79 include/zxformat.h
+14 −14 include/zxtypes.h
+2 −3 include/zxutils_ledger.h
+4 −4 include/zxversion.h
+1 −1 scripts/install_deps.sh
+1 −1 scripts/template.sh
+42 −0 src/app_mode.c
+40 −48 src/base58.c
+20 −20 src/base64.c
+20 −23 src/bech32.c
+24 −27 src/bignum.c
+23 −29 src/buffering.c
+24 −25 src/hexutils.c
+14 −22 src/segwit_addr.c
+17 −21 src/sigutils.c
+76 −686 src/timeutils.c
+19 −17 src/zxcanary.c
+30 −30 src/zxformat.c
+133 −134 src/zxutils_ledger.c
+1 −1 templates/Makefile.root
+1 −1 tests/asciify.cpp
+1 −1 tests/base64.cpp
+1 −1 tests/bech32.cpp
+1 −1 tests/bip44path.cpp
+1 −1 tests/buffering_tests.cpp
+1 −1 tests/doubledabble.cpp
+1 −1 tests/hexutils.cpp
+35 −1 tests/macros.cpp
+1 −1 tests/sigutils.cpp
+1 −1 tests/zxformat.cpp
6 changes: 4 additions & 2 deletions tests_zemu/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,15 @@
],
"scripts": {
"clean": "ts-node tests/pullImageKillOld.ts",
"test": "yarn clean && jest --maxConcurrency 2"
"test": "yarn clean && jest --maxConcurrency 2",
"try": "node try.mjs"
},
"dependencies": {
"@zondax/ledger-algorand": "../js",
"@zondax/zemu": "^0.50.2"
"@zondax/zemu": "^0.53.0"
},
"devDependencies": {
"@ledgerhq/hw-transport-node-hid": "^6.29.5",
"@types/jest": "^29.4.0",
"@types/ledgerhq__hw-transport": "^4.21.4",
"@typescript-eslint/eslint-plugin": "^7.17.0",
Expand Down
Binary file modified tests_zemu/snapshots/fl-mainmenu/00001.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified tests_zemu/snapshots/fl-mainmenu/00002.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified tests_zemu/snapshots/fl-mainmenu/00003.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified tests_zemu/snapshots/fl-mainmenu/00004.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed tests_zemu/snapshots/fl-sign_application/00002.png
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified tests_zemu/snapshots/fl-sign_asset_config/00002.png
Binary file modified tests_zemu/snapshots/fl-sign_asset_config/00003.png
Binary file modified tests_zemu/snapshots/fl-sign_asset_freeze/00002.png
Binary file modified tests_zemu/snapshots/fl-sign_asset_freeze/00003.png
Binary file modified tests_zemu/snapshots/fl-sign_asset_transfer/00002.png
Binary file modified tests_zemu/snapshots/fl-sign_asset_transfer/00003.png
Binary file modified tests_zemu/snapshots/fl-sign_keyreg/00000.png
Binary file modified tests_zemu/snapshots/fl-sign_keyreg/00001.png
Binary file modified tests_zemu/snapshots/fl-sign_keyreg/00004.png
Binary file modified tests_zemu/snapshots/fl-sign_keyreg/00005.png
Binary file modified tests_zemu/snapshots/fl-sign_payment/00002.png
Binary file modified tests_zemu/snapshots/fl-sign_payment/00003.png
Binary file modified tests_zemu/snapshots/s-mainmenu/00004.png
Binary file modified tests_zemu/snapshots/s-mainmenu/00005.png
Binary file modified tests_zemu/snapshots/s-mainmenu/00011.png
Binary file modified tests_zemu/snapshots/s-mainmenu/00012.png
Binary file modified tests_zemu/snapshots/s-show_address/00000.png
Binary file modified tests_zemu/snapshots/s-show_address/00001.png
Binary file modified tests_zemu/snapshots/s-show_address/00002.png
Binary file modified tests_zemu/snapshots/s-show_address/00003.png
Binary file modified tests_zemu/snapshots/s-show_address_reject/00000.png
Binary file modified tests_zemu/snapshots/s-show_address_reject/00001.png
Binary file modified tests_zemu/snapshots/s-show_address_reject/00002.png
Binary file modified tests_zemu/snapshots/s-show_address_reject/00003.png
Binary file modified tests_zemu/snapshots/s-show_address_reject/00004.png
Binary file removed tests_zemu/snapshots/s-sign_application/00000.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/s-sign_application_big/00000.png
Diff not rendered.
Binary file modified tests_zemu/snapshots/s-sign_asset_config/00000.png
Binary file modified tests_zemu/snapshots/s-sign_asset_config/00001.png
Binary file modified tests_zemu/snapshots/s-sign_asset_config/00002.png
Binary file modified tests_zemu/snapshots/s-sign_asset_config/00003.png
Binary file modified tests_zemu/snapshots/s-sign_asset_config/00004.png
Binary file modified tests_zemu/snapshots/s-sign_asset_config/00005.png
Binary file modified tests_zemu/snapshots/s-sign_asset_config/00006.png
Binary file modified tests_zemu/snapshots/s-sign_asset_config/00007.png
Binary file modified tests_zemu/snapshots/s-sign_asset_config/00008.png
Binary file modified tests_zemu/snapshots/s-sign_asset_config/00009.png
Binary file modified tests_zemu/snapshots/s-sign_asset_config/00010.png
Binary file modified tests_zemu/snapshots/s-sign_asset_config/00011.png
Binary file modified tests_zemu/snapshots/s-sign_asset_config/00012.png
Binary file modified tests_zemu/snapshots/s-sign_asset_config/00013.png
Binary file modified tests_zemu/snapshots/s-sign_asset_config/00014.png
Binary file modified tests_zemu/snapshots/s-sign_asset_config/00015.png
Binary file modified tests_zemu/snapshots/s-sign_asset_config/00016.png
Binary file removed tests_zemu/snapshots/s-sign_asset_config/00017.png
Diff not rendered.
Binary file modified tests_zemu/snapshots/s-sign_asset_freeze/00000.png
Binary file modified tests_zemu/snapshots/s-sign_asset_freeze/00001.png
Binary file modified tests_zemu/snapshots/s-sign_asset_freeze/00002.png
Binary file modified tests_zemu/snapshots/s-sign_asset_freeze/00003.png
Binary file modified tests_zemu/snapshots/s-sign_asset_freeze/00004.png
Binary file modified tests_zemu/snapshots/s-sign_asset_freeze/00005.png
Binary file modified tests_zemu/snapshots/s-sign_asset_freeze/00006.png
Binary file modified tests_zemu/snapshots/s-sign_asset_freeze/00007.png
Binary file modified tests_zemu/snapshots/s-sign_asset_freeze/00008.png
Binary file modified tests_zemu/snapshots/s-sign_asset_freeze/00009.png
Binary file modified tests_zemu/snapshots/s-sign_asset_freeze/00010.png
Binary file modified tests_zemu/snapshots/s-sign_asset_freeze/00011.png
Binary file removed tests_zemu/snapshots/s-sign_asset_freeze/00012.png
Diff not rendered.
Binary file modified tests_zemu/snapshots/s-sign_asset_transfer/00000.png
Binary file modified tests_zemu/snapshots/s-sign_asset_transfer/00001.png
Binary file modified tests_zemu/snapshots/s-sign_asset_transfer/00002.png
Binary file modified tests_zemu/snapshots/s-sign_asset_transfer/00003.png
Binary file modified tests_zemu/snapshots/s-sign_asset_transfer/00004.png
Binary file modified tests_zemu/snapshots/s-sign_asset_transfer/00005.png
Binary file modified tests_zemu/snapshots/s-sign_asset_transfer/00006.png
Binary file modified tests_zemu/snapshots/s-sign_asset_transfer/00007.png
Binary file modified tests_zemu/snapshots/s-sign_asset_transfer/00008.png
Binary file modified tests_zemu/snapshots/s-sign_asset_transfer/00009.png
Binary file modified tests_zemu/snapshots/s-sign_asset_transfer/00010.png
Binary file modified tests_zemu/snapshots/s-sign_asset_transfer/00011.png
Binary file removed tests_zemu/snapshots/s-sign_asset_transfer/00012.png
Diff not rendered.
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00000.png
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00001.png
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00002.png
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00003.png
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00004.png
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00005.png
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00006.png
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00007.png
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00008.png
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00009.png
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00010.png
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00011.png
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00012.png
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00013.png
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00014.png
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00015.png
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00016.png
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00017.png
Binary file modified tests_zemu/snapshots/s-sign_keyreg/00018.png
Binary file removed tests_zemu/snapshots/s-sign_keyreg/00019.png
Diff not rendered.
Binary file modified tests_zemu/snapshots/s-sign_payment/00000.png
Binary file modified tests_zemu/snapshots/s-sign_payment/00001.png
Binary file modified tests_zemu/snapshots/s-sign_payment/00002.png
Binary file modified tests_zemu/snapshots/s-sign_payment/00003.png
Binary file modified tests_zemu/snapshots/s-sign_payment/00004.png
Binary file modified tests_zemu/snapshots/s-sign_payment/00005.png
Binary file modified tests_zemu/snapshots/s-sign_payment/00006.png
Binary file modified tests_zemu/snapshots/s-sign_payment/00007.png
Binary file modified tests_zemu/snapshots/s-sign_payment/00008.png
Binary file modified tests_zemu/snapshots/s-sign_payment/00009.png
Binary file modified tests_zemu/snapshots/s-sign_payment/00010.png
Binary file modified tests_zemu/snapshots/s-sign_payment/00011.png
Binary file modified tests_zemu/snapshots/s-sign_payment/00012.png
Binary file modified tests_zemu/snapshots/s-sign_payment/00013.png
Binary file modified tests_zemu/snapshots/s-sign_payment/00014.png
Binary file removed tests_zemu/snapshots/s-sign_payment/00015.png
Diff not rendered.
Binary file modified tests_zemu/snapshots/sp-mainmenu/00000.png
Binary file modified tests_zemu/snapshots/sp-mainmenu/00001.png
Binary file modified tests_zemu/snapshots/sp-mainmenu/00002.png
Binary file modified tests_zemu/snapshots/sp-mainmenu/00003.png
Binary file modified tests_zemu/snapshots/sp-mainmenu/00004.png
Binary file modified tests_zemu/snapshots/sp-mainmenu/00005.png
Binary file modified tests_zemu/snapshots/sp-mainmenu/00006.png
Binary file modified tests_zemu/snapshots/sp-mainmenu/00010.png
Binary file modified tests_zemu/snapshots/sp-mainmenu/00011.png
Binary file modified tests_zemu/snapshots/sp-mainmenu/00012.png
Binary file modified tests_zemu/snapshots/sp-mainmenu/00013.png
Binary file modified tests_zemu/snapshots/sp-mainmenu/00014.png
Binary file modified tests_zemu/snapshots/sp-show_address/00001.png
Binary file modified tests_zemu/snapshots/sp-show_address/00002.png
Binary file modified tests_zemu/snapshots/sp-show_address/00004.png
Binary file modified tests_zemu/snapshots/sp-show_address_reject/00001.png
Binary file modified tests_zemu/snapshots/sp-show_address_reject/00002.png
Binary file modified tests_zemu/snapshots/sp-show_address_reject/00004.png
Binary file modified tests_zemu/snapshots/sp-show_address_reject/00005.png
Binary file removed tests_zemu/snapshots/sp-sign_application/00001.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application/00002.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application/00005.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application/00006.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application/00008.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application/00010.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application/00011.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application/00012.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application/00013.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application/00014.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application/00015.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application/00016.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application/00017.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application/00020.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application/00023.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application_big/00001.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application_big/00002.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application_big/00003.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application_big/00005.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application_big/00006.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application_big/00008.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application_big/00010.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application_big/00011.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application_big/00012.png
Diff not rendered.
Binary file removed tests_zemu/snapshots/sp-sign_application_big/00013.png
Diff not rendered.
Loading

0 comments on commit b31b7a1

Please sign in to comment.