1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2025-04-20 09:09:02 +00:00

feat(core): Add mac field to altcoin Address response messages.

This commit is contained in:
Andrew Kozlik 2025-04-15 16:13:11 +02:00
parent 4b653d455e
commit 175c8db3d5
12 changed files with 643 additions and 339 deletions

View File

@ -183,6 +183,7 @@ message CardanoGetAddress {
*/
message CardanoAddress {
required string address = 1; // Base58 cardano address
optional bytes mac = 2; // Address authentication code
}
/**

View File

@ -22,6 +22,7 @@ message RippleGetAddress {
*/
message RippleAddress {
required string address = 1; // Address in Ripple format (base58 of a pubkey with checksum)
optional bytes mac = 2; // Address authentication code
}
/**

View File

@ -38,6 +38,7 @@ message SolanaGetAddress {
*/
message SolanaAddress {
required string address = 1; // Solana address as Base58 encoded string
optional bytes mac = 2; // Address authentication code
}
/**

View File

@ -40,6 +40,7 @@ message StellarGetAddress {
*/
message StellarAddress {
required string address = 1; // Address in Stellar format (base32 of a pubkey with checksum)
optional bytes mac = 2; // Address authentication code
}
/**

View File

@ -23,6 +23,7 @@ message TezosGetAddress {
*/
message TezosAddress {
required string address = 1; // Coin address in Base58 encoding
optional bytes mac = 2; // Address authentication code
}
/**

View File

@ -1420,11 +1420,13 @@ if TYPE_CHECKING:
class CardanoAddress(protobuf.MessageType):
address: "str"
mac: "bytes | None"
def __init__(
self,
*,
address: "str",
mac: "bytes | None" = None,
) -> None:
pass
@ -5364,11 +5366,13 @@ if TYPE_CHECKING:
class RippleAddress(protobuf.MessageType):
address: "str"
mac: "bytes | None"
def __init__(
self,
*,
address: "str",
mac: "bytes | None" = None,
) -> None:
pass
@ -5486,11 +5490,13 @@ if TYPE_CHECKING:
class SolanaAddress(protobuf.MessageType):
address: "str"
mac: "bytes | None"
def __init__(
self,
*,
address: "str",
mac: "bytes | None" = None,
) -> None:
pass
@ -5602,11 +5608,13 @@ if TYPE_CHECKING:
class StellarAddress(protobuf.MessageType):
address: "str"
mac: "bytes | None"
def __init__(
self,
*,
address: "str",
mac: "bytes | None" = None,
) -> None:
pass
@ -6000,11 +6008,13 @@ if TYPE_CHECKING:
class TezosAddress(protobuf.MessageType):
address: "str"
mac: "bytes | None"
def __init__(
self,
*,
address: "str",
mac: "bytes | None" = None,
) -> None:
pass

View File

@ -2461,14 +2461,17 @@ class CardanoAddress(protobuf.MessageType):
MESSAGE_WIRE_TYPE = 308
FIELDS = {
1: protobuf.Field("address", "string", repeated=False, required=True),
2: protobuf.Field("mac", "bytes", repeated=False, required=False, default=None),
}
def __init__(
self,
*,
address: "str",
mac: Optional["bytes"] = None,
) -> None:
self.address = address
self.mac = mac
class CardanoGetPublicKey(protobuf.MessageType):
@ -6947,14 +6950,17 @@ class RippleAddress(protobuf.MessageType):
MESSAGE_WIRE_TYPE = 401
FIELDS = {
1: protobuf.Field("address", "string", repeated=False, required=True),
2: protobuf.Field("mac", "bytes", repeated=False, required=False, default=None),
}
def __init__(
self,
*,
address: "str",
mac: Optional["bytes"] = None,
) -> None:
self.address = address
self.mac = mac
class RippleSignTx(protobuf.MessageType):
@ -7081,14 +7087,17 @@ class SolanaAddress(protobuf.MessageType):
MESSAGE_WIRE_TYPE = 903
FIELDS = {
1: protobuf.Field("address", "string", repeated=False, required=True),
2: protobuf.Field("mac", "bytes", repeated=False, required=False, default=None),
}
def __init__(
self,
*,
address: "str",
mac: Optional["bytes"] = None,
) -> None:
self.address = address
self.mac = mac
class SolanaTxTokenAccountInfo(protobuf.MessageType):
@ -7206,14 +7215,17 @@ class StellarAddress(protobuf.MessageType):
MESSAGE_WIRE_TYPE = 208
FIELDS = {
1: protobuf.Field("address", "string", repeated=False, required=True),
2: protobuf.Field("mac", "bytes", repeated=False, required=False, default=None),
}
def __init__(
self,
*,
address: "str",
mac: Optional["bytes"] = None,
) -> None:
self.address = address
self.mac = mac
class StellarSignTx(protobuf.MessageType):
@ -7672,14 +7684,17 @@ class TezosAddress(protobuf.MessageType):
MESSAGE_WIRE_TYPE = 151
FIELDS = {
1: protobuf.Field("address", "string", repeated=False, required=True),
2: protobuf.Field("mac", "bytes", repeated=False, required=False, default=None),
}
def __init__(
self,
*,
address: "str",
mac: Optional["bytes"] = None,
) -> None:
self.address = address
self.mac = mac
class TezosGetPublicKey(protobuf.MessageType):

View File

@ -1693,6 +1693,8 @@ pub struct CardanoAddress {
// message fields
// @@protoc_insertion_point(field:hw.trezor.messages.cardano.CardanoAddress.address)
pub address: ::std::option::Option<::std::string::String>,
// @@protoc_insertion_point(field:hw.trezor.messages.cardano.CardanoAddress.mac)
pub mac: ::std::option::Option<::std::vec::Vec<u8>>,
// special fields
// @@protoc_insertion_point(special_field:hw.trezor.messages.cardano.CardanoAddress.special_fields)
pub special_fields: ::protobuf::SpecialFields,
@ -1745,14 +1747,55 @@ impl CardanoAddress {
self.address.take().unwrap_or_else(|| ::std::string::String::new())
}
// optional bytes mac = 2;
pub fn mac(&self) -> &[u8] {
match self.mac.as_ref() {
Some(v) => v,
None => &[],
}
}
pub fn clear_mac(&mut self) {
self.mac = ::std::option::Option::None;
}
pub fn has_mac(&self) -> bool {
self.mac.is_some()
}
// Param is passed by value, moved
pub fn set_mac(&mut self, v: ::std::vec::Vec<u8>) {
self.mac = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_mac(&mut self) -> &mut ::std::vec::Vec<u8> {
if self.mac.is_none() {
self.mac = ::std::option::Option::Some(::std::vec::Vec::new());
}
self.mac.as_mut().unwrap()
}
// Take field
pub fn take_mac(&mut self) -> ::std::vec::Vec<u8> {
self.mac.take().unwrap_or_else(|| ::std::vec::Vec::new())
}
fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
let mut fields = ::std::vec::Vec::with_capacity(1);
let mut fields = ::std::vec::Vec::with_capacity(2);
let mut oneofs = ::std::vec::Vec::with_capacity(0);
fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
"address",
|m: &CardanoAddress| { &m.address },
|m: &mut CardanoAddress| { &mut m.address },
));
fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
"mac",
|m: &CardanoAddress| { &m.mac },
|m: &mut CardanoAddress| { &mut m.mac },
));
::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<CardanoAddress>(
"CardanoAddress",
fields,
@ -1777,6 +1820,9 @@ impl ::protobuf::Message for CardanoAddress {
10 => {
self.address = ::std::option::Option::Some(is.read_string()?);
},
18 => {
self.mac = ::std::option::Option::Some(is.read_bytes()?);
},
tag => {
::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
@ -1792,6 +1838,9 @@ impl ::protobuf::Message for CardanoAddress {
if let Some(v) = self.address.as_ref() {
my_size += ::protobuf::rt::string_size(1, &v);
}
if let Some(v) = self.mac.as_ref() {
my_size += ::protobuf::rt::bytes_size(2, &v);
}
my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
@ -1801,6 +1850,9 @@ impl ::protobuf::Message for CardanoAddress {
if let Some(v) = self.address.as_ref() {
os.write_string(1, v)?;
}
if let Some(v) = self.mac.as_ref() {
os.write_bytes(2, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
@ -1819,12 +1871,14 @@ impl ::protobuf::Message for CardanoAddress {
fn clear(&mut self) {
self.address = ::std::option::Option::None;
self.mac = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static CardanoAddress {
static instance: CardanoAddress = CardanoAddress {
address: ::std::option::Option::None,
mac: ::std::option::Option::None,
special_fields: ::protobuf::SpecialFields::new(),
};
&instance
@ -10470,155 +10524,155 @@ static file_descriptor_proto_data: &'static [u8] = b"\
rs\x18\x05\x20\x02(\x0b28.hw.trezor.messages.cardano.CardanoAddressParam\
etersTypeR\x11addressParameters\x12Z\n\x0fderivation_type\x18\x06\x20\
\x02(\x0e21.hw.trezor.messages.cardano.CardanoDerivationTypeR\x0ederivat\
ionType\x12\x1a\n\x08chunkify\x18\x07\x20\x01(\x08R\x08chunkify\"*\n\x0e\
CardanoAddress\x12\x18\n\x07address\x18\x01\x20\x02(\tR\x07address\"\xb1\
\x01\n\x13CardanoGetPublicKey\x12\x1b\n\taddress_n\x18\x01\x20\x03(\rR\
\x08addressN\x12!\n\x0cshow_display\x18\x02\x20\x01(\x08R\x0bshowDisplay\
\x12Z\n\x0fderivation_type\x18\x03\x20\x02(\x0e21.hw.trezor.messages.car\
dano.CardanoDerivationTypeR\x0ederivationType\"a\n\x10CardanoPublicKey\
\x12\x12\n\x04xpub\x18\x01\x20\x02(\tR\x04xpub\x129\n\x04node\x18\x02\
\x20\x02(\x0b2%.hw.trezor.messages.common.HDNodeTypeR\x04node\"\xde\x08\
\n\x11CardanoSignTxInit\x12S\n\x0csigning_mode\x18\x01\x20\x02(\x0e20.hw\
.trezor.messages.cardano.CardanoTxSigningModeR\x0bsigningMode\x12%\n\x0e\
protocol_magic\x18\x02\x20\x02(\rR\rprotocolMagic\x12\x1d\n\nnetwork_id\
\x18\x03\x20\x02(\rR\tnetworkId\x12!\n\x0cinputs_count\x18\x04\x20\x02(\
\rR\x0binputsCount\x12#\n\routputs_count\x18\x05\x20\x02(\rR\x0coutputsC\
ount\x12\x10\n\x03fee\x18\x06\x20\x02(\x04R\x03fee\x12\x10\n\x03ttl\x18\
\x07\x20\x01(\x04R\x03ttl\x12-\n\x12certificates_count\x18\x08\x20\x02(\
\rR\x11certificatesCount\x12+\n\x11withdrawals_count\x18\t\x20\x02(\rR\
\x10withdrawalsCount\x12,\n\x12has_auxiliary_data\x18\n\x20\x02(\x08R\
\x10hasAuxiliaryData\x126\n\x17validity_interval_start\x18\x0b\x20\x01(\
\x04R\x15validityIntervalStart\x124\n\x16witness_requests_count\x18\x0c\
\x20\x02(\rR\x14witnessRequestsCount\x12;\n\x1aminting_asset_groups_coun\
t\x18\r\x20\x02(\rR\x17mintingAssetGroupsCount\x12Z\n\x0fderivation_type\
\x18\x0e\x20\x02(\x0e21.hw.trezor.messages.cardano.CardanoDerivationType\
R\x0ederivationType\x123\n\x12include_network_id\x18\x0f\x20\x01(\x08:\
\x05falseR\x10includeNetworkId\x12(\n\x10script_data_hash\x18\x10\x20\
\x01(\x0cR\x0escriptDataHash\x126\n\x17collateral_inputs_count\x18\x11\
\x20\x02(\rR\x15collateralInputsCount\x124\n\x16required_signers_count\
\x18\x12\x20\x02(\rR\x14requiredSignersCount\x129\n\x15has_collateral_re\
turn\x18\x13\x20\x01(\x08:\x05falseR\x13hasCollateralReturn\x12)\n\x10to\
tal_collateral\x18\x14\x20\x01(\x04R\x0ftotalCollateral\x127\n\x16refere\
nce_inputs_count\x18\x15\x20\x01(\r:\x010R\x14referenceInputsCount\x12\
\x1a\n\x08chunkify\x18\x16\x20\x01(\x08R\x08chunkify\x12)\n\rtag_cbor_se\
ts\x18\x17\x20\x01(\x08:\x05falseR\x0btagCborSets\"L\n\x0eCardanoTxInput\
\x12\x1b\n\tprev_hash\x18\x01\x20\x02(\x0cR\x08prevHash\x12\x1d\n\nprev_\
index\x18\x02\x20\x02(\rR\tprevIndex\"\xc5\x03\n\x0fCardanoTxOutput\x12\
\x18\n\x07address\x18\x01\x20\x01(\tR\x07address\x12g\n\x12address_param\
eters\x18\x02\x20\x01(\x0b28.hw.trezor.messages.cardano.CardanoAddressPa\
rametersTypeR\x11addressParameters\x12\x16\n\x06amount\x18\x03\x20\x02(\
\x04R\x06amount\x12,\n\x12asset_groups_count\x18\x04\x20\x02(\rR\x10asse\
tGroupsCount\x12\x1d\n\ndatum_hash\x18\x05\x20\x01(\x0cR\tdatumHash\x12d\
\n\x06format\x18\x06\x20\x01(\x0e2>.hw.trezor.messages.cardano.CardanoTx\
OutputSerializationFormat:\x0cARRAY_LEGACYR\x06format\x12-\n\x11inline_d\
atum_size\x18\x07\x20\x01(\r:\x010R\x0finlineDatumSize\x125\n\x15referen\
ce_script_size\x18\x08\x20\x01(\r:\x010R\x13referenceScriptSize\"S\n\x11\
CardanoAssetGroup\x12\x1b\n\tpolicy_id\x18\x01\x20\x02(\x0cR\x08policyId\
\x12!\n\x0ctokens_count\x18\x02\x20\x02(\rR\x0btokensCount\"q\n\x0cCarda\
noToken\x12(\n\x10asset_name_bytes\x18\x01\x20\x02(\x0cR\x0eassetNameByt\
es\x12\x16\n\x06amount\x18\x02\x20\x01(\x04R\x06amount\x12\x1f\n\x0bmint\
_amount\x18\x03\x20\x01(\x12R\nmintAmount\"/\n\x19CardanoTxInlineDatumCh\
unk\x12\x12\n\x04data\x18\x01\x20\x02(\x0cR\x04data\"3\n\x1dCardanoTxRef\
erenceScriptChunk\x12\x12\n\x04data\x18\x01\x20\x02(\x0cR\x04data\"f\n\
\x10CardanoPoolOwner\x12(\n\x10staking_key_path\x18\x01\x20\x03(\rR\x0es\
takingKeyPath\x12(\n\x10staking_key_hash\x18\x02\x20\x01(\x0cR\x0estakin\
gKeyHash\"\xd9\x01\n\x1aCardanoPoolRelayParameters\x12D\n\x04type\x18\
\x01\x20\x02(\x0e20.hw.trezor.messages.cardano.CardanoPoolRelayTypeR\x04\
type\x12!\n\x0cipv4_address\x18\x02\x20\x01(\x0cR\x0bipv4Address\x12!\n\
\x0cipv6_address\x18\x03\x20\x01(\x0cR\x0bipv6Address\x12\x1b\n\thost_na\
me\x18\x04\x20\x01(\tR\x08hostName\x12\x12\n\x04port\x18\x05\x20\x01(\rR\
\x04port\"?\n\x17CardanoPoolMetadataType\x12\x10\n\x03url\x18\x01\x20\
\x02(\tR\x03url\x12\x12\n\x04hash\x18\x02\x20\x02(\x0cR\x04hash\"\x9a\
\x03\n\x19CardanoPoolParametersType\x12\x17\n\x07pool_id\x18\x01\x20\x02\
(\x0cR\x06poolId\x12\x20\n\x0cvrf_key_hash\x18\x02\x20\x02(\x0cR\nvrfKey\
Hash\x12\x16\n\x06pledge\x18\x03\x20\x02(\x04R\x06pledge\x12\x12\n\x04co\
st\x18\x04\x20\x02(\x04R\x04cost\x12)\n\x10margin_numerator\x18\x05\x20\
\x02(\x04R\x0fmarginNumerator\x12-\n\x12margin_denominator\x18\x06\x20\
\x02(\x04R\x11marginDenominator\x12%\n\x0ereward_account\x18\x07\x20\x02\
(\tR\rrewardAccount\x12O\n\x08metadata\x18\n\x20\x01(\x0b23.hw.trezor.me\
ssages.cardano.CardanoPoolMetadataTypeR\x08metadata\x12!\n\x0cowners_cou\
nt\x18\x0b\x20\x02(\rR\x0bownersCount\x12!\n\x0crelays_count\x18\x0c\x20\
\x02(\rR\x0brelaysCount\"\x8a\x01\n\x0bCardanoDRep\x12?\n\x04type\x18\
\x01\x20\x02(\x0e2+.hw.trezor.messages.cardano.CardanoDRepTypeR\x04type\
\x12\x19\n\x08key_hash\x18\x02\x20\x01(\x0cR\x07keyHash\x12\x1f\n\x0bscr\
ipt_hash\x18\x03\x20\x01(\x0cR\nscriptHash\"\xf9\x02\n\x14CardanoTxCerti\
ficate\x12F\n\x04type\x18\x01\x20\x02(\x0e22.hw.trezor.messages.cardano.\
CardanoCertificateTypeR\x04type\x12\x12\n\x04path\x18\x02\x20\x03(\rR\
\x04path\x12\x12\n\x04pool\x18\x03\x20\x01(\x0cR\x04pool\x12^\n\x0fpool_\
parameters\x18\x04\x20\x01(\x0b25.hw.trezor.messages.cardano.CardanoPool\
ParametersTypeR\x0epoolParameters\x12\x1f\n\x0bscript_hash\x18\x05\x20\
\x01(\x0cR\nscriptHash\x12\x19\n\x08key_hash\x18\x06\x20\x01(\x0cR\x07ke\
yHash\x12\x18\n\x07deposit\x18\x07\x20\x01(\x04R\x07deposit\x12;\n\x04dr\
ep\x18\x08\x20\x01(\x0b2'.hw.trezor.messages.cardano.CardanoDRepR\x04dre\
p\"}\n\x13CardanoTxWithdrawal\x12\x12\n\x04path\x18\x01\x20\x03(\rR\x04p\
ath\x12\x16\n\x06amount\x18\x02\x20\x02(\x04R\x06amount\x12\x1f\n\x0bscr\
ipt_hash\x18\x03\x20\x01(\x0cR\nscriptHash\x12\x19\n\x08key_hash\x18\x04\
\x20\x01(\x0cR\x07keyHash\"d\n\"CardanoCVoteRegistrationDelegation\x12&\
\n\x0fvote_public_key\x18\x01\x20\x02(\x0cR\rvotePublicKey\x12\x16\n\x06\
weight\x18\x02\x20\x02(\rR\x06weight\"\x8e\x04\n&CardanoCVoteRegistratio\
nParametersType\x12&\n\x0fvote_public_key\x18\x01\x20\x01(\x0cR\rvotePub\
licKey\x12!\n\x0cstaking_path\x18\x02\x20\x03(\rR\x0bstakingPath\x12v\n\
\x1apayment_address_parameters\x18\x03\x20\x01(\x0b28.hw.trezor.messages\
.cardano.CardanoAddressParametersTypeR\x18paymentAddressParameters\x12\
\x14\n\x05nonce\x18\x04\x20\x02(\x04R\x05nonce\x12Y\n\x06format\x18\x05\
\x20\x01(\x0e2:.hw.trezor.messages.cardano.CardanoCVoteRegistrationForma\
t:\x05CIP15R\x06format\x12`\n\x0bdelegations\x18\x06\x20\x03(\x0b2>.hw.t\
rezor.messages.cardano.CardanoCVoteRegistrationDelegationR\x0bdelegation\
s\x12%\n\x0evoting_purpose\x18\x07\x20\x01(\x04R\rvotingPurpose\x12'\n\
\x0fpayment_address\x18\x08\x20\x01(\tR\x0epaymentAddress\"\xb5\x01\n\
\x16CardanoTxAuxiliaryData\x12\x86\x01\n\x1dcvote_registration_parameter\
s\x18\x01\x20\x01(\x0b2B.hw.trezor.messages.cardano.CardanoCVoteRegistra\
tionParametersTypeR\x1bcvoteRegistrationParameters\x12\x12\n\x04hash\x18\
\x02\x20\x01(\x0cR\x04hash\"=\n\rCardanoTxMint\x12,\n\x12asset_groups_co\
unt\x18\x01\x20\x02(\rR\x10assetGroupsCount\"V\n\x18CardanoTxCollateralI\
nput\x12\x1b\n\tprev_hash\x18\x01\x20\x02(\x0cR\x08prevHash\x12\x1d\n\np\
rev_index\x18\x02\x20\x02(\rR\tprevIndex\"O\n\x17CardanoTxRequiredSigner\
\x12\x19\n\x08key_hash\x18\x01\x20\x01(\x0cR\x07keyHash\x12\x19\n\x08key\
_path\x18\x02\x20\x03(\rR\x07keyPath\"U\n\x17CardanoTxReferenceInput\x12\
\x1b\n\tprev_hash\x18\x01\x20\x02(\x0cR\x08prevHash\x12\x1d\n\nprev_inde\
x\x18\x02\x20\x02(\rR\tprevIndex\"\x12\n\x10CardanoTxItemAck\"\xea\x01\n\
\x20CardanoTxAuxiliaryDataSupplement\x12T\n\x04type\x18\x01\x20\x02(\x0e\
2@.hw.trezor.messages.cardano.CardanoTxAuxiliaryDataSupplementTypeR\x04t\
ype\x12.\n\x13auxiliary_data_hash\x18\x02\x20\x01(\x0cR\x11auxiliaryData\
Hash\x12@\n\x1ccvote_registration_signature\x18\x03\x20\x01(\x0cR\x1acvo\
teRegistrationSignature\"-\n\x17CardanoTxWitnessRequest\x12\x12\n\x04pat\
h\x18\x01\x20\x03(\rR\x04path\"\xb6\x01\n\x18CardanoTxWitnessResponse\
\x12D\n\x04type\x18\x01\x20\x02(\x0e20.hw.trezor.messages.cardano.Cardan\
oTxWitnessTypeR\x04type\x12\x17\n\x07pub_key\x18\x02\x20\x02(\x0cR\x06pu\
bKey\x12\x1c\n\tsignature\x18\x03\x20\x02(\x0cR\tsignature\x12\x1d\n\nch\
ain_code\x18\x04\x20\x01(\x0cR\tchainCode\"\x12\n\x10CardanoTxHostAck\",\
\n\x11CardanoTxBodyHash\x12\x17\n\x07tx_hash\x18\x01\x20\x02(\x0cR\x06tx\
Hash\"\x17\n\x15CardanoSignTxFinished*B\n\x15CardanoDerivationType\x12\n\
\n\x06LEDGER\x10\0\x12\n\n\x06ICARUS\x10\x01\x12\x11\n\rICARUS_TREZOR\
\x10\x02*\xd2\x01\n\x12CardanoAddressType\x12\x08\n\x04BASE\x10\0\x12\
\x13\n\x0fBASE_SCRIPT_KEY\x10\x01\x12\x13\n\x0fBASE_KEY_SCRIPT\x10\x02\
\x12\x16\n\x12BASE_SCRIPT_SCRIPT\x10\x03\x12\x0b\n\x07POINTER\x10\x04\
\x12\x12\n\x0ePOINTER_SCRIPT\x10\x05\x12\x0e\n\nENTERPRISE\x10\x06\x12\
\x15\n\x11ENTERPRISE_SCRIPT\x10\x07\x12\t\n\x05BYRON\x10\x08\x12\n\n\x06\
REWARD\x10\x0e\x12\x11\n\rREWARD_SCRIPT\x10\x0f*o\n\x17CardanoNativeScri\
ptType\x12\x0b\n\x07PUB_KEY\x10\0\x12\x07\n\x03ALL\x10\x01\x12\x07\n\x03\
ANY\x10\x02\x12\n\n\x06N_OF_K\x10\x03\x12\x12\n\x0eINVALID_BEFORE\x10\
\x04\x12\x15\n\x11INVALID_HEREAFTER\x10\x05*K\n$CardanoNativeScriptHashD\
isplayFormat\x12\x08\n\x04HIDE\x10\0\x12\n\n\x06BECH32\x10\x01\x12\r\n\t\
POLICY_ID\x10\x02*G\n\"CardanoTxOutputSerializationFormat\x12\x10\n\x0cA\
RRAY_LEGACY\x10\0\x12\x0f\n\x0bMAP_BABBAGE\x10\x01*\xd2\x01\n\x16Cardano\
CertificateType\x12\x16\n\x12STAKE_REGISTRATION\x10\0\x12\x18\n\x14STAKE\
_DEREGISTRATION\x10\x01\x12\x14\n\x10STAKE_DELEGATION\x10\x02\x12\x1b\n\
\x17STAKE_POOL_REGISTRATION\x10\x03\x12\x1d\n\x19STAKE_REGISTRATION_CONW\
AY\x10\x07\x12\x1f\n\x1bSTAKE_DEREGISTRATION_CONWAY\x10\x08\x12\x13\n\
\x0fVOTE_DELEGATION\x10\t*P\n\x0fCardanoDRepType\x12\x0c\n\x08KEY_HASH\
\x10\0\x12\x0f\n\x0bSCRIPT_HASH\x10\x01\x12\x0b\n\x07ABSTAIN\x10\x02\x12\
\x11\n\rNO_CONFIDENCE\x10\x03*X\n\x14CardanoPoolRelayType\x12\x12\n\x0eS\
INGLE_HOST_IP\x10\0\x12\x14\n\x10SINGLE_HOST_NAME\x10\x01\x12\x16\n\x12M\
ULTIPLE_HOST_NAME\x10\x02*R\n$CardanoTxAuxiliaryDataSupplementType\x12\
\x08\n\x04NONE\x10\0\x12\x20\n\x1cCVOTE_REGISTRATION_SIGNATURE\x10\x01*6\
\n\x1eCardanoCVoteRegistrationFormat\x12\t\n\x05CIP15\x10\0\x12\t\n\x05C\
IP36\x10\x01*\x82\x01\n\x14CardanoTxSigningMode\x12\x18\n\x14ORDINARY_TR\
ANSACTION\x10\0\x12\x1e\n\x1aPOOL_REGISTRATION_AS_OWNER\x10\x01\x12\x18\
\n\x14MULTISIG_TRANSACTION\x10\x02\x12\x16\n\x12PLUTUS_TRANSACTION\x10\
\x03*>\n\x14CardanoTxWitnessType\x12\x11\n\rBYRON_WITNESS\x10\0\x12\x13\
\n\x0fSHELLEY_WITNESS\x10\x01B;\n#com.satoshilabs.trezor.lib.protobufB\
\x14TrezorMessageCardano\
ionType\x12\x1a\n\x08chunkify\x18\x07\x20\x01(\x08R\x08chunkify\"<\n\x0e\
CardanoAddress\x12\x18\n\x07address\x18\x01\x20\x02(\tR\x07address\x12\
\x10\n\x03mac\x18\x02\x20\x01(\x0cR\x03mac\"\xb1\x01\n\x13CardanoGetPubl\
icKey\x12\x1b\n\taddress_n\x18\x01\x20\x03(\rR\x08addressN\x12!\n\x0csho\
w_display\x18\x02\x20\x01(\x08R\x0bshowDisplay\x12Z\n\x0fderivation_type\
\x18\x03\x20\x02(\x0e21.hw.trezor.messages.cardano.CardanoDerivationType\
R\x0ederivationType\"a\n\x10CardanoPublicKey\x12\x12\n\x04xpub\x18\x01\
\x20\x02(\tR\x04xpub\x129\n\x04node\x18\x02\x20\x02(\x0b2%.hw.trezor.mes\
sages.common.HDNodeTypeR\x04node\"\xde\x08\n\x11CardanoSignTxInit\x12S\n\
\x0csigning_mode\x18\x01\x20\x02(\x0e20.hw.trezor.messages.cardano.Carda\
noTxSigningModeR\x0bsigningMode\x12%\n\x0eprotocol_magic\x18\x02\x20\x02\
(\rR\rprotocolMagic\x12\x1d\n\nnetwork_id\x18\x03\x20\x02(\rR\tnetworkId\
\x12!\n\x0cinputs_count\x18\x04\x20\x02(\rR\x0binputsCount\x12#\n\routpu\
ts_count\x18\x05\x20\x02(\rR\x0coutputsCount\x12\x10\n\x03fee\x18\x06\
\x20\x02(\x04R\x03fee\x12\x10\n\x03ttl\x18\x07\x20\x01(\x04R\x03ttl\x12-\
\n\x12certificates_count\x18\x08\x20\x02(\rR\x11certificatesCount\x12+\n\
\x11withdrawals_count\x18\t\x20\x02(\rR\x10withdrawalsCount\x12,\n\x12ha\
s_auxiliary_data\x18\n\x20\x02(\x08R\x10hasAuxiliaryData\x126\n\x17valid\
ity_interval_start\x18\x0b\x20\x01(\x04R\x15validityIntervalStart\x124\n\
\x16witness_requests_count\x18\x0c\x20\x02(\rR\x14witnessRequestsCount\
\x12;\n\x1aminting_asset_groups_count\x18\r\x20\x02(\rR\x17mintingAssetG\
roupsCount\x12Z\n\x0fderivation_type\x18\x0e\x20\x02(\x0e21.hw.trezor.me\
ssages.cardano.CardanoDerivationTypeR\x0ederivationType\x123\n\x12includ\
e_network_id\x18\x0f\x20\x01(\x08:\x05falseR\x10includeNetworkId\x12(\n\
\x10script_data_hash\x18\x10\x20\x01(\x0cR\x0escriptDataHash\x126\n\x17c\
ollateral_inputs_count\x18\x11\x20\x02(\rR\x15collateralInputsCount\x124\
\n\x16required_signers_count\x18\x12\x20\x02(\rR\x14requiredSignersCount\
\x129\n\x15has_collateral_return\x18\x13\x20\x01(\x08:\x05falseR\x13hasC\
ollateralReturn\x12)\n\x10total_collateral\x18\x14\x20\x01(\x04R\x0ftota\
lCollateral\x127\n\x16reference_inputs_count\x18\x15\x20\x01(\r:\x010R\
\x14referenceInputsCount\x12\x1a\n\x08chunkify\x18\x16\x20\x01(\x08R\x08\
chunkify\x12)\n\rtag_cbor_sets\x18\x17\x20\x01(\x08:\x05falseR\x0btagCbo\
rSets\"L\n\x0eCardanoTxInput\x12\x1b\n\tprev_hash\x18\x01\x20\x02(\x0cR\
\x08prevHash\x12\x1d\n\nprev_index\x18\x02\x20\x02(\rR\tprevIndex\"\xc5\
\x03\n\x0fCardanoTxOutput\x12\x18\n\x07address\x18\x01\x20\x01(\tR\x07ad\
dress\x12g\n\x12address_parameters\x18\x02\x20\x01(\x0b28.hw.trezor.mess\
ages.cardano.CardanoAddressParametersTypeR\x11addressParameters\x12\x16\
\n\x06amount\x18\x03\x20\x02(\x04R\x06amount\x12,\n\x12asset_groups_coun\
t\x18\x04\x20\x02(\rR\x10assetGroupsCount\x12\x1d\n\ndatum_hash\x18\x05\
\x20\x01(\x0cR\tdatumHash\x12d\n\x06format\x18\x06\x20\x01(\x0e2>.hw.tre\
zor.messages.cardano.CardanoTxOutputSerializationFormat:\x0cARRAY_LEGACY\
R\x06format\x12-\n\x11inline_datum_size\x18\x07\x20\x01(\r:\x010R\x0finl\
ineDatumSize\x125\n\x15reference_script_size\x18\x08\x20\x01(\r:\x010R\
\x13referenceScriptSize\"S\n\x11CardanoAssetGroup\x12\x1b\n\tpolicy_id\
\x18\x01\x20\x02(\x0cR\x08policyId\x12!\n\x0ctokens_count\x18\x02\x20\
\x02(\rR\x0btokensCount\"q\n\x0cCardanoToken\x12(\n\x10asset_name_bytes\
\x18\x01\x20\x02(\x0cR\x0eassetNameBytes\x12\x16\n\x06amount\x18\x02\x20\
\x01(\x04R\x06amount\x12\x1f\n\x0bmint_amount\x18\x03\x20\x01(\x12R\nmin\
tAmount\"/\n\x19CardanoTxInlineDatumChunk\x12\x12\n\x04data\x18\x01\x20\
\x02(\x0cR\x04data\"3\n\x1dCardanoTxReferenceScriptChunk\x12\x12\n\x04da\
ta\x18\x01\x20\x02(\x0cR\x04data\"f\n\x10CardanoPoolOwner\x12(\n\x10stak\
ing_key_path\x18\x01\x20\x03(\rR\x0estakingKeyPath\x12(\n\x10staking_key\
_hash\x18\x02\x20\x01(\x0cR\x0estakingKeyHash\"\xd9\x01\n\x1aCardanoPool\
RelayParameters\x12D\n\x04type\x18\x01\x20\x02(\x0e20.hw.trezor.messages\
.cardano.CardanoPoolRelayTypeR\x04type\x12!\n\x0cipv4_address\x18\x02\
\x20\x01(\x0cR\x0bipv4Address\x12!\n\x0cipv6_address\x18\x03\x20\x01(\
\x0cR\x0bipv6Address\x12\x1b\n\thost_name\x18\x04\x20\x01(\tR\x08hostNam\
e\x12\x12\n\x04port\x18\x05\x20\x01(\rR\x04port\"?\n\x17CardanoPoolMetad\
ataType\x12\x10\n\x03url\x18\x01\x20\x02(\tR\x03url\x12\x12\n\x04hash\
\x18\x02\x20\x02(\x0cR\x04hash\"\x9a\x03\n\x19CardanoPoolParametersType\
\x12\x17\n\x07pool_id\x18\x01\x20\x02(\x0cR\x06poolId\x12\x20\n\x0cvrf_k\
ey_hash\x18\x02\x20\x02(\x0cR\nvrfKeyHash\x12\x16\n\x06pledge\x18\x03\
\x20\x02(\x04R\x06pledge\x12\x12\n\x04cost\x18\x04\x20\x02(\x04R\x04cost\
\x12)\n\x10margin_numerator\x18\x05\x20\x02(\x04R\x0fmarginNumerator\x12\
-\n\x12margin_denominator\x18\x06\x20\x02(\x04R\x11marginDenominator\x12\
%\n\x0ereward_account\x18\x07\x20\x02(\tR\rrewardAccount\x12O\n\x08metad\
ata\x18\n\x20\x01(\x0b23.hw.trezor.messages.cardano.CardanoPoolMetadataT\
ypeR\x08metadata\x12!\n\x0cowners_count\x18\x0b\x20\x02(\rR\x0bownersCou\
nt\x12!\n\x0crelays_count\x18\x0c\x20\x02(\rR\x0brelaysCount\"\x8a\x01\n\
\x0bCardanoDRep\x12?\n\x04type\x18\x01\x20\x02(\x0e2+.hw.trezor.messages\
.cardano.CardanoDRepTypeR\x04type\x12\x19\n\x08key_hash\x18\x02\x20\x01(\
\x0cR\x07keyHash\x12\x1f\n\x0bscript_hash\x18\x03\x20\x01(\x0cR\nscriptH\
ash\"\xf9\x02\n\x14CardanoTxCertificate\x12F\n\x04type\x18\x01\x20\x02(\
\x0e22.hw.trezor.messages.cardano.CardanoCertificateTypeR\x04type\x12\
\x12\n\x04path\x18\x02\x20\x03(\rR\x04path\x12\x12\n\x04pool\x18\x03\x20\
\x01(\x0cR\x04pool\x12^\n\x0fpool_parameters\x18\x04\x20\x01(\x0b25.hw.t\
rezor.messages.cardano.CardanoPoolParametersTypeR\x0epoolParameters\x12\
\x1f\n\x0bscript_hash\x18\x05\x20\x01(\x0cR\nscriptHash\x12\x19\n\x08key\
_hash\x18\x06\x20\x01(\x0cR\x07keyHash\x12\x18\n\x07deposit\x18\x07\x20\
\x01(\x04R\x07deposit\x12;\n\x04drep\x18\x08\x20\x01(\x0b2'.hw.trezor.me\
ssages.cardano.CardanoDRepR\x04drep\"}\n\x13CardanoTxWithdrawal\x12\x12\
\n\x04path\x18\x01\x20\x03(\rR\x04path\x12\x16\n\x06amount\x18\x02\x20\
\x02(\x04R\x06amount\x12\x1f\n\x0bscript_hash\x18\x03\x20\x01(\x0cR\nscr\
iptHash\x12\x19\n\x08key_hash\x18\x04\x20\x01(\x0cR\x07keyHash\"d\n\"Car\
danoCVoteRegistrationDelegation\x12&\n\x0fvote_public_key\x18\x01\x20\
\x02(\x0cR\rvotePublicKey\x12\x16\n\x06weight\x18\x02\x20\x02(\rR\x06wei\
ght\"\x8e\x04\n&CardanoCVoteRegistrationParametersType\x12&\n\x0fvote_pu\
blic_key\x18\x01\x20\x01(\x0cR\rvotePublicKey\x12!\n\x0cstaking_path\x18\
\x02\x20\x03(\rR\x0bstakingPath\x12v\n\x1apayment_address_parameters\x18\
\x03\x20\x01(\x0b28.hw.trezor.messages.cardano.CardanoAddressParametersT\
ypeR\x18paymentAddressParameters\x12\x14\n\x05nonce\x18\x04\x20\x02(\x04\
R\x05nonce\x12Y\n\x06format\x18\x05\x20\x01(\x0e2:.hw.trezor.messages.ca\
rdano.CardanoCVoteRegistrationFormat:\x05CIP15R\x06format\x12`\n\x0bdele\
gations\x18\x06\x20\x03(\x0b2>.hw.trezor.messages.cardano.CardanoCVoteRe\
gistrationDelegationR\x0bdelegations\x12%\n\x0evoting_purpose\x18\x07\
\x20\x01(\x04R\rvotingPurpose\x12'\n\x0fpayment_address\x18\x08\x20\x01(\
\tR\x0epaymentAddress\"\xb5\x01\n\x16CardanoTxAuxiliaryData\x12\x86\x01\
\n\x1dcvote_registration_parameters\x18\x01\x20\x01(\x0b2B.hw.trezor.mes\
sages.cardano.CardanoCVoteRegistrationParametersTypeR\x1bcvoteRegistrati\
onParameters\x12\x12\n\x04hash\x18\x02\x20\x01(\x0cR\x04hash\"=\n\rCarda\
noTxMint\x12,\n\x12asset_groups_count\x18\x01\x20\x02(\rR\x10assetGroups\
Count\"V\n\x18CardanoTxCollateralInput\x12\x1b\n\tprev_hash\x18\x01\x20\
\x02(\x0cR\x08prevHash\x12\x1d\n\nprev_index\x18\x02\x20\x02(\rR\tprevIn\
dex\"O\n\x17CardanoTxRequiredSigner\x12\x19\n\x08key_hash\x18\x01\x20\
\x01(\x0cR\x07keyHash\x12\x19\n\x08key_path\x18\x02\x20\x03(\rR\x07keyPa\
th\"U\n\x17CardanoTxReferenceInput\x12\x1b\n\tprev_hash\x18\x01\x20\x02(\
\x0cR\x08prevHash\x12\x1d\n\nprev_index\x18\x02\x20\x02(\rR\tprevIndex\"\
\x12\n\x10CardanoTxItemAck\"\xea\x01\n\x20CardanoTxAuxiliaryDataSuppleme\
nt\x12T\n\x04type\x18\x01\x20\x02(\x0e2@.hw.trezor.messages.cardano.Card\
anoTxAuxiliaryDataSupplementTypeR\x04type\x12.\n\x13auxiliary_data_hash\
\x18\x02\x20\x01(\x0cR\x11auxiliaryDataHash\x12@\n\x1ccvote_registration\
_signature\x18\x03\x20\x01(\x0cR\x1acvoteRegistrationSignature\"-\n\x17C\
ardanoTxWitnessRequest\x12\x12\n\x04path\x18\x01\x20\x03(\rR\x04path\"\
\xb6\x01\n\x18CardanoTxWitnessResponse\x12D\n\x04type\x18\x01\x20\x02(\
\x0e20.hw.trezor.messages.cardano.CardanoTxWitnessTypeR\x04type\x12\x17\
\n\x07pub_key\x18\x02\x20\x02(\x0cR\x06pubKey\x12\x1c\n\tsignature\x18\
\x03\x20\x02(\x0cR\tsignature\x12\x1d\n\nchain_code\x18\x04\x20\x01(\x0c\
R\tchainCode\"\x12\n\x10CardanoTxHostAck\",\n\x11CardanoTxBodyHash\x12\
\x17\n\x07tx_hash\x18\x01\x20\x02(\x0cR\x06txHash\"\x17\n\x15CardanoSign\
TxFinished*B\n\x15CardanoDerivationType\x12\n\n\x06LEDGER\x10\0\x12\n\n\
\x06ICARUS\x10\x01\x12\x11\n\rICARUS_TREZOR\x10\x02*\xd2\x01\n\x12Cardan\
oAddressType\x12\x08\n\x04BASE\x10\0\x12\x13\n\x0fBASE_SCRIPT_KEY\x10\
\x01\x12\x13\n\x0fBASE_KEY_SCRIPT\x10\x02\x12\x16\n\x12BASE_SCRIPT_SCRIP\
T\x10\x03\x12\x0b\n\x07POINTER\x10\x04\x12\x12\n\x0ePOINTER_SCRIPT\x10\
\x05\x12\x0e\n\nENTERPRISE\x10\x06\x12\x15\n\x11ENTERPRISE_SCRIPT\x10\
\x07\x12\t\n\x05BYRON\x10\x08\x12\n\n\x06REWARD\x10\x0e\x12\x11\n\rREWAR\
D_SCRIPT\x10\x0f*o\n\x17CardanoNativeScriptType\x12\x0b\n\x07PUB_KEY\x10\
\0\x12\x07\n\x03ALL\x10\x01\x12\x07\n\x03ANY\x10\x02\x12\n\n\x06N_OF_K\
\x10\x03\x12\x12\n\x0eINVALID_BEFORE\x10\x04\x12\x15\n\x11INVALID_HEREAF\
TER\x10\x05*K\n$CardanoNativeScriptHashDisplayFormat\x12\x08\n\x04HIDE\
\x10\0\x12\n\n\x06BECH32\x10\x01\x12\r\n\tPOLICY_ID\x10\x02*G\n\"Cardano\
TxOutputSerializationFormat\x12\x10\n\x0cARRAY_LEGACY\x10\0\x12\x0f\n\
\x0bMAP_BABBAGE\x10\x01*\xd2\x01\n\x16CardanoCertificateType\x12\x16\n\
\x12STAKE_REGISTRATION\x10\0\x12\x18\n\x14STAKE_DEREGISTRATION\x10\x01\
\x12\x14\n\x10STAKE_DELEGATION\x10\x02\x12\x1b\n\x17STAKE_POOL_REGISTRAT\
ION\x10\x03\x12\x1d\n\x19STAKE_REGISTRATION_CONWAY\x10\x07\x12\x1f\n\x1b\
STAKE_DEREGISTRATION_CONWAY\x10\x08\x12\x13\n\x0fVOTE_DELEGATION\x10\t*P\
\n\x0fCardanoDRepType\x12\x0c\n\x08KEY_HASH\x10\0\x12\x0f\n\x0bSCRIPT_HA\
SH\x10\x01\x12\x0b\n\x07ABSTAIN\x10\x02\x12\x11\n\rNO_CONFIDENCE\x10\x03\
*X\n\x14CardanoPoolRelayType\x12\x12\n\x0eSINGLE_HOST_IP\x10\0\x12\x14\n\
\x10SINGLE_HOST_NAME\x10\x01\x12\x16\n\x12MULTIPLE_HOST_NAME\x10\x02*R\n\
$CardanoTxAuxiliaryDataSupplementType\x12\x08\n\x04NONE\x10\0\x12\x20\n\
\x1cCVOTE_REGISTRATION_SIGNATURE\x10\x01*6\n\x1eCardanoCVoteRegistration\
Format\x12\t\n\x05CIP15\x10\0\x12\t\n\x05CIP36\x10\x01*\x82\x01\n\x14Car\
danoTxSigningMode\x12\x18\n\x14ORDINARY_TRANSACTION\x10\0\x12\x1e\n\x1aP\
OOL_REGISTRATION_AS_OWNER\x10\x01\x12\x18\n\x14MULTISIG_TRANSACTION\x10\
\x02\x12\x16\n\x12PLUTUS_TRANSACTION\x10\x03*>\n\x14CardanoTxWitnessType\
\x12\x11\n\rBYRON_WITNESS\x10\0\x12\x13\n\x0fSHELLEY_WITNESS\x10\x01B;\n\
#com.satoshilabs.trezor.lib.protobufB\x14TrezorMessageCardano\
";
/// `FileDescriptorProto` object which was a source for this generated file

View File

@ -230,6 +230,8 @@ pub struct RippleAddress {
// message fields
// @@protoc_insertion_point(field:hw.trezor.messages.ripple.RippleAddress.address)
pub address: ::std::option::Option<::std::string::String>,
// @@protoc_insertion_point(field:hw.trezor.messages.ripple.RippleAddress.mac)
pub mac: ::std::option::Option<::std::vec::Vec<u8>>,
// special fields
// @@protoc_insertion_point(special_field:hw.trezor.messages.ripple.RippleAddress.special_fields)
pub special_fields: ::protobuf::SpecialFields,
@ -282,14 +284,55 @@ impl RippleAddress {
self.address.take().unwrap_or_else(|| ::std::string::String::new())
}
// optional bytes mac = 2;
pub fn mac(&self) -> &[u8] {
match self.mac.as_ref() {
Some(v) => v,
None => &[],
}
}
pub fn clear_mac(&mut self) {
self.mac = ::std::option::Option::None;
}
pub fn has_mac(&self) -> bool {
self.mac.is_some()
}
// Param is passed by value, moved
pub fn set_mac(&mut self, v: ::std::vec::Vec<u8>) {
self.mac = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_mac(&mut self) -> &mut ::std::vec::Vec<u8> {
if self.mac.is_none() {
self.mac = ::std::option::Option::Some(::std::vec::Vec::new());
}
self.mac.as_mut().unwrap()
}
// Take field
pub fn take_mac(&mut self) -> ::std::vec::Vec<u8> {
self.mac.take().unwrap_or_else(|| ::std::vec::Vec::new())
}
fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
let mut fields = ::std::vec::Vec::with_capacity(1);
let mut fields = ::std::vec::Vec::with_capacity(2);
let mut oneofs = ::std::vec::Vec::with_capacity(0);
fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
"address",
|m: &RippleAddress| { &m.address },
|m: &mut RippleAddress| { &mut m.address },
));
fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
"mac",
|m: &RippleAddress| { &m.mac },
|m: &mut RippleAddress| { &mut m.mac },
));
::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<RippleAddress>(
"RippleAddress",
fields,
@ -314,6 +357,9 @@ impl ::protobuf::Message for RippleAddress {
10 => {
self.address = ::std::option::Option::Some(is.read_string()?);
},
18 => {
self.mac = ::std::option::Option::Some(is.read_bytes()?);
},
tag => {
::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
@ -329,6 +375,9 @@ impl ::protobuf::Message for RippleAddress {
if let Some(v) = self.address.as_ref() {
my_size += ::protobuf::rt::string_size(1, &v);
}
if let Some(v) = self.mac.as_ref() {
my_size += ::protobuf::rt::bytes_size(2, &v);
}
my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
@ -338,6 +387,9 @@ impl ::protobuf::Message for RippleAddress {
if let Some(v) = self.address.as_ref() {
os.write_string(1, v)?;
}
if let Some(v) = self.mac.as_ref() {
os.write_bytes(2, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
@ -356,12 +408,14 @@ impl ::protobuf::Message for RippleAddress {
fn clear(&mut self) {
self.address = ::std::option::Option::None;
self.mac = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static RippleAddress {
static instance: RippleAddress = RippleAddress {
address: ::std::option::Option::None,
mac: ::std::option::Option::None,
special_fields: ::protobuf::SpecialFields::new(),
};
&instance
@ -1191,20 +1245,21 @@ static file_descriptor_proto_data: &'static [u8] = b"\
\n\x15messages-ripple.proto\x12\x19hw.trezor.messages.ripple\"n\n\x10Rip\
pleGetAddress\x12\x1b\n\taddress_n\x18\x01\x20\x03(\rR\x08addressN\x12!\
\n\x0cshow_display\x18\x02\x20\x01(\x08R\x0bshowDisplay\x12\x1a\n\x08chu\
nkify\x18\x03\x20\x01(\x08R\x08chunkify\")\n\rRippleAddress\x12\x18\n\
\x07address\x18\x01\x20\x02(\tR\x07address\"\x85\x03\n\x0cRippleSignTx\
\x12\x1b\n\taddress_n\x18\x01\x20\x03(\rR\x08addressN\x12\x10\n\x03fee\
\x18\x02\x20\x02(\x04R\x03fee\x12\x17\n\x05flags\x18\x03\x20\x01(\r:\x01\
0R\x05flags\x12\x1a\n\x08sequence\x18\x04\x20\x02(\rR\x08sequence\x120\n\
\x14last_ledger_sequence\x18\x05\x20\x01(\rR\x12lastLedgerSequence\x12O\
\n\x07payment\x18\x06\x20\x02(\x0b25.hw.trezor.messages.ripple.RippleSig\
nTx.RipplePaymentR\x07payment\x12\x1a\n\x08chunkify\x18\x07\x20\x01(\x08\
R\x08chunkify\x1ar\n\rRipplePayment\x12\x16\n\x06amount\x18\x01\x20\x02(\
\x04R\x06amount\x12\x20\n\x0bdestination\x18\x02\x20\x02(\tR\x0bdestinat\
ion\x12'\n\x0fdestination_tag\x18\x03\x20\x01(\rR\x0edestinationTag\"S\n\
\x0eRippleSignedTx\x12\x1c\n\tsignature\x18\x01\x20\x02(\x0cR\tsignature\
\x12#\n\rserialized_tx\x18\x02\x20\x02(\x0cR\x0cserializedTxB:\n#com.sat\
oshilabs.trezor.lib.protobufB\x13TrezorMessageRipple\
nkify\x18\x03\x20\x01(\x08R\x08chunkify\";\n\rRippleAddress\x12\x18\n\
\x07address\x18\x01\x20\x02(\tR\x07address\x12\x10\n\x03mac\x18\x02\x20\
\x01(\x0cR\x03mac\"\x85\x03\n\x0cRippleSignTx\x12\x1b\n\taddress_n\x18\
\x01\x20\x03(\rR\x08addressN\x12\x10\n\x03fee\x18\x02\x20\x02(\x04R\x03f\
ee\x12\x17\n\x05flags\x18\x03\x20\x01(\r:\x010R\x05flags\x12\x1a\n\x08se\
quence\x18\x04\x20\x02(\rR\x08sequence\x120\n\x14last_ledger_sequence\
\x18\x05\x20\x01(\rR\x12lastLedgerSequence\x12O\n\x07payment\x18\x06\x20\
\x02(\x0b25.hw.trezor.messages.ripple.RippleSignTx.RipplePaymentR\x07pay\
ment\x12\x1a\n\x08chunkify\x18\x07\x20\x01(\x08R\x08chunkify\x1ar\n\rRip\
plePayment\x12\x16\n\x06amount\x18\x01\x20\x02(\x04R\x06amount\x12\x20\n\
\x0bdestination\x18\x02\x20\x02(\tR\x0bdestination\x12'\n\x0fdestination\
_tag\x18\x03\x20\x01(\rR\x0edestinationTag\"S\n\x0eRippleSignedTx\x12\
\x1c\n\tsignature\x18\x01\x20\x02(\x0cR\tsignature\x12#\n\rserialized_tx\
\x18\x02\x20\x02(\x0cR\x0cserializedTxB:\n#com.satoshilabs.trezor.lib.pr\
otobufB\x13TrezorMessageRipple\
";
/// `FileDescriptorProto` object which was a source for this generated file

View File

@ -553,6 +553,8 @@ pub struct SolanaAddress {
// message fields
// @@protoc_insertion_point(field:hw.trezor.messages.solana.SolanaAddress.address)
pub address: ::std::option::Option<::std::string::String>,
// @@protoc_insertion_point(field:hw.trezor.messages.solana.SolanaAddress.mac)
pub mac: ::std::option::Option<::std::vec::Vec<u8>>,
// special fields
// @@protoc_insertion_point(special_field:hw.trezor.messages.solana.SolanaAddress.special_fields)
pub special_fields: ::protobuf::SpecialFields,
@ -605,14 +607,55 @@ impl SolanaAddress {
self.address.take().unwrap_or_else(|| ::std::string::String::new())
}
// optional bytes mac = 2;
pub fn mac(&self) -> &[u8] {
match self.mac.as_ref() {
Some(v) => v,
None => &[],
}
}
pub fn clear_mac(&mut self) {
self.mac = ::std::option::Option::None;
}
pub fn has_mac(&self) -> bool {
self.mac.is_some()
}
// Param is passed by value, moved
pub fn set_mac(&mut self, v: ::std::vec::Vec<u8>) {
self.mac = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_mac(&mut self) -> &mut ::std::vec::Vec<u8> {
if self.mac.is_none() {
self.mac = ::std::option::Option::Some(::std::vec::Vec::new());
}
self.mac.as_mut().unwrap()
}
// Take field
pub fn take_mac(&mut self) -> ::std::vec::Vec<u8> {
self.mac.take().unwrap_or_else(|| ::std::vec::Vec::new())
}
fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
let mut fields = ::std::vec::Vec::with_capacity(1);
let mut fields = ::std::vec::Vec::with_capacity(2);
let mut oneofs = ::std::vec::Vec::with_capacity(0);
fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
"address",
|m: &SolanaAddress| { &m.address },
|m: &mut SolanaAddress| { &mut m.address },
));
fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
"mac",
|m: &SolanaAddress| { &m.mac },
|m: &mut SolanaAddress| { &mut m.mac },
));
::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<SolanaAddress>(
"SolanaAddress",
fields,
@ -637,6 +680,9 @@ impl ::protobuf::Message for SolanaAddress {
10 => {
self.address = ::std::option::Option::Some(is.read_string()?);
},
18 => {
self.mac = ::std::option::Option::Some(is.read_bytes()?);
},
tag => {
::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
@ -652,6 +698,9 @@ impl ::protobuf::Message for SolanaAddress {
if let Some(v) = self.address.as_ref() {
my_size += ::protobuf::rt::string_size(1, &v);
}
if let Some(v) = self.mac.as_ref() {
my_size += ::protobuf::rt::bytes_size(2, &v);
}
my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
@ -661,6 +710,9 @@ impl ::protobuf::Message for SolanaAddress {
if let Some(v) = self.address.as_ref() {
os.write_string(1, v)?;
}
if let Some(v) = self.mac.as_ref() {
os.write_bytes(2, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
@ -679,12 +731,14 @@ impl ::protobuf::Message for SolanaAddress {
fn clear(&mut self) {
self.address = ::std::option::Option::None;
self.mac = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static SolanaAddress {
static instance: SolanaAddress = SolanaAddress {
address: ::std::option::Option::None,
mac: ::std::option::Option::None,
special_fields: ::protobuf::SpecialFields::new(),
};
&instance
@ -1542,19 +1596,20 @@ static file_descriptor_proto_data: &'static [u8] = b"\
ublicKey\x12\x1d\n\npublic_key\x18\x01\x20\x02(\x0cR\tpublicKey\"n\n\x10\
SolanaGetAddress\x12\x1b\n\taddress_n\x18\x01\x20\x03(\rR\x08addressN\
\x12!\n\x0cshow_display\x18\x02\x20\x01(\x08R\x0bshowDisplay\x12\x1a\n\
\x08chunkify\x18\x03\x20\x01(\x08R\x08chunkify\")\n\rSolanaAddress\x12\
\x18\n\x07address\x18\x01\x20\x02(\tR\x07address\"\xa6\x01\n\x18SolanaTx\
TokenAccountInfo\x12!\n\x0cbase_address\x18\x01\x20\x02(\tR\x0bbaseAddre\
ss\x12#\n\rtoken_program\x18\x02\x20\x02(\tR\x0ctokenProgram\x12\x1d\n\n\
token_mint\x18\x03\x20\x02(\tR\ttokenMint\x12#\n\rtoken_account\x18\x04\
\x20\x02(\tR\x0ctokenAccount\"\x7f\n\x16SolanaTxAdditionalInfo\x12e\n\
\x14token_accounts_infos\x18\x01\x20\x03(\x0b23.hw.trezor.messages.solan\
a.SolanaTxTokenAccountInfoR\x12tokenAccountsInfos\"\xac\x01\n\x0cSolanaS\
ignTx\x12\x1b\n\taddress_n\x18\x01\x20\x03(\rR\x08addressN\x12#\n\rseria\
lized_tx\x18\x02\x20\x02(\x0cR\x0cserializedTx\x12Z\n\x0fadditional_info\
\x18\x03\x20\x01(\x0b21.hw.trezor.messages.solana.SolanaTxAdditionalInfo\
R\x0eadditionalInfo\"1\n\x11SolanaTxSignature\x12\x1c\n\tsignature\x18\
\x01\x20\x02(\x0cR\tsignature\
\x08chunkify\x18\x03\x20\x01(\x08R\x08chunkify\";\n\rSolanaAddress\x12\
\x18\n\x07address\x18\x01\x20\x02(\tR\x07address\x12\x10\n\x03mac\x18\
\x02\x20\x01(\x0cR\x03mac\"\xa6\x01\n\x18SolanaTxTokenAccountInfo\x12!\n\
\x0cbase_address\x18\x01\x20\x02(\tR\x0bbaseAddress\x12#\n\rtoken_progra\
m\x18\x02\x20\x02(\tR\x0ctokenProgram\x12\x1d\n\ntoken_mint\x18\x03\x20\
\x02(\tR\ttokenMint\x12#\n\rtoken_account\x18\x04\x20\x02(\tR\x0ctokenAc\
count\"\x7f\n\x16SolanaTxAdditionalInfo\x12e\n\x14token_accounts_infos\
\x18\x01\x20\x03(\x0b23.hw.trezor.messages.solana.SolanaTxTokenAccountIn\
foR\x12tokenAccountsInfos\"\xac\x01\n\x0cSolanaSignTx\x12\x1b\n\taddress\
_n\x18\x01\x20\x03(\rR\x08addressN\x12#\n\rserialized_tx\x18\x02\x20\x02\
(\x0cR\x0cserializedTx\x12Z\n\x0fadditional_info\x18\x03\x20\x01(\x0b21.\
hw.trezor.messages.solana.SolanaTxAdditionalInfoR\x0eadditionalInfo\"1\n\
\x11SolanaTxSignature\x12\x1c\n\tsignature\x18\x01\x20\x02(\x0cR\tsignat\
ure\
";
/// `FileDescriptorProto` object which was a source for this generated file

View File

@ -485,6 +485,8 @@ pub struct StellarAddress {
// message fields
// @@protoc_insertion_point(field:hw.trezor.messages.stellar.StellarAddress.address)
pub address: ::std::option::Option<::std::string::String>,
// @@protoc_insertion_point(field:hw.trezor.messages.stellar.StellarAddress.mac)
pub mac: ::std::option::Option<::std::vec::Vec<u8>>,
// special fields
// @@protoc_insertion_point(special_field:hw.trezor.messages.stellar.StellarAddress.special_fields)
pub special_fields: ::protobuf::SpecialFields,
@ -537,14 +539,55 @@ impl StellarAddress {
self.address.take().unwrap_or_else(|| ::std::string::String::new())
}
// optional bytes mac = 2;
pub fn mac(&self) -> &[u8] {
match self.mac.as_ref() {
Some(v) => v,
None => &[],
}
}
pub fn clear_mac(&mut self) {
self.mac = ::std::option::Option::None;
}
pub fn has_mac(&self) -> bool {
self.mac.is_some()
}
// Param is passed by value, moved
pub fn set_mac(&mut self, v: ::std::vec::Vec<u8>) {
self.mac = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_mac(&mut self) -> &mut ::std::vec::Vec<u8> {
if self.mac.is_none() {
self.mac = ::std::option::Option::Some(::std::vec::Vec::new());
}
self.mac.as_mut().unwrap()
}
// Take field
pub fn take_mac(&mut self) -> ::std::vec::Vec<u8> {
self.mac.take().unwrap_or_else(|| ::std::vec::Vec::new())
}
fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
let mut fields = ::std::vec::Vec::with_capacity(1);
let mut fields = ::std::vec::Vec::with_capacity(2);
let mut oneofs = ::std::vec::Vec::with_capacity(0);
fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
"address",
|m: &StellarAddress| { &m.address },
|m: &mut StellarAddress| { &mut m.address },
));
fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
"mac",
|m: &StellarAddress| { &m.mac },
|m: &mut StellarAddress| { &mut m.mac },
));
::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<StellarAddress>(
"StellarAddress",
fields,
@ -569,6 +612,9 @@ impl ::protobuf::Message for StellarAddress {
10 => {
self.address = ::std::option::Option::Some(is.read_string()?);
},
18 => {
self.mac = ::std::option::Option::Some(is.read_bytes()?);
},
tag => {
::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
@ -584,6 +630,9 @@ impl ::protobuf::Message for StellarAddress {
if let Some(v) = self.address.as_ref() {
my_size += ::protobuf::rt::string_size(1, &v);
}
if let Some(v) = self.mac.as_ref() {
my_size += ::protobuf::rt::bytes_size(2, &v);
}
my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
@ -593,6 +642,9 @@ impl ::protobuf::Message for StellarAddress {
if let Some(v) = self.address.as_ref() {
os.write_string(1, v)?;
}
if let Some(v) = self.mac.as_ref() {
os.write_bytes(2, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
@ -611,12 +663,14 @@ impl ::protobuf::Message for StellarAddress {
fn clear(&mut self) {
self.address = ::std::option::Option::None;
self.mac = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static StellarAddress {
static instance: StellarAddress = StellarAddress {
address: ::std::option::Option::None,
mac: ::std::option::Option::None,
special_fields: ::protobuf::SpecialFields::new(),
};
&instance
@ -6264,101 +6318,102 @@ static file_descriptor_proto_data: &'static [u8] = b"\
code\x12\x16\n\x06issuer\x18\x03\x20\x01(\tR\x06issuer\"o\n\x11StellarGe\
tAddress\x12\x1b\n\taddress_n\x18\x01\x20\x03(\rR\x08addressN\x12!\n\x0c\
show_display\x18\x02\x20\x01(\x08R\x0bshowDisplay\x12\x1a\n\x08chunkify\
\x18\x03\x20\x01(\x08R\x08chunkify\"*\n\x0eStellarAddress\x12\x18\n\x07a\
ddress\x18\x01\x20\x02(\tR\x07address\"\xa6\x04\n\rStellarSignTx\x12\x1b\
\n\taddress_n\x18\x02\x20\x03(\rR\x08addressN\x12-\n\x12network_passphra\
se\x18\x03\x20\x02(\tR\x11networkPassphrase\x12%\n\x0esource_account\x18\
\x04\x20\x02(\tR\rsourceAccount\x12\x10\n\x03fee\x18\x05\x20\x02(\rR\x03\
fee\x12'\n\x0fsequence_number\x18\x06\x20\x02(\x04R\x0esequenceNumber\
\x12)\n\x10timebounds_start\x18\x08\x20\x02(\rR\x0ftimeboundsStart\x12%\
\n\x0etimebounds_end\x18\t\x20\x02(\rR\rtimeboundsEnd\x12V\n\tmemo_type\
\x18\n\x20\x02(\x0e29.hw.trezor.messages.stellar.StellarSignTx.StellarMe\
moTypeR\x08memoType\x12\x1b\n\tmemo_text\x18\x0b\x20\x01(\tR\x08memoText\
\x12\x17\n\x07memo_id\x18\x0c\x20\x01(\x04R\x06memoId\x12\x1b\n\tmemo_ha\
sh\x18\r\x20\x01(\x0cR\x08memoHash\x12%\n\x0enum_operations\x18\x0e\x20\
\x02(\rR\rnumOperations\"C\n\x0fStellarMemoType\x12\x08\n\x04NONE\x10\0\
\x12\x08\n\x04TEXT\x10\x01\x12\x06\n\x02ID\x10\x02\x12\x08\n\x04HASH\x10\
\x03\x12\n\n\x06RETURN\x10\x04\"\x14\n\x12StellarTxOpRequest\"\xc2\x01\n\
\x10StellarPaymentOp\x12%\n\x0esource_account\x18\x01\x20\x01(\tR\rsourc\
eAccount\x12/\n\x13destination_account\x18\x02\x20\x02(\tR\x12destinatio\
nAccount\x12>\n\x05asset\x18\x03\x20\x02(\x0b2(.hw.trezor.messages.stell\
ar.StellarAssetR\x05asset\x12\x16\n\x06amount\x18\x04\x20\x02(\x12R\x06a\
mount\"\x8b\x01\n\x16StellarCreateAccountOp\x12%\n\x0esource_account\x18\
\x01\x20\x01(\tR\rsourceAccount\x12\x1f\n\x0bnew_account\x18\x02\x20\x02\
(\tR\nnewAccount\x12)\n\x10starting_balance\x18\x03\x20\x02(\x12R\x0fsta\
rtingBalance\"\xa5\x03\n!StellarPathPaymentStrictReceiveOp\x12%\n\x0esou\
rce_account\x18\x01\x20\x01(\tR\rsourceAccount\x12G\n\nsend_asset\x18\
\x02\x20\x02(\x0b2(.hw.trezor.messages.stellar.StellarAssetR\tsendAsset\
\x12\x19\n\x08send_max\x18\x03\x20\x02(\x12R\x07sendMax\x12/\n\x13destin\
ation_account\x18\x04\x20\x02(\tR\x12destinationAccount\x12U\n\x11destin\
ation_asset\x18\x05\x20\x02(\x0b2(.hw.trezor.messages.stellar.StellarAss\
etR\x10destinationAsset\x12-\n\x12destination_amount\x18\x06\x20\x02(\
\x12R\x11destinationAmount\x12>\n\x05paths\x18\x07\x20\x03(\x0b2(.hw.tre\
zor.messages.stellar.StellarAssetR\x05paths\"\xa2\x03\n\x1eStellarPathPa\
ymentStrictSendOp\x12%\n\x0esource_account\x18\x01\x20\x01(\tR\rsourceAc\
count\x12G\n\nsend_asset\x18\x02\x20\x02(\x0b2(.hw.trezor.messages.stell\
ar.StellarAssetR\tsendAsset\x12\x1f\n\x0bsend_amount\x18\x03\x20\x02(\
\x12R\nsendAmount\x12/\n\x13destination_account\x18\x04\x20\x02(\tR\x12d\
estinationAccount\x12U\n\x11destination_asset\x18\x05\x20\x02(\x0b2(.hw.\
trezor.messages.stellar.StellarAssetR\x10destinationAsset\x12'\n\x0fdest\
ination_min\x18\x06\x20\x02(\x12R\x0edestinationMin\x12>\n\x05paths\x18\
\x07\x20\x03(\x0b2(.hw.trezor.messages.stellar.StellarAssetR\x05paths\"\
\xc2\x02\n\x18StellarManageSellOfferOp\x12%\n\x0esource_account\x18\x01\
\x18\x03\x20\x01(\x08R\x08chunkify\"<\n\x0eStellarAddress\x12\x18\n\x07a\
ddress\x18\x01\x20\x02(\tR\x07address\x12\x10\n\x03mac\x18\x02\x20\x01(\
\x0cR\x03mac\"\xa6\x04\n\rStellarSignTx\x12\x1b\n\taddress_n\x18\x02\x20\
\x03(\rR\x08addressN\x12-\n\x12network_passphrase\x18\x03\x20\x02(\tR\
\x11networkPassphrase\x12%\n\x0esource_account\x18\x04\x20\x02(\tR\rsour\
ceAccount\x12\x10\n\x03fee\x18\x05\x20\x02(\rR\x03fee\x12'\n\x0fsequence\
_number\x18\x06\x20\x02(\x04R\x0esequenceNumber\x12)\n\x10timebounds_sta\
rt\x18\x08\x20\x02(\rR\x0ftimeboundsStart\x12%\n\x0etimebounds_end\x18\t\
\x20\x02(\rR\rtimeboundsEnd\x12V\n\tmemo_type\x18\n\x20\x02(\x0e29.hw.tr\
ezor.messages.stellar.StellarSignTx.StellarMemoTypeR\x08memoType\x12\x1b\
\n\tmemo_text\x18\x0b\x20\x01(\tR\x08memoText\x12\x17\n\x07memo_id\x18\
\x0c\x20\x01(\x04R\x06memoId\x12\x1b\n\tmemo_hash\x18\r\x20\x01(\x0cR\
\x08memoHash\x12%\n\x0enum_operations\x18\x0e\x20\x02(\rR\rnumOperations\
\"C\n\x0fStellarMemoType\x12\x08\n\x04NONE\x10\0\x12\x08\n\x04TEXT\x10\
\x01\x12\x06\n\x02ID\x10\x02\x12\x08\n\x04HASH\x10\x03\x12\n\n\x06RETURN\
\x10\x04\"\x14\n\x12StellarTxOpRequest\"\xc2\x01\n\x10StellarPaymentOp\
\x12%\n\x0esource_account\x18\x01\x20\x01(\tR\rsourceAccount\x12/\n\x13d\
estination_account\x18\x02\x20\x02(\tR\x12destinationAccount\x12>\n\x05a\
sset\x18\x03\x20\x02(\x0b2(.hw.trezor.messages.stellar.StellarAssetR\x05\
asset\x12\x16\n\x06amount\x18\x04\x20\x02(\x12R\x06amount\"\x8b\x01\n\
\x16StellarCreateAccountOp\x12%\n\x0esource_account\x18\x01\x20\x01(\tR\
\rsourceAccount\x12\x1f\n\x0bnew_account\x18\x02\x20\x02(\tR\nnewAccount\
\x12)\n\x10starting_balance\x18\x03\x20\x02(\x12R\x0fstartingBalance\"\
\xa5\x03\n!StellarPathPaymentStrictReceiveOp\x12%\n\x0esource_account\
\x18\x01\x20\x01(\tR\rsourceAccount\x12G\n\nsend_asset\x18\x02\x20\x02(\
\x0b2(.hw.trezor.messages.stellar.StellarAssetR\tsendAsset\x12\x19\n\x08\
send_max\x18\x03\x20\x02(\x12R\x07sendMax\x12/\n\x13destination_account\
\x18\x04\x20\x02(\tR\x12destinationAccount\x12U\n\x11destination_asset\
\x18\x05\x20\x02(\x0b2(.hw.trezor.messages.stellar.StellarAssetR\x10dest\
inationAsset\x12-\n\x12destination_amount\x18\x06\x20\x02(\x12R\x11desti\
nationAmount\x12>\n\x05paths\x18\x07\x20\x03(\x0b2(.hw.trezor.messages.s\
tellar.StellarAssetR\x05paths\"\xa2\x03\n\x1eStellarPathPaymentStrictSen\
dOp\x12%\n\x0esource_account\x18\x01\x20\x01(\tR\rsourceAccount\x12G\n\n\
send_asset\x18\x02\x20\x02(\x0b2(.hw.trezor.messages.stellar.StellarAsse\
tR\tsendAsset\x12\x1f\n\x0bsend_amount\x18\x03\x20\x02(\x12R\nsendAmount\
\x12/\n\x13destination_account\x18\x04\x20\x02(\tR\x12destinationAccount\
\x12U\n\x11destination_asset\x18\x05\x20\x02(\x0b2(.hw.trezor.messages.s\
tellar.StellarAssetR\x10destinationAsset\x12'\n\x0fdestination_min\x18\
\x06\x20\x02(\x12R\x0edestinationMin\x12>\n\x05paths\x18\x07\x20\x03(\
\x0b2(.hw.trezor.messages.stellar.StellarAssetR\x05paths\"\xc2\x02\n\x18\
StellarManageSellOfferOp\x12%\n\x0esource_account\x18\x01\x20\x01(\tR\rs\
ourceAccount\x12M\n\rselling_asset\x18\x02\x20\x02(\x0b2(.hw.trezor.mess\
ages.stellar.StellarAssetR\x0csellingAsset\x12K\n\x0cbuying_asset\x18\
\x03\x20\x02(\x0b2(.hw.trezor.messages.stellar.StellarAssetR\x0bbuyingAs\
set\x12\x16\n\x06amount\x18\x04\x20\x02(\x12R\x06amount\x12\x17\n\x07pri\
ce_n\x18\x05\x20\x02(\rR\x06priceN\x12\x17\n\x07price_d\x18\x06\x20\x02(\
\rR\x06priceD\x12\x19\n\x08offer_id\x18\x07\x20\x02(\x04R\x07offerId\"\
\xc1\x02\n\x17StellarManageBuyOfferOp\x12%\n\x0esource_account\x18\x01\
\x20\x01(\tR\rsourceAccount\x12M\n\rselling_asset\x18\x02\x20\x02(\x0b2(\
.hw.trezor.messages.stellar.StellarAssetR\x0csellingAsset\x12K\n\x0cbuyi\
ng_asset\x18\x03\x20\x02(\x0b2(.hw.trezor.messages.stellar.StellarAssetR\
\x0bbuyingAsset\x12\x16\n\x06amount\x18\x04\x20\x02(\x12R\x06amount\x12\
\x17\n\x07price_n\x18\x05\x20\x02(\rR\x06priceN\x12\x17\n\x07price_d\x18\
\x06\x20\x02(\rR\x06priceD\x12\x19\n\x08offer_id\x18\x07\x20\x02(\x04R\
\x07offerId\"\xc1\x02\n\x17StellarManageBuyOfferOp\x12%\n\x0esource_acco\
unt\x18\x01\x20\x01(\tR\rsourceAccount\x12M\n\rselling_asset\x18\x02\x20\
\x02(\x0b2(.hw.trezor.messages.stellar.StellarAssetR\x0csellingAsset\x12\
K\n\x0cbuying_asset\x18\x03\x20\x02(\x0b2(.hw.trezor.messages.stellar.St\
ellarAssetR\x0bbuyingAsset\x12\x16\n\x06amount\x18\x04\x20\x02(\x12R\x06\
amount\x12\x17\n\x07price_n\x18\x05\x20\x02(\rR\x06priceN\x12\x17\n\x07p\
rice_d\x18\x06\x20\x02(\rR\x06priceD\x12\x19\n\x08offer_id\x18\x07\x20\
\x02(\x04R\x07offerId\"\xae\x02\n\x1fStellarCreatePassiveSellOfferOp\x12\
%\n\x0esource_account\x18\x01\x20\x01(\tR\rsourceAccount\x12M\n\rselling\
_asset\x18\x02\x20\x02(\x0b2(.hw.trezor.messages.stellar.StellarAssetR\
\x0csellingAsset\x12K\n\x0cbuying_asset\x18\x03\x20\x02(\x0b2(.hw.trezor\
.messages.stellar.StellarAssetR\x0bbuyingAsset\x12\x16\n\x06amount\x18\
\x04\x20\x02(\x12R\x06amount\x12\x17\n\x07price_n\x18\x05\x20\x02(\rR\
\x06priceN\x12\x17\n\x07price_d\x18\x06\x20\x02(\rR\x06priceD\"\xdd\x04\
\n\x13StellarSetOptionsOp\x12%\n\x0esource_account\x18\x01\x20\x01(\tR\r\
sourceAccount\x12B\n\x1dinflation_destination_account\x18\x02\x20\x01(\t\
R\x1binflationDestinationAccount\x12\x1f\n\x0bclear_flags\x18\x03\x20\
\x01(\rR\nclearFlags\x12\x1b\n\tset_flags\x18\x04\x20\x01(\rR\x08setFlag\
s\x12#\n\rmaster_weight\x18\x05\x20\x01(\rR\x0cmasterWeight\x12#\n\rlow_\
threshold\x18\x06\x20\x01(\rR\x0clowThreshold\x12)\n\x10medium_threshold\
\x18\x07\x20\x01(\rR\x0fmediumThreshold\x12%\n\x0ehigh_threshold\x18\x08\
\x20\x01(\rR\rhighThreshold\x12\x1f\n\x0bhome_domain\x18\t\x20\x01(\tR\n\
homeDomain\x12b\n\x0bsigner_type\x18\n\x20\x01(\x0e2A.hw.trezor.messages\
.stellar.StellarSetOptionsOp.StellarSignerTypeR\nsignerType\x12\x1d\n\ns\
igner_key\x18\x0b\x20\x01(\x0cR\tsignerKey\x12#\n\rsigner_weight\x18\x0c\
\x20\x01(\rR\x0csignerWeight\"8\n\x11StellarSignerType\x12\x0b\n\x07ACCO\
UNT\x10\0\x12\x0c\n\x08PRE_AUTH\x10\x01\x12\x08\n\x04HASH\x10\x02\"\x93\
\x01\n\x14StellarChangeTrustOp\x12%\n\x0esource_account\x18\x01\x20\x01(\
\tR\rsourceAccount\x12>\n\x05asset\x18\x02\x20\x02(\x0b2(.hw.trezor.mess\
ages.stellar.StellarAssetR\x05asset\x12\x14\n\x05limit\x18\x03\x20\x02(\
\x04R\x05limit\"\xf6\x01\n\x13StellarAllowTrustOp\x12%\n\x0esource_accou\
nt\x18\x01\x20\x01(\tR\rsourceAccount\x12'\n\x0ftrusted_account\x18\x02\
\x20\x02(\tR\x0etrustedAccount\x12K\n\nasset_type\x18\x03\x20\x02(\x0e2,\
.hw.trezor.messages.stellar.StellarAssetTypeR\tassetType\x12\x1d\n\nasse\
t_code\x18\x04\x20\x01(\tR\tassetCode\x12#\n\ris_authorized\x18\x05\x20\
\x02(\x08R\x0cisAuthorized\"o\n\x15StellarAccountMergeOp\x12%\n\x0esourc\
e_account\x18\x01\x20\x01(\tR\rsourceAccount\x12/\n\x13destination_accou\
nt\x18\x02\x20\x02(\tR\x12destinationAccount\"d\n\x13StellarManageDataOp\
\x12%\n\x0esource_account\x18\x01\x20\x01(\tR\rsourceAccount\x12\x10\n\
\x03key\x18\x02\x20\x02(\tR\x03key\x12\x14\n\x05value\x18\x03\x20\x01(\
\x0cR\x05value\"W\n\x15StellarBumpSequenceOp\x12%\n\x0esource_account\
\x18\x01\x20\x01(\tR\rsourceAccount\x12\x17\n\x07bump_to\x18\x02\x20\x02\
(\x04R\x06bumpTo\"f\n\x1eStellarClaimClaimableBalanceOp\x12%\n\x0esource\
_account\x18\x01\x20\x01(\tR\rsourceAccount\x12\x1d\n\nbalance_id\x18\
\x02\x20\x02(\x0cR\tbalanceId\"N\n\x0fStellarSignedTx\x12\x1d\n\npublic_\
key\x18\x01\x20\x02(\x0cR\tpublicKey\x12\x1c\n\tsignature\x18\x02\x20\
\x02(\x0cR\tsignature*=\n\x10StellarAssetType\x12\n\n\x06NATIVE\x10\0\
\x12\r\n\tALPHANUM4\x10\x01\x12\x0e\n\nALPHANUM12\x10\x02B;\n#com.satosh\
ilabs.trezor.lib.protobufB\x14TrezorMessageStellar\
\x07offerId\"\xae\x02\n\x1fStellarCreatePassiveSellOfferOp\x12%\n\x0esou\
rce_account\x18\x01\x20\x01(\tR\rsourceAccount\x12M\n\rselling_asset\x18\
\x02\x20\x02(\x0b2(.hw.trezor.messages.stellar.StellarAssetR\x0csellingA\
sset\x12K\n\x0cbuying_asset\x18\x03\x20\x02(\x0b2(.hw.trezor.messages.st\
ellar.StellarAssetR\x0bbuyingAsset\x12\x16\n\x06amount\x18\x04\x20\x02(\
\x12R\x06amount\x12\x17\n\x07price_n\x18\x05\x20\x02(\rR\x06priceN\x12\
\x17\n\x07price_d\x18\x06\x20\x02(\rR\x06priceD\"\xdd\x04\n\x13StellarSe\
tOptionsOp\x12%\n\x0esource_account\x18\x01\x20\x01(\tR\rsourceAccount\
\x12B\n\x1dinflation_destination_account\x18\x02\x20\x01(\tR\x1binflatio\
nDestinationAccount\x12\x1f\n\x0bclear_flags\x18\x03\x20\x01(\rR\nclearF\
lags\x12\x1b\n\tset_flags\x18\x04\x20\x01(\rR\x08setFlags\x12#\n\rmaster\
_weight\x18\x05\x20\x01(\rR\x0cmasterWeight\x12#\n\rlow_threshold\x18\
\x06\x20\x01(\rR\x0clowThreshold\x12)\n\x10medium_threshold\x18\x07\x20\
\x01(\rR\x0fmediumThreshold\x12%\n\x0ehigh_threshold\x18\x08\x20\x01(\rR\
\rhighThreshold\x12\x1f\n\x0bhome_domain\x18\t\x20\x01(\tR\nhomeDomain\
\x12b\n\x0bsigner_type\x18\n\x20\x01(\x0e2A.hw.trezor.messages.stellar.S\
tellarSetOptionsOp.StellarSignerTypeR\nsignerType\x12\x1d\n\nsigner_key\
\x18\x0b\x20\x01(\x0cR\tsignerKey\x12#\n\rsigner_weight\x18\x0c\x20\x01(\
\rR\x0csignerWeight\"8\n\x11StellarSignerType\x12\x0b\n\x07ACCOUNT\x10\0\
\x12\x0c\n\x08PRE_AUTH\x10\x01\x12\x08\n\x04HASH\x10\x02\"\x93\x01\n\x14\
StellarChangeTrustOp\x12%\n\x0esource_account\x18\x01\x20\x01(\tR\rsourc\
eAccount\x12>\n\x05asset\x18\x02\x20\x02(\x0b2(.hw.trezor.messages.stell\
ar.StellarAssetR\x05asset\x12\x14\n\x05limit\x18\x03\x20\x02(\x04R\x05li\
mit\"\xf6\x01\n\x13StellarAllowTrustOp\x12%\n\x0esource_account\x18\x01\
\x20\x01(\tR\rsourceAccount\x12'\n\x0ftrusted_account\x18\x02\x20\x02(\t\
R\x0etrustedAccount\x12K\n\nasset_type\x18\x03\x20\x02(\x0e2,.hw.trezor.\
messages.stellar.StellarAssetTypeR\tassetType\x12\x1d\n\nasset_code\x18\
\x04\x20\x01(\tR\tassetCode\x12#\n\ris_authorized\x18\x05\x20\x02(\x08R\
\x0cisAuthorized\"o\n\x15StellarAccountMergeOp\x12%\n\x0esource_account\
\x18\x01\x20\x01(\tR\rsourceAccount\x12/\n\x13destination_account\x18\
\x02\x20\x02(\tR\x12destinationAccount\"d\n\x13StellarManageDataOp\x12%\
\n\x0esource_account\x18\x01\x20\x01(\tR\rsourceAccount\x12\x10\n\x03key\
\x18\x02\x20\x02(\tR\x03key\x12\x14\n\x05value\x18\x03\x20\x01(\x0cR\x05\
value\"W\n\x15StellarBumpSequenceOp\x12%\n\x0esource_account\x18\x01\x20\
\x01(\tR\rsourceAccount\x12\x17\n\x07bump_to\x18\x02\x20\x02(\x04R\x06bu\
mpTo\"f\n\x1eStellarClaimClaimableBalanceOp\x12%\n\x0esource_account\x18\
\x01\x20\x01(\tR\rsourceAccount\x12\x1d\n\nbalance_id\x18\x02\x20\x02(\
\x0cR\tbalanceId\"N\n\x0fStellarSignedTx\x12\x1d\n\npublic_key\x18\x01\
\x20\x02(\x0cR\tpublicKey\x12\x1c\n\tsignature\x18\x02\x20\x02(\x0cR\tsi\
gnature*=\n\x10StellarAssetType\x12\n\n\x06NATIVE\x10\0\x12\r\n\tALPHANU\
M4\x10\x01\x12\x0e\n\nALPHANUM12\x10\x02B;\n#com.satoshilabs.trezor.lib.\
protobufB\x14TrezorMessageStellar\
";
/// `FileDescriptorProto` object which was a source for this generated file

View File

@ -230,6 +230,8 @@ pub struct TezosAddress {
// message fields
// @@protoc_insertion_point(field:hw.trezor.messages.tezos.TezosAddress.address)
pub address: ::std::option::Option<::std::string::String>,
// @@protoc_insertion_point(field:hw.trezor.messages.tezos.TezosAddress.mac)
pub mac: ::std::option::Option<::std::vec::Vec<u8>>,
// special fields
// @@protoc_insertion_point(special_field:hw.trezor.messages.tezos.TezosAddress.special_fields)
pub special_fields: ::protobuf::SpecialFields,
@ -282,14 +284,55 @@ impl TezosAddress {
self.address.take().unwrap_or_else(|| ::std::string::String::new())
}
// optional bytes mac = 2;
pub fn mac(&self) -> &[u8] {
match self.mac.as_ref() {
Some(v) => v,
None => &[],
}
}
pub fn clear_mac(&mut self) {
self.mac = ::std::option::Option::None;
}
pub fn has_mac(&self) -> bool {
self.mac.is_some()
}
// Param is passed by value, moved
pub fn set_mac(&mut self, v: ::std::vec::Vec<u8>) {
self.mac = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_mac(&mut self) -> &mut ::std::vec::Vec<u8> {
if self.mac.is_none() {
self.mac = ::std::option::Option::Some(::std::vec::Vec::new());
}
self.mac.as_mut().unwrap()
}
// Take field
pub fn take_mac(&mut self) -> ::std::vec::Vec<u8> {
self.mac.take().unwrap_or_else(|| ::std::vec::Vec::new())
}
fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
let mut fields = ::std::vec::Vec::with_capacity(1);
let mut fields = ::std::vec::Vec::with_capacity(2);
let mut oneofs = ::std::vec::Vec::with_capacity(0);
fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
"address",
|m: &TezosAddress| { &m.address },
|m: &mut TezosAddress| { &mut m.address },
));
fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
"mac",
|m: &TezosAddress| { &m.mac },
|m: &mut TezosAddress| { &mut m.mac },
));
::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<TezosAddress>(
"TezosAddress",
fields,
@ -314,6 +357,9 @@ impl ::protobuf::Message for TezosAddress {
10 => {
self.address = ::std::option::Option::Some(is.read_string()?);
},
18 => {
self.mac = ::std::option::Option::Some(is.read_bytes()?);
},
tag => {
::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
@ -329,6 +375,9 @@ impl ::protobuf::Message for TezosAddress {
if let Some(v) = self.address.as_ref() {
my_size += ::protobuf::rt::string_size(1, &v);
}
if let Some(v) = self.mac.as_ref() {
my_size += ::protobuf::rt::bytes_size(2, &v);
}
my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
@ -338,6 +387,9 @@ impl ::protobuf::Message for TezosAddress {
if let Some(v) = self.address.as_ref() {
os.write_string(1, v)?;
}
if let Some(v) = self.mac.as_ref() {
os.write_bytes(2, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
@ -356,12 +408,14 @@ impl ::protobuf::Message for TezosAddress {
fn clear(&mut self) {
self.address = ::std::option::Option::None;
self.mac = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static TezosAddress {
static instance: TezosAddress = TezosAddress {
address: ::std::option::Option::None,
mac: ::std::option::Option::None,
special_fields: ::protobuf::SpecialFields::new(),
};
&instance
@ -4467,75 +4521,76 @@ static file_descriptor_proto_data: &'static [u8] = b"\
\n\x14messages-tezos.proto\x12\x18hw.trezor.messages.tezos\"m\n\x0fTezos\
GetAddress\x12\x1b\n\taddress_n\x18\x01\x20\x03(\rR\x08addressN\x12!\n\
\x0cshow_display\x18\x02\x20\x01(\x08R\x0bshowDisplay\x12\x1a\n\x08chunk\
ify\x18\x03\x20\x01(\x08R\x08chunkify\"(\n\x0cTezosAddress\x12\x18\n\x07\
address\x18\x01\x20\x02(\tR\x07address\"o\n\x11TezosGetPublicKey\x12\x1b\
\n\taddress_n\x18\x01\x20\x03(\rR\x08addressN\x12!\n\x0cshow_display\x18\
\x02\x20\x01(\x08R\x0bshowDisplay\x12\x1a\n\x08chunkify\x18\x03\x20\x01(\
\x08R\x08chunkify\"/\n\x0eTezosPublicKey\x12\x1d\n\npublic_key\x18\x01\
\x20\x02(\tR\tpublicKey\"\xc0\x14\n\x0bTezosSignTx\x12\x1b\n\taddress_n\
\x18\x01\x20\x03(\rR\x08addressN\x12\x16\n\x06branch\x18\x02\x20\x02(\
\x0cR\x06branch\x12K\n\x06reveal\x18\x03\x20\x01(\x0b23.hw.trezor.messag\
es.tezos.TezosSignTx.TezosRevealOpR\x06reveal\x12Z\n\x0btransaction\x18\
\x04\x20\x01(\x0b28.hw.trezor.messages.tezos.TezosSignTx.TezosTransactio\
nOpR\x0btransaction\x12Z\n\x0borigination\x18\x05\x20\x01(\x0b28.hw.trez\
or.messages.tezos.TezosSignTx.TezosOriginationOpR\x0borigination\x12W\n\
\ndelegation\x18\x06\x20\x01(\x0b27.hw.trezor.messages.tezos.TezosSignTx\
.TezosDelegationOpR\ndelegation\x12Q\n\x08proposal\x18\x07\x20\x01(\x0b2\
5.hw.trezor.messages.tezos.TezosSignTx.TezosProposalOpR\x08proposal\x12K\
\n\x06ballot\x18\x08\x20\x01(\x0b23.hw.trezor.messages.tezos.TezosSignTx\
.TezosBallotOpR\x06ballot\x12\x1a\n\x08chunkify\x18\t\x20\x01(\x08R\x08c\
hunkify\x1a\xb3\x01\n\x0fTezosContractID\x12Y\n\x03tag\x18\x01\x20\x02(\
\x0e2G.hw.trezor.messages.tezos.TezosSignTx.TezosContractID.TezosContrac\
tTypeR\x03tag\x12\x12\n\x04hash\x18\x02\x20\x02(\x0cR\x04hash\"1\n\x11Te\
zosContractType\x12\x0c\n\x08Implicit\x10\0\x12\x0e\n\nOriginated\x10\
\x01\x1a\xb4\x01\n\rTezosRevealOp\x12\x16\n\x06source\x18\x07\x20\x02(\
\x0cR\x06source\x12\x10\n\x03fee\x18\x02\x20\x02(\x04R\x03fee\x12\x18\n\
\x07counter\x18\x03\x20\x02(\x04R\x07counter\x12\x1b\n\tgas_limit\x18\
\x04\x20\x02(\x04R\x08gasLimit\x12#\n\rstorage_limit\x18\x05\x20\x02(\
\x04R\x0cstorageLimit\x12\x1d\n\npublic_key\x18\x06\x20\x02(\x0cR\tpubli\
cKey\x1a\x9f\x06\n\x12TezosTransactionOp\x12\x16\n\x06source\x18\t\x20\
\x02(\x0cR\x06source\x12\x10\n\x03fee\x18\x02\x20\x02(\x04R\x03fee\x12\
\x18\n\x07counter\x18\x03\x20\x02(\x04R\x07counter\x12\x1b\n\tgas_limit\
\x18\x04\x20\x02(\x04R\x08gasLimit\x12#\n\rstorage_limit\x18\x05\x20\x02\
(\x04R\x0cstorageLimit\x12\x16\n\x06amount\x18\x06\x20\x02(\x04R\x06amou\
nt\x12W\n\x0bdestination\x18\x07\x20\x02(\x0b25.hw.trezor.messages.tezos\
.TezosSignTx.TezosContractIDR\x0bdestination\x12\x1e\n\nparameters\x18\
\x08\x20\x01(\x0cR\nparameters\x12~\n\x12parameters_manager\x18\n\x20\
\x01(\x0b2O.hw.trezor.messages.tezos.TezosSignTx.TezosTransactionOp.Tezo\
sParametersManagerR\x11parametersManager\x1a\xf1\x02\n\x16TezosParameter\
sManager\x12!\n\x0cset_delegate\x18\x01\x20\x01(\x0cR\x0bsetDelegate\x12\
'\n\x0fcancel_delegate\x18\x02\x20\x01(\x08R\x0ecancelDelegate\x12\x80\
\x01\n\x08transfer\x18\x03\x20\x01(\x0b2d.hw.trezor.messages.tezos.Tezos\
SignTx.TezosTransactionOp.TezosParametersManager.TezosManagerTransferR\
\x08transfer\x1a\x87\x01\n\x14TezosManagerTransfer\x12W\n\x0bdestination\
\x18\x01\x20\x02(\x0b25.hw.trezor.messages.tezos.TezosSignTx.TezosContra\
ctIDR\x0bdestination\x12\x16\n\x06amount\x18\x02\x20\x02(\x04R\x06amount\
\x1a\xcf\x02\n\x12TezosOriginationOp\x12\x16\n\x06source\x18\x0c\x20\x02\
(\x0cR\x06source\x12\x10\n\x03fee\x18\x02\x20\x02(\x04R\x03fee\x12\x18\n\
\x07counter\x18\x03\x20\x02(\x04R\x07counter\x12\x1b\n\tgas_limit\x18\
\x04\x20\x02(\x04R\x08gasLimit\x12#\n\rstorage_limit\x18\x05\x20\x02(\
\x04R\x0cstorageLimit\x12%\n\x0emanager_pubkey\x18\x06\x20\x01(\x0cR\rma\
nagerPubkey\x12\x18\n\x07balance\x18\x07\x20\x02(\x04R\x07balance\x12\
\x1c\n\tspendable\x18\x08\x20\x01(\x08R\tspendable\x12\x20\n\x0bdelegata\
ble\x18\t\x20\x01(\x08R\x0bdelegatable\x12\x1a\n\x08delegate\x18\n\x20\
\x01(\x0cR\x08delegate\x12\x16\n\x06script\x18\x0b\x20\x02(\x0cR\x06scri\
pt\x1a\xb5\x01\n\x11TezosDelegationOp\x12\x16\n\x06source\x18\x07\x20\
\x02(\x0cR\x06source\x12\x10\n\x03fee\x18\x02\x20\x02(\x04R\x03fee\x12\
\x18\n\x07counter\x18\x03\x20\x02(\x04R\x07counter\x12\x1b\n\tgas_limit\
\x18\x04\x20\x02(\x04R\x08gasLimit\x12#\n\rstorage_limit\x18\x05\x20\x02\
(\x04R\x0cstorageLimit\x12\x1a\n\x08delegate\x18\x06\x20\x02(\x0cR\x08de\
legate\x1a_\n\x0fTezosProposalOp\x12\x16\n\x06source\x18\x01\x20\x02(\
\x0cR\x06source\x12\x16\n\x06period\x18\x02\x20\x02(\x04R\x06period\x12\
\x1c\n\tproposals\x18\x04\x20\x03(\x0cR\tproposals\x1a\xe7\x01\n\rTezosB\
allotOp\x12\x16\n\x06source\x18\x01\x20\x02(\x0cR\x06source\x12\x16\n\
\x06period\x18\x02\x20\x02(\x04R\x06period\x12\x1a\n\x08proposal\x18\x03\
\x20\x02(\x0cR\x08proposal\x12[\n\x06ballot\x18\x04\x20\x02(\x0e2C.hw.tr\
ezor.messages.tezos.TezosSignTx.TezosBallotOp.TezosBallotTypeR\x06ballot\
\"-\n\x0fTezosBallotType\x12\x07\n\x03Yay\x10\0\x12\x07\n\x03Nay\x10\x01\
\x12\x08\n\x04Pass\x10\x02\"|\n\rTezosSignedTx\x12\x1c\n\tsignature\x18\
\x01\x20\x02(\tR\tsignature\x12&\n\x0fsig_op_contents\x18\x02\x20\x02(\
\x0cR\rsigOpContents\x12%\n\x0eoperation_hash\x18\x03\x20\x02(\tR\ropera\
tionHashB9\n#com.satoshilabs.trezor.lib.protobufB\x12TrezorMessageTezos\
ify\x18\x03\x20\x01(\x08R\x08chunkify\":\n\x0cTezosAddress\x12\x18\n\x07\
address\x18\x01\x20\x02(\tR\x07address\x12\x10\n\x03mac\x18\x02\x20\x01(\
\x0cR\x03mac\"o\n\x11TezosGetPublicKey\x12\x1b\n\taddress_n\x18\x01\x20\
\x03(\rR\x08addressN\x12!\n\x0cshow_display\x18\x02\x20\x01(\x08R\x0bsho\
wDisplay\x12\x1a\n\x08chunkify\x18\x03\x20\x01(\x08R\x08chunkify\"/\n\
\x0eTezosPublicKey\x12\x1d\n\npublic_key\x18\x01\x20\x02(\tR\tpublicKey\
\"\xc0\x14\n\x0bTezosSignTx\x12\x1b\n\taddress_n\x18\x01\x20\x03(\rR\x08\
addressN\x12\x16\n\x06branch\x18\x02\x20\x02(\x0cR\x06branch\x12K\n\x06r\
eveal\x18\x03\x20\x01(\x0b23.hw.trezor.messages.tezos.TezosSignTx.TezosR\
evealOpR\x06reveal\x12Z\n\x0btransaction\x18\x04\x20\x01(\x0b28.hw.trezo\
r.messages.tezos.TezosSignTx.TezosTransactionOpR\x0btransaction\x12Z\n\
\x0borigination\x18\x05\x20\x01(\x0b28.hw.trezor.messages.tezos.TezosSig\
nTx.TezosOriginationOpR\x0borigination\x12W\n\ndelegation\x18\x06\x20\
\x01(\x0b27.hw.trezor.messages.tezos.TezosSignTx.TezosDelegationOpR\ndel\
egation\x12Q\n\x08proposal\x18\x07\x20\x01(\x0b25.hw.trezor.messages.tez\
os.TezosSignTx.TezosProposalOpR\x08proposal\x12K\n\x06ballot\x18\x08\x20\
\x01(\x0b23.hw.trezor.messages.tezos.TezosSignTx.TezosBallotOpR\x06ballo\
t\x12\x1a\n\x08chunkify\x18\t\x20\x01(\x08R\x08chunkify\x1a\xb3\x01\n\
\x0fTezosContractID\x12Y\n\x03tag\x18\x01\x20\x02(\x0e2G.hw.trezor.messa\
ges.tezos.TezosSignTx.TezosContractID.TezosContractTypeR\x03tag\x12\x12\
\n\x04hash\x18\x02\x20\x02(\x0cR\x04hash\"1\n\x11TezosContractType\x12\
\x0c\n\x08Implicit\x10\0\x12\x0e\n\nOriginated\x10\x01\x1a\xb4\x01\n\rTe\
zosRevealOp\x12\x16\n\x06source\x18\x07\x20\x02(\x0cR\x06source\x12\x10\
\n\x03fee\x18\x02\x20\x02(\x04R\x03fee\x12\x18\n\x07counter\x18\x03\x20\
\x02(\x04R\x07counter\x12\x1b\n\tgas_limit\x18\x04\x20\x02(\x04R\x08gasL\
imit\x12#\n\rstorage_limit\x18\x05\x20\x02(\x04R\x0cstorageLimit\x12\x1d\
\n\npublic_key\x18\x06\x20\x02(\x0cR\tpublicKey\x1a\x9f\x06\n\x12TezosTr\
ansactionOp\x12\x16\n\x06source\x18\t\x20\x02(\x0cR\x06source\x12\x10\n\
\x03fee\x18\x02\x20\x02(\x04R\x03fee\x12\x18\n\x07counter\x18\x03\x20\
\x02(\x04R\x07counter\x12\x1b\n\tgas_limit\x18\x04\x20\x02(\x04R\x08gasL\
imit\x12#\n\rstorage_limit\x18\x05\x20\x02(\x04R\x0cstorageLimit\x12\x16\
\n\x06amount\x18\x06\x20\x02(\x04R\x06amount\x12W\n\x0bdestination\x18\
\x07\x20\x02(\x0b25.hw.trezor.messages.tezos.TezosSignTx.TezosContractID\
R\x0bdestination\x12\x1e\n\nparameters\x18\x08\x20\x01(\x0cR\nparameters\
\x12~\n\x12parameters_manager\x18\n\x20\x01(\x0b2O.hw.trezor.messages.te\
zos.TezosSignTx.TezosTransactionOp.TezosParametersManagerR\x11parameters\
Manager\x1a\xf1\x02\n\x16TezosParametersManager\x12!\n\x0cset_delegate\
\x18\x01\x20\x01(\x0cR\x0bsetDelegate\x12'\n\x0fcancel_delegate\x18\x02\
\x20\x01(\x08R\x0ecancelDelegate\x12\x80\x01\n\x08transfer\x18\x03\x20\
\x01(\x0b2d.hw.trezor.messages.tezos.TezosSignTx.TezosTransactionOp.Tezo\
sParametersManager.TezosManagerTransferR\x08transfer\x1a\x87\x01\n\x14Te\
zosManagerTransfer\x12W\n\x0bdestination\x18\x01\x20\x02(\x0b25.hw.trezo\
r.messages.tezos.TezosSignTx.TezosContractIDR\x0bdestination\x12\x16\n\
\x06amount\x18\x02\x20\x02(\x04R\x06amount\x1a\xcf\x02\n\x12TezosOrigina\
tionOp\x12\x16\n\x06source\x18\x0c\x20\x02(\x0cR\x06source\x12\x10\n\x03\
fee\x18\x02\x20\x02(\x04R\x03fee\x12\x18\n\x07counter\x18\x03\x20\x02(\
\x04R\x07counter\x12\x1b\n\tgas_limit\x18\x04\x20\x02(\x04R\x08gasLimit\
\x12#\n\rstorage_limit\x18\x05\x20\x02(\x04R\x0cstorageLimit\x12%\n\x0em\
anager_pubkey\x18\x06\x20\x01(\x0cR\rmanagerPubkey\x12\x18\n\x07balance\
\x18\x07\x20\x02(\x04R\x07balance\x12\x1c\n\tspendable\x18\x08\x20\x01(\
\x08R\tspendable\x12\x20\n\x0bdelegatable\x18\t\x20\x01(\x08R\x0bdelegat\
able\x12\x1a\n\x08delegate\x18\n\x20\x01(\x0cR\x08delegate\x12\x16\n\x06\
script\x18\x0b\x20\x02(\x0cR\x06script\x1a\xb5\x01\n\x11TezosDelegationO\
p\x12\x16\n\x06source\x18\x07\x20\x02(\x0cR\x06source\x12\x10\n\x03fee\
\x18\x02\x20\x02(\x04R\x03fee\x12\x18\n\x07counter\x18\x03\x20\x02(\x04R\
\x07counter\x12\x1b\n\tgas_limit\x18\x04\x20\x02(\x04R\x08gasLimit\x12#\
\n\rstorage_limit\x18\x05\x20\x02(\x04R\x0cstorageLimit\x12\x1a\n\x08del\
egate\x18\x06\x20\x02(\x0cR\x08delegate\x1a_\n\x0fTezosProposalOp\x12\
\x16\n\x06source\x18\x01\x20\x02(\x0cR\x06source\x12\x16\n\x06period\x18\
\x02\x20\x02(\x04R\x06period\x12\x1c\n\tproposals\x18\x04\x20\x03(\x0cR\
\tproposals\x1a\xe7\x01\n\rTezosBallotOp\x12\x16\n\x06source\x18\x01\x20\
\x02(\x0cR\x06source\x12\x16\n\x06period\x18\x02\x20\x02(\x04R\x06period\
\x12\x1a\n\x08proposal\x18\x03\x20\x02(\x0cR\x08proposal\x12[\n\x06ballo\
t\x18\x04\x20\x02(\x0e2C.hw.trezor.messages.tezos.TezosSignTx.TezosBallo\
tOp.TezosBallotTypeR\x06ballot\"-\n\x0fTezosBallotType\x12\x07\n\x03Yay\
\x10\0\x12\x07\n\x03Nay\x10\x01\x12\x08\n\x04Pass\x10\x02\"|\n\rTezosSig\
nedTx\x12\x1c\n\tsignature\x18\x01\x20\x02(\tR\tsignature\x12&\n\x0fsig_\
op_contents\x18\x02\x20\x02(\x0cR\rsigOpContents\x12%\n\x0eoperation_has\
h\x18\x03\x20\x02(\tR\roperationHashB9\n#com.satoshilabs.trezor.lib.prot\
obufB\x12TrezorMessageTezos\
";
/// `FileDescriptorProto` object which was a source for this generated file