2018-06-21 13:14:34 +00:00
|
|
|
from trezorlib import protobuf as p
|
|
|
|
|
|
|
|
|
|
|
|
class CoinDef(p.MessageType):
|
|
|
|
FIELDS = {
|
|
|
|
1: ('coin_name', p.UnicodeType, 0),
|
|
|
|
2: ('coin_shortcut', p.UnicodeType, 0),
|
|
|
|
3: ('coin_label', p.UnicodeType, 0),
|
|
|
|
4: ('curve_name', p.UnicodeType, 0),
|
|
|
|
5: ('address_type', p.UVarintType, 0),
|
|
|
|
6: ('address_type_p2sh', p.UVarintType, 0),
|
|
|
|
7: ('maxfee_kb', p.UVarintType, 0),
|
|
|
|
8: ('minfee_kb', p.UVarintType, 0),
|
|
|
|
9: ('signed_message_header', p.BytesType, 0),
|
|
|
|
10: ('hash_genesis_block', p.BytesType, 0),
|
|
|
|
11: ('xprv_magic', p.UVarintType, 0),
|
|
|
|
12: ('xpub_magic', p.UVarintType, 0),
|
|
|
|
13: ('xpub_magic_segwit_p2sh', p.UVarintType, 0),
|
|
|
|
14: ('xpub_magic_segwit_native', p.UVarintType, 0),
|
|
|
|
15: ('bech32_prefix', p.UnicodeType, 0),
|
|
|
|
16: ('cashaddr_prefix', p.UnicodeType, 0),
|
|
|
|
17: ('slip44', p.UVarintType, 0),
|
|
|
|
18: ('segwit', p.BoolType, 0),
|
|
|
|
19: ('decred', p.BoolType, 0),
|
|
|
|
20: ('fork_id', p.UVarintType, 0),
|
|
|
|
21: ('force_bip143', p.BoolType, 0),
|
|
|
|
22: ('dust_limit', p.UVarintType, 0),
|
2018-07-16 12:48:47 +00:00
|
|
|
23: ('uri_prefix', p.UnicodeType, 0),
|
2018-06-21 13:14:34 +00:00
|
|
|
24: ('min_address_length', p.UVarintType, 0),
|
|
|
|
25: ('max_address_length', p.UVarintType, 0),
|
|
|
|
26: ('icon', p.BytesType, 0),
|
|
|
|
28: ('website', p.UnicodeType, 0),
|
|
|
|
29: ('github', p.UnicodeType, 0),
|
|
|
|
30: ('maintainer', p.UnicodeType, 0),
|
|
|
|
31: ('blocktime_seconds', p.UVarintType, 0),
|
2018-06-28 12:52:53 +00:00
|
|
|
32: ('bip115', p.BoolType, 0),
|
2018-07-30 10:08:52 +00:00
|
|
|
33: ('cooldown', p.UVarintType, 0),
|
2018-06-21 13:14:34 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
def __init__(
|
|
|
|
self,
|
|
|
|
coin_name: str = None,
|
|
|
|
coin_shortcut: str = None,
|
|
|
|
coin_label: str = None,
|
|
|
|
curve_name: str = None,
|
|
|
|
address_type: int = None,
|
|
|
|
address_type_p2sh: int = None,
|
|
|
|
maxfee_kb: int = None,
|
|
|
|
minfee_kb: int = None,
|
|
|
|
signed_message_header: bytes = None,
|
|
|
|
hash_genesis_block: bytes = None,
|
|
|
|
xprv_magic: int = None,
|
|
|
|
xpub_magic: int = None,
|
|
|
|
xpub_magic_segwit_p2sh: int = None,
|
|
|
|
xpub_magic_segwit_native: int = None,
|
|
|
|
bech32_prefix: str = None,
|
|
|
|
cashaddr_prefix: str = None,
|
|
|
|
slip44: int = None,
|
|
|
|
segwit: bool = None,
|
|
|
|
decred: bool = None,
|
|
|
|
fork_id: int = None,
|
|
|
|
force_bip143: bool = None,
|
2018-06-28 12:52:53 +00:00
|
|
|
bip115: bool = None,
|
2018-06-21 13:14:34 +00:00
|
|
|
dust_limit: int = None,
|
2018-07-16 12:48:47 +00:00
|
|
|
uri_prefix: str = None,
|
2018-06-21 13:14:34 +00:00
|
|
|
min_address_length: int = None,
|
|
|
|
max_address_length: int = None,
|
|
|
|
icon: bytes = None,
|
|
|
|
website: str = None,
|
|
|
|
github: str = None,
|
|
|
|
maintainer: str = None,
|
|
|
|
blocktime_seconds: int = None,
|
|
|
|
default_fee_b: dict = None,
|
|
|
|
bitcore: dict = None,
|
2018-07-30 10:08:52 +00:00
|
|
|
blockbook: dict = None,
|
|
|
|
cooldown: int = None
|
2018-06-21 13:14:34 +00:00
|
|
|
):
|
|
|
|
self.coin_name = coin_name
|
|
|
|
self.coin_shortcut = coin_shortcut
|
|
|
|
self.coin_label = coin_label
|
|
|
|
self.curve_name = curve_name
|
|
|
|
self.address_type = address_type
|
|
|
|
self.address_type_p2sh = address_type_p2sh
|
|
|
|
self.maxfee_kb = maxfee_kb
|
|
|
|
self.minfee_kb = minfee_kb
|
|
|
|
self.signed_message_header = signed_message_header
|
|
|
|
self.hash_genesis_block = hash_genesis_block
|
|
|
|
self.xprv_magic = xprv_magic
|
|
|
|
self.xpub_magic = xpub_magic
|
|
|
|
self.xpub_magic_segwit_p2sh = xpub_magic_segwit_p2sh
|
|
|
|
self.xpub_magic_segwit_native = xpub_magic_segwit_native
|
|
|
|
self.bech32_prefix = bech32_prefix
|
|
|
|
self.cashaddr_prefix = cashaddr_prefix
|
|
|
|
self.slip44 = slip44
|
|
|
|
self.segwit = segwit
|
|
|
|
self.decred = decred
|
|
|
|
self.fork_id = fork_id
|
|
|
|
self.force_bip143 = force_bip143
|
2018-06-28 12:52:53 +00:00
|
|
|
self.bip115 = bip115
|
2018-06-21 13:14:34 +00:00
|
|
|
self.dust_limit = dust_limit
|
2018-07-16 12:48:47 +00:00
|
|
|
self.uri_prefix = uri_prefix
|
2018-06-21 13:14:34 +00:00
|
|
|
self.min_address_length = min_address_length
|
|
|
|
self.max_address_length = max_address_length
|
|
|
|
self.icon = icon
|
|
|
|
self.website = website
|
|
|
|
self.github = github
|
|
|
|
self.maintainer = maintainer
|
|
|
|
self.blocktime_seconds = blocktime_seconds
|
|
|
|
self.default_fee_b = default_fee_b
|
|
|
|
self.bitcore = bitcore
|
|
|
|
self.blockbook = blockbook
|
2018-07-30 10:08:52 +00:00
|
|
|
self.cooldown = cooldown
|
2018-06-21 13:14:34 +00:00
|
|
|
p.MessageType.__init__(self)
|