Skip to content

Zondax/ledger-xxnetwork

Repository files navigation

Ledger xx network App

License GithubActions


zondax_light zondax_dark

Please visit our website at zondax.ch


This project contains the xx network app (https://xx.network/) for Ledger Nano S and X.

  • Ledger Nano S/X BOLOS app
  • Specs / Documentation
  • C++ unit tests
  • Zemu tests

For more information: How to build

ATTENTION

Please:

  • Do not use in production
  • Do not use a Ledger device with funds for development purposes.
  • Have a separate and marked device that is used ONLY for development and testing

xx network 1.203.x

System

Name Light XL Nesting Arguments
Fill block ✔️ ✔️ Perbill ratio
Remark ✔️ ✔️ Vecu8 remark
Set heap pages ✔️ ✔️ u64 pages
Set code ✔️ ✔️ Vecu8 code
Set code without checks ✔️ ✔️ Vecu8 code
Set storage VecKeyValue items
Kill storage VecKey keys
Kill prefix Key prefix
u32 subkeys
Remark with event ✔️ ✔️ Vecu8 remark

Scheduler

Name Light XL Nesting Arguments
Schedule BlockNumber when
OptionschedulePeriodBlockNumber maybe_periodic
schedulePriority priority
Call call
Cancel BlockNumber when
u32 index
Schedule named Vecu8 id
BlockNumber when
OptionschedulePeriodBlockNumber maybe_periodic
schedulePriority priority
Call call
Cancel named Vecu8 id
Schedule after BlockNumber after
OptionschedulePeriodBlockNumber maybe_periodic
schedulePriority priority
Call call
Schedule named after Vecu8 id
BlockNumber after
OptionschedulePeriodBlockNumber maybe_periodic
schedulePriority priority
Call call

Babe

Name Light XL Nesting Arguments
Report equivocation BoxEquivocationProofHeader equivocation_proof
KeyOwnerProof key_owner_proof
Report equivocation unsigned BoxEquivocationProofHeader equivocation_proof
KeyOwnerProof key_owner_proof
Plan config change NextConfigDescriptor config

Timestamp

Name Light XL Nesting Arguments
Set ✔️ Compactu64 now

Balances

Name Light XL Nesting Arguments
Transfer ✔️ ✔️ ✔️ LookupasStaticLookupSource dest
CompactBalance amount
Set balance ✔️ ✔️ LookupasStaticLookupSource who
CompactBalance new_free
CompactBalance new_reserved
Force transfer ✔️ ✔️ ✔️ LookupasStaticLookupSource source
LookupasStaticLookupSource dest
CompactBalance amount
Transfer keep alive ✔️ ✔️ ✔️ LookupasStaticLookupSource dest
CompactBalance amount
Transfer all ✔️ ✔️ LookupasStaticLookupSource dest
bool keep_alive
Force unreserve ✔️ LookupasStaticLookupSource who
Balance amount

Authorship

Name Light XL Nesting Arguments
Set uncles VecHeader new_uncles

Staking

Name Light XL Nesting Arguments
Bond ✔️ ✔️ LookupasStaticLookupSource controller
CompactBalance amount
OptionHash cmix_id
Bond extra ✔️ ✔️ CompactBalance amount
Unbond ✔️ ✔️ CompactBalance amount
Withdraw Unbonded ✔️ ✔️ u32 num_slashing_spans
Validate ✔️ ✔️ ValidatorPrefs prefs
Nominate ✔️ ✔️ VecLookupasStaticLookupSource targets
Chill ✔️ ✔️
Set controller ✔️ ✔️ LookupasStaticLookupSource controller
Set validator count ✔️ Compactu32 new_
Increase validator count ✔️ Compactu32 additional
Scale validator count Percent factor
Force no eras ✔️
Force new era ✔️
Set invulnerables ✔️ VecAccountId invulnerables
Force unstake ✔️ AccountId stash
u32 num_slashing_spans
Force new era always ✔️
Cancel deferred slash ✔️ EraIndex era
Vecu32 slash_indices
Payout stakers ✔️ ✔️ AccountId validator_stash
EraIndex era
Rebond ✔️ ✔️ CompactBalance amount
Set history depth ✔️ Compactu32 new_history_depth
Compactu32 era_items_deleted
Reap stash ✔️ AccountId stash
u32 num_slashing_spans
Kick ✔️ VecLookupasStaticLookupSource who
Set staking limits Balance min_nominator_bond
Balance min_validator_bond
Optionu32 max_nominator_count
Optionu32 max_validator_count
OptionPercent threshold
Perbill min_commission
Chill other ✔️ AccountId controller
Set cmix id ✔️ Hash cmix_id
Transfer cmix id ✔️ AccountId dest

ElectionProviderMultiPhase

Name Light XL Nesting Arguments
Submit unsigned BoxRawSolutionSolutionOfT raw_solution
SolutionOrSnapshotSize witness
Set minimum untrusted score OptionElectionScore maybe_next_score
Set emergency election result SupportsAccountId supports
Submit BoxRawSolutionSolutionOfT raw_solution
u32 num_signed_submissions

Session

Name Light XL Nesting Arguments
Set keys ✔️ ✔️ Keys keys
Bytes proof
Purge keys ✔️ ✔️

Grandpa

Name Light XL Nesting Arguments
Report equivocation BoxEquivocationProofHashBlockNumber equivocation_proof
KeyOwnerProof key_owner_proof
Report equivocation unsigned BoxEquivocationProofHashBlockNumber equivocation_proof
KeyOwnerProof key_owner_proof
Note stalled ✔️ BlockNumber delay
BlockNumber best_finalized_block_number

ImOnline

Name Light XL Nesting Arguments
Heartbeat HeartbeatBlockNumber heartbeat
AuthorityIdasRuntimeAppPublicSignature signature

Democracy

Name Light XL Nesting Arguments
Propose Hash proposal_hash
CompactBalance amount
Second Compactu32 proposal
Compactu32 seconds_upper_bound
Vote Compactu32 ref_index
AccountVote vote
Emergency cancel ReferendumIndex ref_index
External propose Hash proposal_hash
External propose majority Hash proposal_hash
External propose default Hash proposal_hash
Fast track Hash proposal_hash
BlockNumber voting_period
BlockNumber delay
Veto external Hash proposal_hash
Cancel referendum Compactu32 ref_index
Cancel queued ReferendumIndex which
Delegate AccountId to
Conviction conviction
Balance balance
Undelegate
Clear public proposals
Note preimage Bytes encoded_proposal
Note preimage operational Bytes encoded_proposal
Note imminent preimage Bytes encoded_proposal
Note imminent preimage operational Bytes encoded_proposal
Reap preimage Hash proposal_hash
Compactu32 proposal_len_upper_bound
Unlock AccountId target
Remove vote ReferendumIndex index
Remove other vote AccountId target
ReferendumIndex index
Enact proposal Hash proposal_hash
ReferendumIndex index
Blacklist Hash proposal_hash
OptionReferendumIndex maybe_ref_index
Cancel proposal Compactu32 prop_index

Council

Name Light XL Nesting Arguments
Set members ✔️ VecAccountId new_members
OptionAccountId prime
MemberCount old_count
Execute Proposal proposal
Compactu32 length_bound
Propose Compactu32 threshold
Proposal proposal
Compactu32 length_bound
Vote ✔️ Hash proposal
Compactu32 index
bool approve
Close ✔️ Hash proposal_hash
Compactu32 index
Compactu64 proposal_weight_bound
Compactu32 length_bound
Disapprove proposal ✔️ Hash proposal_hash

TechnicalCommittee

Name Light XL Nesting Arguments
Set members ✔️ VecAccountId new_members
OptionAccountId prime
MemberCount old_count
Execute Proposal proposal
Compactu32 length_bound
Propose Compactu32 threshold
Proposal proposal
Compactu32 length_bound
Vote ✔️ Hash proposal
Compactu32 index
bool approve
Close ✔️ Hash proposal_hash
Compactu32 index
Compactu64 proposal_weight_bound
Compactu32 length_bound
Disapprove proposal ✔️ Hash proposal_hash

Elections

Name Light XL Nesting Arguments
Vote ✔️ VecAccountId votes
Compactu128 amount
Remove voter ✔️
Submit candidacy ✔️ Compactu32 candidate_count
Renounce candidacy Renouncing renouncing
Remove member ✔️ LookupasStaticLookupSource who
bool has_replacement
Clean defunct voters ✔️ u32 num_voters
u32 num_defunct

TechnicalMembership

Name Light XL Nesting Arguments
Add member ✔️ AccountId who
Remove member ✔️ AccountId who
Swap member ✔️ AccountId remove
AccountId add
Reset members ✔️ VecAccountId members
Change key ✔️ AccountId new_
Set prime ✔️ AccountId who
Clear prime ✔️

Treasury

Name Light XL Nesting Arguments
Propose spend ✔️ CompactBalance amount
LookupasStaticLookupSource beneficiary
Reject proposal ✔️ Compactu32 proposal_id
Approve proposal ✔️ Compactu32 proposal_id

Claims

Name Light XL Nesting Arguments
Claim ✔️ AccountId dest
EcdsaSignature ethereum_signature
Mint claim EthereumAddress who
Balance amount
OptionVecTupleBalanceOfTBalanceOfTBlockNumber vesting_schedules
OptionStatementKind statement
Claim attest ✔️ AccountId dest
EcdsaSignature ethereum_signature
Bytes statement
Attest ✔️ Bytes statement
Move claim ✔️ EthereumAddress old
EthereumAddress new_
OptionAccountId maybe_preclaim

Vesting

Name Light XL Nesting Arguments
Vest ✔️
Vest other ✔️ LookupasStaticLookupSource target
Vested transfer LookupasStaticLookupSource target
VestingInfo schedule
Force vested transfer LookupasStaticLookupSource source
LookupasStaticLookupSource target
VestingInfo schedule
Merge schedules ✔️ u32 schedule1_index
u32 schedule2_index

Utility

Name Light XL Nesting Arguments
Batch ✔️ ✔️ VecCall calls
As derivative u16 index
Call call
Batch all ✔️ ✔️ VecCall calls
Dispatch as BoxPalletsOrigin as_origin
Call call

Identity

Name Light XL Nesting Arguments
Add registrar ✔️ AccountId account
Set identity BoxIdentityInfoMaxAdditionalFields info
Set subs VecTupleAccountIdData subs
Clear identity ✔️
Request judgement ✔️ Compactu32 reg_index
Compactu128 max_fee
Cancel request ✔️ RegistrarIndex reg_index
Set fee ✔️ Compactu32 index
Compactu128 fee
Set account id ✔️ Compactu32 index
AccountId new_
Set fields Compactu32 index
IdentityFields fields
Provide judgement Compactu32 reg_index
LookupasStaticLookupSource target
JudgementBalanceOfT judgement
Kill identity ✔️ LookupasStaticLookupSource target
Add sub LookupasStaticLookupSource sub
Data data
Rename sub LookupasStaticLookupSource sub
Data data
Remove sub ✔️ LookupasStaticLookupSource sub
Quit sub ✔️

Proxy

Name Light XL Nesting Arguments
Proxy ✔️ ✔️ AccountId real
OptionProxyType force_proxy_type
Call call
Add proxy ✔️ AccountId delegate
ProxyType proxy_type
BlockNumber delay
Remove proxy ✔️ AccountId delegate
ProxyType proxy_type
BlockNumber delay
Remove proxies ✔️
Anonymous ✔️ ProxyType proxy_type
BlockNumber delay
u16 index
Kill anonymous ✔️ AccountId spawner
ProxyType proxy_type
u16 index
Compactu32 height
Compactu32 ext_index
Announce ✔️ AccountId real
CallHashOf call_hash
Remove announcement ✔️ AccountId real
CallHashOf call_hash
Reject announcement ✔️ AccountId delegate
CallHashOf call_hash
Proxy announced ✔️ AccountId delegate
AccountId real
OptionProxyType force_proxy_type
Call call

Bounties

Name Light XL Nesting Arguments
Propose bounty ✔️ CompactBalance amount
Bytes description
Approve bounty ✔️ Compactu32 bounty_id
Propose curator ✔️ Compactu32 bounty_id
LookupasStaticLookupSource curator
CompactBalance fee
Unassign curator ✔️ Compactu32 bounty_id
Accept curator ✔️ Compactu32 bounty_id
Award bounty ✔️ Compactu32 bounty_id
LookupasStaticLookupSource beneficiary
Claim bounty ✔️ Compactu32 bounty_id
Close bounty ✔️ Compactu32 bounty_id
Extend bounty expiry ✔️ Compactu32 bounty_id
Bytes remark

Tips

Name Light XL Nesting Arguments
Report awesome ✔️ Bytes reason
AccountId who
Retract tip ✔️ Hash hash
Tip new ✔️ Bytes reason
AccountId who
Compactu128 tip_value
Tip ✔️ Hash hash
Compactu128 tip_value
Close tip ✔️ Hash hash
Slash tip ✔️ Hash hash

ChainBridge

Name Light XL Nesting Arguments
Set threshold ✔️ u32 threshold
Set resource H256 id
Vecu8 method
Remove resource ✔️ H256 id
Whitelist chain ChainId id
Add relayer ✔️ AccountId v
Remove relayer ✔️ AccountId v
Acknowledge proposal DepositNonce nonce
ChainId src_id
H256 r_id
BoxTasConfigProposal call
Reject proposal DepositNonce nonce
ChainId src_id
H256 r_id
BoxTasConfigProposal call
Eval vote state DepositNonce nonce
ChainId src_id
BoxTasConfigProposal prop

Swap

Name Light XL Nesting Arguments
Transfer native Balance amount
Vecu8 recipient
chainbridgeChainId dest_id
Transfer ✔️ AccountId to
Balance amount
Set swap fee ✔️ Compactu128 fee
Set fee destination ✔️ AccountId dest

XXCmix

Name Light XL Nesting Arguments
Set cmix hashes cmixSoftwareHashesHash hashes
Set scheduling account ✔️ AccountId who
Set next cmix variables cmixVariables variables
Submit cmix points VecTupleAccountIdu32 data
Submit cmix deductions VecTupleAccountIdu32 data
Set cmix address space ✔️ u8 size
Set admin permission ✔️ BlockNumber permission

XXEconomics

Name Light XL Nesting Arguments
Set inflation params inflationInflationFixedParams params
Set interest points VecinflationIdealInterestPointBlockNumber points
Set liquidity rewards stake ✔️ Compactu128 amount
Set liquidity rewards balance ✔️ Compactu128 amount

XXCustody

Name Light XL Nesting Arguments
Payout ✔️ AccountId who
Custody bond ✔️ AccountId custody
AccountId controller
Compactu128 amount
Custody bond extra ✔️ AccountId custody
Compactu128 amount
Custody set controller ✔️ AccountId custody
AccountId controller
Custody set proxy ✔️ AccountId custody
AccountId proxy
Team custody set proxy ✔️ AccountId proxy
Add custodian ✔️ AccountId custodian
Remove custodian ✔️ AccountId custodian
Replace team member ✔️ AccountId who
AccountId new_

XXBetanetRewards

Name Light XL Nesting Arguments
Select option RewardOption option
Approve ✔️

XXPublic

Name Light XL Nesting Arguments
Set testnet manager account ✔️ AccountId who
Set sale manager account AccountId who
Testnet distribute VecTransferDataAccountIdBalanceOfTBlockNumber data
Sale distribute VecTransferDataAccountIdBalanceOfTBlockNumber data

Multisig

Name Light XL Nesting Arguments
As multi threshold 1 ✔️ ✔️ VecAccountId other_signatories
Call call
As multi ✔️ ✔️ u16 threshold
VecAccountId other_signatories
OptionTimepoint maybe_timepoint
OpaqueCall call
bool store_call
Weight max_weight
Approve as multi ✔️ ✔️ u16 threshold
VecAccountId other_signatories
OptionTimepoint maybe_timepoint
H256 call_hash
Weight max_weight
Cancel as multi ✔️ ✔️ u16 threshold
VecAccountId other_signatories
Timepoint timepoint
H256 call_hash

Recovery

Name Light XL Nesting Arguments
As recovered AccountId account
Call call
Set recovered ✔️ AccountId lost
AccountId rescuer
Create recovery VecAccountId friends
u16 threshold
BlockNumber delay_period
Initiate recovery ✔️ AccountId account
Vouch recovery ✔️ AccountId lost
AccountId rescuer
Claim recovery ✔️ AccountId account
Close recovery ✔️ AccountId rescuer
Remove recovery ✔️
Cancel recovered ✔️ AccountId account

Assets

Name Light XL Nesting Arguments
Create Compactu32 id
LookupasStaticLookupSource admin
Balance min_balance
Force create ✔️ Compactu32 id
LookupasStaticLookupSource owner
bool is_sufficient
Compactu64 min_balance
Destroy Compactu32 id
DestroyWitness witness
Mint ✔️ Compactu32 id
LookupasStaticLookupSource beneficiary
Compactu64 amount
Burn ✔️ Compactu32 id
LookupasStaticLookupSource who
Compactu64 amount
Transfer ✔️ Compactu32 id
LookupasStaticLookupSource target
Compactu64 amount
Transfer keep alive ✔️ Compactu32 id
LookupasStaticLookupSource target
Compactu64 amount
Force transfer ✔️ Compactu32 id
LookupasStaticLookupSource source
LookupasStaticLookupSource dest
Compactu64 amount
Freeze ✔️ Compactu32 id
LookupasStaticLookupSource who
Thaw ✔️ Compactu32 id
LookupasStaticLookupSource who
Freeze asset ✔️ Compactu32 id
Thaw asset ✔️ Compactu32 id
Transfer ownership ✔️ Compactu32 id
LookupasStaticLookupSource owner
Set team ✔️ Compactu32 id
LookupasStaticLookupSource issuer
LookupasStaticLookupSource admin
LookupasStaticLookupSource freezer
Set metadata ✔️ Compactu32 id
Vecu8 name
Vecu8 symbol
u8 decimals
Clear metadata ✔️ Compactu32 id
Force set metadata ✔️ Compactu32 id
Vecu8 name
Vecu8 symbol
u8 decimals
bool is_frozen
Force clear metadata ✔️ Compactu32 id
Force asset status ✔️ Compactu32 id
LookupasStaticLookupSource owner
LookupasStaticLookupSource issuer
LookupasStaticLookupSource admin
LookupasStaticLookupSource freezer
Compactu64 min_balance
bool is_sufficient
bool is_frozen
Approve transfer ✔️ Compactu32 id
LookupasStaticLookupSource delegate
Compactu64 amount
Cancel approval ✔️ Compactu32 id
LookupasStaticLookupSource delegate
Force cancel approval ✔️ Compactu32 id
LookupasStaticLookupSource owner
LookupasStaticLookupSource delegate
Transfer approved ✔️ Compactu32 id
LookupasStaticLookupSource owner
LookupasStaticLookupSource destination
Compactu64 amount

Uniques

Name Light XL Nesting Arguments
Create ✔️ Compactu32 class_
LookupasStaticLookupSource admin
Force create ✔️ Compactu32 class_
LookupasStaticLookupSource owner
bool free_holding
Destroy Compactu32 class_
DestroyWitness witness
Mint ✔️ Compactu32 class_
Compactu32 instance
LookupasStaticLookupSource owner
Burn Compactu32 class_
Compactu32 instance
OptionLookupasStaticLookupSource check_owner
Transfer ✔️ Compactu32 class_
Compactu32 instance
LookupasStaticLookupSource dest
Redeposit Compactu32 class_
VecInstanceId instances
Freeze ✔️ Compactu32 class_
Compactu32 instance
Thaw ✔️ Compactu32 class_
Compactu32 instance
Freeze class ✔️ Compactu32 class_
Thaw class ✔️ Compactu32 class_
Transfer ownership ✔️ Compactu32 class_
LookupasStaticLookupSource owner
Set team ✔️ Compactu32 class_
LookupasStaticLookupSource issuer
LookupasStaticLookupSource admin
LookupasStaticLookupSource freezer
Approve transfer ✔️ Compactu32 class_
Compactu32 instance
LookupasStaticLookupSource delegate
Cancel approval Compactu32 class_
Compactu32 instance
OptionLookupasStaticLookupSource maybe_check_delegate
Force asset status ✔️ Compactu32 class_
LookupasStaticLookupSource owner
LookupasStaticLookupSource issuer
LookupasStaticLookupSource admin
LookupasStaticLookupSource freezer
bool free_holding
bool is_frozen
Set attribute Compactu32 class_
OptionInstanceId maybe_instance
BoundedVecu8 key
BoundedVecu8 value
Clear attribute Compactu32 class_
OptionInstanceId maybe_instance
BoundedVecu8 key
Set metadata Compactu32 class_
Compactu32 instance
BoundedVecu8 data
bool is_frozen
Clear metadata ✔️ Compactu32 class_
Compactu32 instance
Set class metadata Compactu32 class_
BoundedVecu8 data
bool is_frozen
Clear class metadata ✔️ Compactu32 class_