From 9d116598d08bc77230a0de363936df088b2641cd Mon Sep 17 00:00:00 2001 From: Pavol Rusnak Date: Sun, 29 Mar 2020 14:34:16 +0000 Subject: [PATCH] common/tools: add segwit sanity checks --- common/tools/coin_info.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/common/tools/coin_info.py b/common/tools/coin_info.py index 6a9d6840f..ddf20aed7 100755 --- a/common/tools/coin_info.py +++ b/common/tools/coin_info.py @@ -183,6 +183,17 @@ def validate_btc(coin): if not coin["max_address_length"] >= coin["min_address_length"]: errors.append("max address length must not be smaller than min address length") + if coin["segwit"]: + if coin["bech32_prefix"] is None: + errors.append("bech32_prefix must be defined for segwit-enabled coin") + if coin["xpub_magic_segwit_p2sh"] is None: + errors.append("xpub_magic_segwit_p2sh must be defined for segwit-enabled coin") + else: + if coin["bech32_prefix"] is not None: + errors.append("bech32_prefix must not be defined for segwit-disabled coin") + if coin["xpub_magic_segwit_p2sh"] is not None: + errors.append("xpub_magic_segwit_p2sh must not be defined for segwit-disabled coin") + for bc in coin["bitcore"] + coin["blockbook"]: if not bc.startswith("https://"): errors.append("make sure URLs start with https://")