From 6b24a045ce2762369c21477725eb0cf4dc74a18a Mon Sep 17 00:00:00 2001 From: tjulien-ledger <84443769+tjulien-ledger@users.noreply.github.com> Date: Wed, 13 Apr 2022 15:37:30 +0200 Subject: [PATCH] Multiple ETH PRs (#289) * adding Conflux espace * adding Moonbeam * kardiachain and bttc * adding Wethio --- icons/nanos_app_bttc.gif | Bin 0 -> 76 bytes icons/nanos_app_conflux_espace.gif | Bin 0 -> 1135 bytes icons/nanos_app_kardiachain.gif | Bin 0 -> 3174 bytes icons/nanos_app_moonbeam.gif | Bin 0 -> 66 bytes icons/nanos_app_wethio.gif | Bin 0 -> 1212 bytes icons/nanox_app_bttc.gif | Bin 0 -> 71 bytes icons/nanox_app_conflux_espace.gif | Bin 0 -> 1122 bytes icons/nanox_app_kardiachain.gif | Bin 0 -> 3172 bytes icons/nanox_app_moonbeam.gif | Bin 0 -> 63 bytes icons/nanox_app_wethio.gif | Bin 0 -> 1200 bytes makefile_conf/chain/bttc.mk | 3 +++ makefile_conf/chain/conflux_espace.mk | 3 +++ makefile_conf/chain/kardiachain.mk | 3 +++ makefile_conf/chain/moonbeam.mk | 3 +++ makefile_conf/chain/wethio.mk | 3 +++ src/chainConfig.h | 7 +++++- src/main.c | 30 ++++++++++++++++++++++++++ src/tokens.c | 10 +++++++++ src/tokens.h | 10 +++++++++ 19 files changed, 71 insertions(+), 1 deletion(-) create mode 100644 icons/nanos_app_bttc.gif create mode 100644 icons/nanos_app_conflux_espace.gif create mode 100644 icons/nanos_app_kardiachain.gif create mode 100644 icons/nanos_app_moonbeam.gif create mode 100644 icons/nanos_app_wethio.gif create mode 100644 icons/nanox_app_bttc.gif create mode 100644 icons/nanox_app_conflux_espace.gif create mode 100644 icons/nanox_app_kardiachain.gif create mode 100644 icons/nanox_app_moonbeam.gif create mode 100644 icons/nanox_app_wethio.gif create mode 100644 makefile_conf/chain/bttc.mk create mode 100644 makefile_conf/chain/conflux_espace.mk create mode 100644 makefile_conf/chain/kardiachain.mk create mode 100644 makefile_conf/chain/moonbeam.mk create mode 100644 makefile_conf/chain/wethio.mk diff --git a/icons/nanos_app_bttc.gif b/icons/nanos_app_bttc.gif new file mode 100644 index 0000000000000000000000000000000000000000..475509535ba195e6d84ea9750386c5294f72a43c GIT binary patch literal 76 zcmZ?wbhEHb6krfwXkY+=|Ns9h{$v3&bwDIYhJi`Br+?+?w+wR|HwG#=U!C#ww(8X# XH4Dw>s=C>}*;cg5=+L5-Vhq**B%>Ls literal 0 HcmV?d00001 diff --git a/icons/nanos_app_conflux_espace.gif b/icons/nanos_app_conflux_espace.gif new file mode 100644 index 0000000000000000000000000000000000000000..02e79313141d7ade1247b0ec523542ea288a0d76 GIT binary patch literal 1135 zcmZ?wbhEHb6krfwXkY+=|Ns9h{^ySH4N!1NEJ*~?Hue<-iOJciB??KY>6v-9O7C~? zS5nAKu~iB;^)>Jhm3bwJ6}oxF$}kgLQj3#|G7CyF^YauyCMG83mzLNn z0UZnRMQ#Dy*t}vru#fbT^KIbD3=a&{GrvjBLgRCmBaxO|uEXgkl$VOA1WZ66COq*1Iq>A4ng>ktMZm<(`2XMEKfizd{PF$U z*Ds$xef;qL-P<>>U%h}$>=IY|?mo_rKzE=rmCW>q^KY-Co3Z@B`F~;CMqH&FX#K^#) z_>%=(Sm=OAP}#x2q|(#B^7LE=W|mJEqSh~rI=w?tTsv4q}24xJX`hmyZ5UrWTx1vhnxBu_!c;)W@LI) z6{QAO`Gq7`WhYyvsN36d*;H6n?69D>BnU^7C^P42|>*&D4R06s4qD1-ZCEjR5j&)iX*;3as??%gf94%8m8% zi_-NCEiEne4UF`SjC6r2bc-wVN)jt{^NN*$CU7Z$&2ULAPAn4M}uoLxJU{Ck`#}ouF>EkDFjGTJes;j zgNvjPAW88sN?nL{ZE7B{F%#K*@}C@U!{ z$jiyfNJ~jdh>MAe2nz`c@bmHVaC32Tu(PqUFf#!=2|A$80jS5oz@*yKzw-260fwHS jt6tA13K!+n1hTcMrYA}@cbyMiHbwZ_m)_^@j11NQgf~t( literal 0 HcmV?d00001 diff --git a/icons/nanos_app_moonbeam.gif b/icons/nanos_app_moonbeam.gif new file mode 100644 index 0000000000000000000000000000000000000000..2a254b24bd27e10c3691f3c7dcbd18d23c2bf93c GIT binary patch literal 66 zcmZ?wbhEHb6krfwXkY+=|Ns9h{$v3&bwDIYhJi`4r+?+?w+wR|zg*n4Zdy?CJ;p}% MqVUdTzKjgk05yFR#Q*>R literal 0 HcmV?d00001 diff --git a/icons/nanos_app_wethio.gif b/icons/nanos_app_wethio.gif new file mode 100644 index 0000000000000000000000000000000000000000..e6765600b5fb4ce9b51e0a2155310bcfeb7e0293 GIT binary patch literal 1212 zcmZ?wbhEHb6krfwXkcJ?{ra_mfq~+G?g-xi1((Eh+i z#(Mch>H3D2mX`VkM*2oZxf(^ff>iyW z)Z+ZoqU2Pda%GriVA$ce2&53`8Y};zOkkuW=D6f1m*%GCm3X??DgkBmQZiGlER!tF zEle#8bd62ZjC3tbOw4sH%q=W+lP!!BEiF@05)+M+Vdh}d?`mXf>S*TX;%shWXlUr_ zXlZF~>FR1^>}uiYWZ-IP0@Lf6S6q^qmz)Z-I}>O(RIf8$y;jaesfi`|MIrh5Ij~d^ zkda@KU!0L&pkQREXQZGJo|%`DUtX*UiX(`ZT~doO%TiO^it=+6z=3R)iNyh?rp75| z<|fIyK#!*C8XK4->RMVPrRXME8k;1UrI{vLBw8pz^{0>4Q=VQp$k|0h1$$ z3C{;W4m>BN<^i)$5ip-H{{Q#)&+lJ9e|-P;^~>i^A3wZ*_x8=}S1(^YfA;jr<3|r4 z+`o7C&h1+_Z(P52^~&W-7cZPYclONbQzuUxKX&xU;X?-x?BBO{&+c72cWmFbb<5^W z8#k<9w|33yRV!C4U$%6~;zbJ=%%3-R&g@w;XH1_qb;{&P6DRcd_4agkb#}D3wYD@j zH8#}O)z(y3RaTUjm6jA26&B>@<>q8(WoD$OrKTh&B__nj#l}QOMMi{&g@yzN1qS&0 z`TBT!d3w0Jxw<$zIXc+e+1glJSz4HznVJ|I85-#8>FQ`}X=X%Qf#{U(l;t%soaUJs?xCmxz1<$L>R0A&Zw*4 literal 0 HcmV?d00001 diff --git a/icons/nanox_app_bttc.gif b/icons/nanox_app_bttc.gif new file mode 100644 index 0000000000000000000000000000000000000000..4b0b8d4d8acade89dfbb2926c02ba68de6937b9d GIT binary patch literal 71 zcmZ?wbhEHb literal 0 HcmV?d00001 diff --git a/icons/nanox_app_conflux_espace.gif b/icons/nanox_app_conflux_espace.gif new file mode 100644 index 0000000000000000000000000000000000000000..8b74623ee851cc15b3301f0220e9956f7fe2f52b GIT binary patch literal 1122 zcmZ?wbhEHbTBRz;GCL~=}}db8eHWUl3bOYY?-2DZ>L~WVFlEiTau_y zk(-lOY*k^al$esAlxhWJ=cbk<>MJRLRg`4gDmj8A6e4^B6rA&mQWebg40V$Y3=9;^ zE%j1U5{;6K(-M<)6pRdv4D}6x$XwUZ+{(z<%Ft2)0+fK(6{VzE1-ZCEZ3FUbl`=|7 z3as??%ggo3jrH=2()A53EiLs8jP#9+bb$(Vi!1Yh9@Nb%R)!hil3JWxlvz-cnV+Ws zGB7bIzqI7PtrF0!5KrV5z>Uo-)&qM;FF8L~zap_f-%!s0^k2 zg-mftP%6T;SQQtCR2HP_2c;J0mlh?b0+lO+EGn>aE=o--$uA1Y&(DE{Vn9ZINq%ug zeu09Kv7VuVhHqkWW*$gHQwgZU*VoE3uec;JFFDoI#TF!@mzkMjWo%^bXy#^YVQg$> zXz1!}>11T?=3-`UWa?(*Xz|~|2y7cruSMv>2~=+iT&sZzcD+EYprin{IJGFV zEH%ZgC_h&L>}9J=oGvji#9^EgRBH;VL-debVuY#{>ItAj^notX2gNE@{ z(ZdJ#@7=v~`_|1H*RNi=eCgta^XJZZ;0$^0LyB;-bQW{Jh+p?5xa;^t9BJ|cQ;oTXD3GodplbjYb#3&b2C#DVqwaWPR5VIe^Qem-6vZZ1wv4t6$H7G@?!1_m8a=>RG+7?>1#`d3On_l^mD=Epg zRR_Dp%F4AOGc6=PKS#mPNYBtr9cV~VN}5%WiyPDkAkS7kqokz3N?*Ucyj-u`STDaQ zUEk2s(o)~RNZ-gv7pOwFxH7LKu|hYmSQ%&nmjc)fm(=3qqRfJl%=|nBkeP`|`K2Yc z>grqyP@_vS(-3Co73+bWs+XLfs}GXVH`FuG2b!j!U<2Y>`4?rT0xbawR)Qi1 zv{fHu4U)A$&wz!1z5y}ep#w6M_F&W!lEQd2xJHAEq!1uU@o4HA4K9*GfF#AEscSU2 zND2Xx6c3}+g=p8N<^dbC<-k@e-^T+pZU%!0*^zp;{cW>Xke)aOj^Jh<= zJbv`>!To!8@7%t1^TzdSSFc>Ybn(LZb7#+-K6UcM@nc7i96ogL!2W%E_w3%abI0~= zTeoc9v~k1wb!*qGUbS+?@?}exEMBy5!Tfo1=ggipbH?;(Q>RRxG;umQ)5GYU2RQuRb@qaS!qdeQDH%TUT#iyR%S+eT53viQer}UTx?8qRAfYWSZGLa zP+)++pRbR%m#2rjo2!enlcR&Zovn?vm8FHbnW>4fk)eUUp019zmZpZfnyQMjlA?mV zoUDwrl%#~Xn5c-bke~oRA1@C#7bgch8!HPl6R?+{1L_@sx(p0VN-g~>s~I24xfGwO e=xvVqel{^Sxl(XhjdJKz&(j%2KG)qC8LR;V-AvB_ literal 0 HcmV?d00001 diff --git a/icons/nanox_app_moonbeam.gif b/icons/nanox_app_moonbeam.gif new file mode 100644 index 0000000000000000000000000000000000000000..0da2ed11b8cf475c072bef34c0dbb1de9c486924 GIT binary patch literal 63 zcmZ?wbhEHb5fI0flIR#Lt9p;sw&qHvhc4eHX7~cTu5i3@AP>(MA4Bt7Wwwy zJYgUzMxErD=!bybq@(v)&<@&@8i7tI!!%SSuSl{eGbAq-I8qh_iIgQ-A$6GtieUi2 z>-97ngQqxAj7QVSgd|j0mQBSKMN(2JE+xmuF)2l;W7};%0JaY6)Fz^?VG{@<gC= zA5b;nK@d1z&T)F{4bV|^0>>{pF3zzOhmYP&-V_f9=&*UViDt7lxi+`P{S5JiX$nC!cuyu}7Cbvh3l99$dQQ zfyMXVx9Hw`?!N2JJ8r-2)?04A>Bbwbzi#2R*Ia$ol~*jd{IW~uUvlw97hZ7wyt(Ji zIrp5i&ze2!%rj=5K6u)xr<^?Fq!Uj#eqegJ)ZZ8Q-f^yDTfIHUn#Jw{H1s?;=IEo2 zoHn)Vh$)?iAC}8a&K}w^X=3J(gAZz-Fg~41CdS1NY-`nGV^u|#qN2caEJIUd%K`h3 z8NJ`W`|KSdn(@6x?YYP9yY0Hm&O7bcw8Qq>Z9B4Yo2^G|wdEF@Z?@_1O&W$_SW9@( ugtrgY5E-0fE?>1G7vonhX;|C^S8Jmd&7C^fKW+X3a-lje(j{auZ0w&2cBqm7 literal 0 HcmV?d00001 diff --git a/makefile_conf/chain/bttc.mk b/makefile_conf/chain/bttc.mk new file mode 100644 index 0000000..af96c73 --- /dev/null +++ b/makefile_conf/chain/bttc.mk @@ -0,0 +1,3 @@ +APP_LOAD_PARAMS += --path "44'/60'" +DEFINES += CHAINID_UPCASE=\"BTTC\" CHAINID_COINNAME=\"BTT\" CHAIN_KIND=CHAIN_KIND_BTTC CHAIN_ID=199 +APPNAME = "BTTC" \ No newline at end of file diff --git a/makefile_conf/chain/conflux_espace.mk b/makefile_conf/chain/conflux_espace.mk new file mode 100644 index 0000000..ba67289 --- /dev/null +++ b/makefile_conf/chain/conflux_espace.mk @@ -0,0 +1,3 @@ +APP_LOAD_PARAMS += --path "44'/60'" +DEFINES += CHAINID_UPCASE=\"CONFLUX\" CHAINID_COINNAME=\"CFX\" CHAIN_KIND=CHAIN_KIND_CONFLUX_ESPACE CHAIN_ID=1030 +APPNAME = "Conflux eSpace" \ No newline at end of file diff --git a/makefile_conf/chain/kardiachain.mk b/makefile_conf/chain/kardiachain.mk new file mode 100644 index 0000000..bff1af8 --- /dev/null +++ b/makefile_conf/chain/kardiachain.mk @@ -0,0 +1,3 @@ +APP_LOAD_PARAMS += --path "44'/60'" +DEFINES += CHAINID_UPCASE=\"KARDIACHAIN\" CHAINID_COINNAME=\"KAI\" CHAIN_KIND=CHAIN_KIND_KARDIACHAIN CHAIN_ID=24 +APPNAME = "KardiaChain" \ No newline at end of file diff --git a/makefile_conf/chain/moonbeam.mk b/makefile_conf/chain/moonbeam.mk new file mode 100644 index 0000000..c243367 --- /dev/null +++ b/makefile_conf/chain/moonbeam.mk @@ -0,0 +1,3 @@ +APP_LOAD_PARAMS += --path "44'/60'" --path "44'/1284'" +DEFINES += CHAINID_UPCASE=\"MOONBEAM\" CHAINID_COINNAME=\"GLMR\" CHAIN_KIND=CHAIN_KIND_MOONBEAM CHAIN_ID=1284 +APPNAME = "Moonbeam" \ No newline at end of file diff --git a/makefile_conf/chain/wethio.mk b/makefile_conf/chain/wethio.mk new file mode 100644 index 0000000..06fe6f9 --- /dev/null +++ b/makefile_conf/chain/wethio.mk @@ -0,0 +1,3 @@ +APP_LOAD_PARAMS += --path "44'/77777'" +DEFINES += CHAINID_UPCASE=\"WETHIO\" CHAINID_COINNAME=\"ZYN\" CHAIN_KIND=CHAIN_KIND_WETHIO CHAIN_ID=78 +APPNAME = "Wethio" \ No newline at end of file diff --git a/src/chainConfig.h b/src/chainConfig.h index 0fe3834..91aabe0 100644 --- a/src/chainConfig.h +++ b/src/chainConfig.h @@ -58,7 +58,12 @@ typedef enum chain_kind_e { CHAIN_KIND_BSC, CHAIN_KIND_SONGBIRD, CHAIN_KIND_POLYGON, - CHAIN_KIND_SHYFT + CHAIN_KIND_SHYFT, + CHAIN_KIND_CONFLUX_ESPACE, + CHAIN_KIND_MOONBEAM, + CHAIN_KIND_BTTC, + CHAIN_KIND_KARDIACHAIN, + CHAIN_KIND_WETHIO } chain_kind_t; typedef struct chain_config_s { diff --git a/src/main.c b/src/main.c index dfb6ae2..0cd2025 100644 --- a/src/main.c +++ b/src/main.c @@ -269,6 +269,21 @@ extraInfo_t *getKnownToken(uint8_t *contractAddress) { case CHAIN_KIND_SHYFT: numTokens = NUM_TOKENS_SHYFT; break; + case CHAIN_KIND_CONFLUX_ESPACE: + numTokens = NUM_TOKENS_CONFLUX_ESPACE; + break; + case CHAIN_KIND_MOONBEAM: + numTokens = NUM_TOKENS_MOONBEAM; + break; + case CHAIN_KIND_KARDIACHAIN: + numTokens = NUM_TOKENS_KARDIACHAIN; + break; + case CHAIN_KIND_BTTC: + numTokens = NUM_TOKENS_BTTC; + break; + case CHAIN_KIND_WETHIO: + numTokens = NUM_TOKENS_WETHIO; + break; } for (i = 0; i < numTokens; i++) { switch (chainConfig->kind) { @@ -380,6 +395,21 @@ extraInfo_t *getKnownToken(uint8_t *contractAddress) { case CHAIN_KIND_SHYFT: currentToken = (tokenDefinition_t *) PIC(&TOKENS_SHYFT[i]); break; + case CHAIN_KIND_CONFLUX_ESPACE: + currentToken = (tokenDefinition_t *) PIC(&TOKENS_CONFLUX_ESPACE[i]); + break; + case CHAIN_KIND_MOONBEAM: + currentToken = (tokenDefinition_t *) PIC(&TOKENS_MOONBEAM[i]); + break; + case CHAIN_KIND_BTTC: + currentToken = (tokenDefinition_t *) PIC(&TOKENS_BTTC[i]); + break; + case CHAIN_KIND_KARDIACHAIN: + currentToken = (tokenDefinition_t *) PIC(&TOKENS_KARDIACHAIN[i]); + break; + case CHAIN_KIND_WETHIO: + currentToken = (tokenDefinition_t *) PIC(&TOKENS_WETHIO[i]); + break; } if (memcmp(currentToken->address, tmpContent.txContent.destination, ADDRESS_LENGTH) == 0) { return currentToken; diff --git a/src/tokens.c b/src/tokens.c index e1ddb5f..0347ec4 100644 --- a/src/tokens.c +++ b/src/tokens.c @@ -194,4 +194,14 @@ const tokenDefinition_t const TOKENS_POLYGON[NUM_TOKENS_POLYGON] = {}; const tokenDefinition_t const TOKENS_SHYFT[NUM_TOKENS_SHYFT] = {}; +const tokenDefinition_t const TOKENS_CONFLUX_ESPACE[NUM_TOKENS_CONFLUX_ESPACE] = {}; + +const tokenDefinition_t const TOKENS_MOONBEAM[NUM_TOKENS_MOONBEAM] = {}; + +const tokenDefinition_t const TOKENS_BTTC[NUM_TOKENS_BTTC] = {}; + +const tokenDefinition_t const TOKENS_KARDIACHAIN[NUM_TOKENS_KARDIACHAIN] = {}; + +const tokenDefinition_t const TOKENS_WETHIO[NUM_TOKENS_WETHIO] = {}; + #endif diff --git a/src/tokens.h b/src/tokens.h index ea69628..eb4a14e 100644 --- a/src/tokens.h +++ b/src/tokens.h @@ -101,6 +101,11 @@ static const uint8_t LEDGER_SIGNATURE_PUBLIC_KEY[] = { #define NUM_TOKENS_MOONRIVER 0 #define NUM_TOKENS_POLYGON 0 #define NUM_TOKENS_SHYFT 0 +#define NUM_TOKENS_CONFLUX_ESPACE 0 +#define NUM_TOKENS_MOONBEAM 0 +#define NUM_TOKENS_BTTC 0 +#define NUM_TOKENS_KARDIACHAIN 0 +#define NUM_TOKENS_WETHIO 0 extern tokenDefinition_t const TOKENS_AKROMA[NUM_TOKENS_AKROMA]; extern tokenDefinition_t const TOKENS_ELLAISM[NUM_TOKENS_ELLAISM]; @@ -138,6 +143,11 @@ extern tokenDefinition_t const TOKENS_SONGBIRD[NUM_TOKENS_SONGBIRD]; extern tokenDefinition_t const TOKENS_MOONRIVER[NUM_TOKENS_MOONRIVER]; extern tokenDefinition_t const TOKENS_POLYGON[NUM_TOKENS_POLYGON]; extern tokenDefinition_t const TOKENS_SHYFT[NUM_TOKENS_SHYFT]; +extern tokenDefinition_t const TOKENS_CONFLUX_ESPACE[NUM_TOKENS_CONFLUX_ESPACE]; +extern tokenDefinition_t const TOKENS_MOONBEAM[NUM_TOKENS_MOONBEAM]; +extern tokenDefinition_t const TOKENS_BTTC[NUM_TOKENS_BTTC]; +extern tokenDefinition_t const TOKENS_KARDIACHAIN[NUM_TOKENS_KARDIACHAIN]; +extern tokenDefinition_t const TOKENS_WETHIO[NUM_TOKENS_WETHIO]; #endif /* HAVE_TOKENS_LIST */