cuprate_zmq_types

Module json_message_types

Source
Expand description

Objects for JSON serialization and deserialization in message bodies of the ZMQ pub/sub interface. Handles JSON for the following subscriptions:

  • json-full-txpool_add (Vec<TxPoolAdd>)
  • json-minimal-txpool_add (Vec<TxPoolAddMin>)
  • json-full-chain_main (Vec<ChainMain>)
  • json-minimal-chain_main (ChainMainMin)
  • json-full-miner_data (MinerData)

Structsยง

  • Bulletproofs+ data used to validate the legitimacy of a Ring CT transaction.
  • ZMQ json-full-chain_main subscriber messages contain an array of ChainMain JSON objects. Each ChainMain object represents a new block. Push messages only contain more than one block if a re-org occurred.
  • ZMQ json-minimal-chain_main subscriber messages contain a single ChainMainMin JSON object. Unlike the full version, only the topmost block is sent in the case of a re-org.
  • CLSAG signature fields
  • Holds the encrypted amount of a non-coinbase transaction output.
  • Additional namespace layer around the block height in ChainMain; gen is another name for a coinbase transaction
  • ZMQ json-full-miner_data subscriber messages contain a single MinerData object that provides the necessary data to create a custom block template. There is no min version of this object.
  • Holds the block height of the coinbase transaction.
  • Part of the new block information in ChainMain
  • Transaction output data used by both TxPoolAdd and MinerTx
  • Holds a single input for the TxPoolAdd inputs array.
  • Ring CT information used inside TxPoolAdd
  • Data needed to validate a transaction that can optionally be pruned from older blocks.
  • Same as PoolInput (adds an extra JSON name layer)
  • Holds the public key of an output destination with its view tag.
  • Holds a transaction entry in the MinerData tx_backlog field.
  • ZMQ json-full-txpool_add packets contain an array of TxPoolAdd.
  • ZMQ json-minimal-txpool_add subscriber messages contain an array of TxPoolAddMin JSON objects. See TxPoolAdd for information on which transactions are published to subscribers.