From c8360741a47c01731d2cdb4dda6e3f3b46c97254 Mon Sep 17 00:00:00 2001 From: Alexandre Paillier Date: Fri, 16 Jun 2023 15:52:43 +0200 Subject: [PATCH] Activated ENS on other Ethereum-compatible chains --- src_common/network.c | 4 ++++ src_common/network.h | 2 ++ src_features/provideDomainName/cmd_provide_domain_name.c | 5 +++-- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src_common/network.c b/src_common/network.c index 410baab..9959ee4 100644 --- a/src_common/network.c +++ b/src_common/network.c @@ -92,3 +92,7 @@ const char *get_network_ticker_from_chain_id(const uint64_t *chain_id) { } return PIC(net->ticker); } + +bool chain_is_ethereum_compatible(const uint64_t *chain_id) { + return get_network_from_chain_id(chain_id) != NULL; +} diff --git a/src_common/network.h b/src_common/network.h index 7980c16..8361bcb 100644 --- a/src_common/network.h +++ b/src_common/network.h @@ -7,4 +7,6 @@ const char *get_network_name_from_chain_id(const uint64_t *chain_id); const char *get_network_ticker_from_chain_id(const uint64_t *chain_id); +bool chain_is_ethereum_compatible(const uint64_t *chain_id); + #endif // _NETWORK_H_ diff --git a/src_features/provideDomainName/cmd_provide_domain_name.c b/src_features/provideDomainName/cmd_provide_domain_name.c index 0d0849f..8cd974b 100644 --- a/src_features/provideDomainName/cmd_provide_domain_name.c +++ b/src_features/provideDomainName/cmd_provide_domain_name.c @@ -10,6 +10,7 @@ #include "challenge.h" #include "mem.h" #include "hash_bytes.h" +#include "network.h" static const uint8_t DOMAIN_NAME_PUB_KEY[] = { #ifdef HAVE_DOMAIN_NAME_TEST_KEY @@ -124,8 +125,8 @@ bool has_domain_name(const uint64_t *chain_id, const uint8_t *addr) { bool ret = false; if (g_domain_name_info.valid) { - // TODO: Remove once other domain name providers are supported - if ((*chain_id == ETHEREUM_MAINNET_CHAINID) && + // Check if chain ID is known to be Ethereum-compatible (same derivation path) + if ((chain_is_ethereum_compatible(chain_id)) && (memcmp(addr, g_domain_name_info.addr, ADDRESS_LENGTH) == 0)) { ret = true; }