AcceptChannel |
An accept_channel message to be sent or received from a peer
|
Access |
The `Access` trait defines behavior for accessing chain data and state, such as blocks and
UTXOs.
|
Access.AccessInterface |
|
AnnouncementSignatures |
An announcement_signatures message to be sent or received from a peer
|
APIError |
Indicates an error on the client's part (usually some variant of attempting to use too-low or
too-high values)
|
BackgroundProcessor |
`BackgroundProcessor` takes care of tasks that (1) need to happen periodically to keep
Rust-Lightning running properly, and (2) either can or should be run in the background.
|
Balance |
Details about the balance(s) available for spending once the channel appears on chain.
|
BaseSign |
A trait to sign lightning channel transactions as described in BOLT 3.
|
BaseSign.BaseSignInterface |
|
BestBlock |
The best known block as identified by its hash and height.
|
BroadcasterInterface |
An interface to send a transaction to the Bitcoin network.
|
BroadcasterInterface.BroadcasterInterfaceInterface |
|
BuiltCommitmentTransaction |
A pre-built Bitcoin commitment transaction and its txid.
|
ChainMonitor |
An implementation of [`chain::Watch`] for monitoring channels.
|
ChainParameters |
Chain-related parameters used to construct a new `ChannelManager`.
|
ChannelAnnouncement |
A channel_announcement message to be sent or received from a peer
|
ChannelConfig |
Options which apply on a per-channel basis and may change at runtime or based on negotiation
with our counterparty.
|
ChannelCounterparty |
Channel parameters which apply to our counterparty.
|
ChannelDetails |
Details of a channel, as returned by ChannelManager::list_channels and ChannelManager::list_usable_channels
|
ChannelFeatures |
Features used within a `channel_announcement` message.
|
ChannelHandshakeConfig |
Configuration we set when applicable.
|
ChannelHandshakeLimits |
Optional channel limits which are applied during channel creation.
|
ChannelInfo |
Details about a channel (both directions).
|
ChannelManager |
Manager which keeps track of a number of channels and sends messages to the appropriate
channel, also tracking HTLC preimages and forwarding onion packets appropriately.
|
ChannelManagerPersister |
Trait which handles persisting a [`ChannelManager`] to disk.
|
ChannelManagerPersister.ChannelManagerPersisterInterface |
|
ChannelManagerReadArgs |
Arguments for the creation of a ChannelManager that are not deserialized.
|
ChannelMessageHandler |
A trait to describe an object which can receive channel messages.
|
ChannelMessageHandler.ChannelMessageHandlerInterface |
|
ChannelMonitor |
A ChannelMonitor handles chain events (blocks connected and disconnected) and generates
on-chain transactions to ensure no loss of funds occurs.
|
ChannelMonitorUpdate |
An update generated by the underlying Channel itself which contains some new information the
ChannelMonitor should be made aware of.
|
ChannelPublicKeys |
One counterparty's public keys which do not change over the life of a channel.
|
ChannelReestablish |
A channel_reestablish message to be sent or received from a peer
|
ChannelTransactionParameters |
Per-channel data used to build transactions in conjunction with the per-commitment data (CommitmentTransaction).
|
ChannelUpdate |
A channel_update message to be sent or received from a peer
|
ClosingSigned |
A closing_signed message to be sent or received from a peer
|
ClosingSignedFeeRange |
The minimum and maximum fees which the sender is willing to place on the closing transaction.
|
ClosingTransaction |
This class tracks the per-transaction information needed to build a closing transaction and will
actually build it and sign.
|
ClosureReason |
The reason the channel was closed.
|
CommitmentSigned |
A commitment_signed message to be sent or received from a peer
|
CommitmentTransaction |
This class tracks the per-transaction information needed to build a commitment transaction and will
actually build it and sign.
|
CommitmentUpdate |
Struct used to return values from revoke_and_ack messages, containing a bunch of commitment
transaction updates if they were pending.
|
Confirm |
The `Confirm` trait is used to notify when transactions have been confirmed on chain or
unconfirmed during a chain reorganization.
|
Confirm.ConfirmInterface |
|
CounterpartyChannelTransactionParameters |
Late-bound per-channel counterparty data used to build transactions.
|
CounterpartyForwardingInfo |
Information needed for constructing an invoice route hint for this channel.
|
CustomMessageHandler |
Handler for BOLT1-compliant messages.
|
CustomMessageHandler.CustomMessageHandlerInterface |
|
CustomMessageReader |
Trait to be implemented by custom message (unrelated to the channel/gossip LN layers)
decoders.
|
CustomMessageReader.CustomMessageReaderInterface |
|
DataLossProtect |
Proof that the sender knows the per-commitment secret of the previous commitment transaction.
|
DecodeError |
An error in decoding a message or struct.
|
DelayedPaymentOutputDescriptor |
Information about a spendable output to a P2WSH script.
|
Description |
Description string
# Invariants
The description can be at most 639 __bytes__ long
|
DirectedChannelTransactionParameters |
Static channel fields used to build transactions given per-commitment fields, organized by
broadcaster/countersignatory.
|
DirectionalChannelInfo |
Details about one direction of a channel.
|
ErrorAction |
Used to put an error message in a LightningError
|
ErroringMessageHandler |
A dummy struct which implements `ChannelMessageHandler` without having any channels.
|
ErrorMessage |
An error message to be sent or received from a peer
|
Event |
An Event which you should probably take some action in response to.
|
EventHandler |
A trait implemented for objects handling events from [`EventsProvider`].
|
EventHandler.EventHandlerInterface |
|
EventsProvider |
A trait indicating an object may generate events.
|
EventsProvider.EventsProviderInterface |
|
ExpiryTime |
Positive duration that defines when (relatively to the timestamp) in the future the invoice
expires
# Invariants
The number of seconds this expiry time represents has to be in the range
`0...(SYSTEM_TIME_MAX_UNIX_TIMESTAMP - MAX_EXPIRY_TIME)` to avoid overflows when adding it to a
timestamp
|
Fallback |
Fallback address in case no LN payment is possible
|
FeeEstimator |
A trait which should be implemented to provide feerate information on a number of time
horizons.
|
FeeEstimator.FeeEstimatorInterface |
|
FilesystemPersister |
FilesystemPersister persists channel data on disk, where each channel's
data is stored in a file named after its funding outpoint.
|
Filter |
The `Filter` trait defines behavior for indicating chain activity of interest pertaining to
channels.
|
Filter.FilterInterface |
|
FundingCreated |
A funding_created message to be sent or received from a peer
|
FundingLocked |
A funding_locked message to be sent or received from a peer
|
FundingSigned |
A funding_signed message to be sent or received from a peer
|
GossipTimestampFilter |
A gossip_timestamp_filter message is used by a node to request
gossip relay for messages in the requested time range when the
gossip_queries feature has been negotiated.
|
HolderCommitmentTransaction |
Information needed to build and sign a holder's commitment transaction.
|
HTLCOutputInCommitment |
Information about an HTLC as it appears in a commitment transaction
|
HTLCUpdate |
Simple structure sent back by `chain::Watch` when an HTLC from a forward channel is detected on
chain.
|
IgnoringMessageHandler |
A dummy struct which implements `RoutingMessageHandler` without storing any routing information
or doing any processing.
|
Init |
An init message to be sent or received from a peer
|
InitFeatures |
Features used within an `init` message.
|
InMemorySigner |
A simple implementation of Sign that just keeps the private keys in memory.
|
InvalidShutdownScript |
An error occurring when converting from [`Script`] to [`ShutdownScript`].
|
Invoice |
Represents a syntactically and semantically correct lightning BOLT11 invoice.
|
InvoiceFeatures |
Features used within an invoice.
|
InvoiceSignature |
Recoverable signature
|
KeysInterface |
A trait to describe an object which can get user secrets and key material.
|
KeysInterface.KeysInterfaceInterface |
|
KeysManager |
Simple KeysInterface implementor that takes a 32-byte seed for use as a BIP 32 extended key
and derives keys from that.
|
LightningError |
An Err type for failure to process messages.
|
Listen |
The `Listen` trait is used to notify when blocks have been connected or disconnected from the
chain.
|
Listen.ListenInterface |
|
Logger |
A trait encapsulating the operations required of a logger
|
Logger.LoggerInterface |
|
MessageHandler |
Provides references to trait impls which handle different types of messages.
|
MessageSendEvent |
An event generated by ChannelManager which indicates a message should be sent to a peer (or
broadcast to most peers).
|
MessageSendEventsProvider |
A trait indicating an object may generate message send events
|
MessageSendEventsProvider.MessageSendEventsProviderInterface |
|
MinFinalCltvExpiry |
`min_final_cltv_expiry` to use for the last HTLC in the route
|
MonitorEvent |
An event to be processed by the ChannelManager.
|
MonitorUpdateError |
General Err type for ChannelMonitor actions.
|
NetAddress |
An address which can be used to connect to a remote peer
|
NetGraphMsgHandler |
Receives and validates network updates from peers,
stores authentic and relevant data as a network graph.
|
NetworkGraph |
Represents the network as nodes and channels between them
|
NetworkUpdate |
Update to the [`NetworkGraph`] based on payment failure information conveyed via the Onion
return packet by a node along the route.
|
NodeAnnouncement |
A node_announcement message to be sent or received from a peer
|
NodeAnnouncementInfo |
Information received in the latest node_announcement from this node.
|
NodeFeatures |
Features used within a `node_announcement` message.
|
NodeInfo |
Details about a node in the network, known from the network announcement.
|
OpenChannel |
An open_channel message to be sent or received from a peer
|
Option_AccessZ |
An enum which can either contain a crate::lightning::chain::Access or not
|
Option_C2Tuple_usizeTransactionZZ |
An enum which can either contain a crate::c_types::derived::C2Tuple_usizeTransactionZ or not
|
Option_FilterZ |
An enum which can either contain a crate::lightning::chain::Filter or not
|
Option_NetworkUpdateZ |
An enum which can either contain a crate::lightning::routing::network_graph::NetworkUpdate or not
|
Option_TypeZ |
An enum which can either contain a crate::lightning::ln::wire::Type or not
|
Option_u16Z |
An enum which can either contain a u16 or not
|
Option_u32Z |
An enum which can either contain a u32 or not
|
Option_u64Z |
An enum which can either contain a u64 or not
|
OutPoint |
A reference to a transaction output.
|
PayeePubKey |
Payee public key
|
PaymentPurpose |
Some information provided on receipt of payment depends on whether the payment received is a
spontaneous payment or a \"conventional\" lightning payment that's paying an invoice.
|
PaymentSendFailure |
If a payment fails to send, it can be in one of several states.
|
PeerHandleError |
Error for PeerManager errors.
|
PeerManager |
A PeerManager manages a set of peers, described by their [`SocketDescriptor`] and marshalls
socket events into messages which it passes on to its [`MessageHandler`].
|
Persist |
`Persist` defines behavior for persisting channel monitors: this could mean
writing once to disk, and/or uploading to one or more backup services.
|
Persist.PersistInterface |
|
Ping |
A ping message to be sent or received from a peer
|
Pong |
A pong message to be sent or received from a peer
|
PositiveTimestamp |
A timestamp that refers to a date after 1 January 1970 which means its representation as UNIX
timestamp is positive.
|
PrivateRoute |
Private routing information
# Invariants
The encoded route has to be <1024 5bit characters long (<=639 bytes or <=12 hops)
|
QueryChannelRange |
A query_channel_range message is used to query a peer for channel
UTXOs in a range of blocks.
|
QueryShortChannelIds |
A query_short_channel_ids message is used to query a peer for
routing gossip messages related to one or more short_channel_ids.
|
RawDataPart |
Data of the `RawInvoice` that is encoded in the data part
|
RawInvoice |
Represents an syntactically correct Invoice for a payment on the lightning network,
but without the signature information.
|
ReadOnlyNetworkGraph |
A read-only view of [`NetworkGraph`].
|
ReplyChannelRange |
A reply_channel_range message is a reply to a query_channel_range
message.
|
ReplyShortChannelIdsEnd |
A reply_short_channel_ids_end message is sent as a reply to a
query_short_channel_ids message.
|
Result_AcceptChannelDecodeErrorZ |
|
Result_AnnouncementSignaturesDecodeErrorZ |
|
Result_boolLightningErrorZ |
|
Result_boolPeerHandleErrorZ |
|
Result_BuiltCommitmentTransactionDecodeErrorZ |
|
Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ |
|
Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ |
|
Result_C2Tuple_SignatureCVec_SignatureZZNoneZ |
|
Result_ChannelAnnouncementDecodeErrorZ |
|
Result_ChannelConfigDecodeErrorZ |
|
Result_ChannelFeaturesDecodeErrorZ |
|
Result_ChannelInfoDecodeErrorZ |
|
Result_ChannelMonitorUpdateDecodeErrorZ |
|
Result_ChannelPublicKeysDecodeErrorZ |
|
Result_ChannelReestablishDecodeErrorZ |
|
Result_ChannelTransactionParametersDecodeErrorZ |
|
Result_ChannelUpdateDecodeErrorZ |
|
Result_ClosingSignedDecodeErrorZ |
|
Result_ClosingSignedFeeRangeDecodeErrorZ |
|
Result_CommitmentSignedDecodeErrorZ |
|
Result_CommitmentTransactionDecodeErrorZ |
|
Result_COption_TypeZDecodeErrorZ |
|
Result_CounterpartyChannelTransactionParametersDecodeErrorZ |
|
Result_CResult_NetAddressu8ZDecodeErrorZ |
|
Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ |
|
Result_CVec_CVec_u8ZZNoneZ |
|
Result_CVec_SignatureZNoneZ |
|
Result_CVec_u8ZPeerHandleErrorZ |
|
Result_DelayedPaymentOutputDescriptorDecodeErrorZ |
|
Result_DescriptionCreationErrorZ |
|
Result_DirectionalChannelInfoDecodeErrorZ |
|
Result_ErrorMessageDecodeErrorZ |
|
Result_ExpiryTimeCreationErrorZ |
|
Result_FundingCreatedDecodeErrorZ |
|
Result_FundingLockedDecodeErrorZ |
|
Result_FundingSignedDecodeErrorZ |
|
Result_GossipTimestampFilterDecodeErrorZ |
|
Result_HolderCommitmentTransactionDecodeErrorZ |
|
Result_HTLCOutputInCommitmentDecodeErrorZ |
|
Result_HTLCUpdateDecodeErrorZ |
|
Result_InitDecodeErrorZ |
|
Result_InitFeaturesDecodeErrorZ |
|
Result_InMemorySignerDecodeErrorZ |
|
Result_InvoiceFeaturesDecodeErrorZ |
|
Result_InvoiceNoneZ |
|
Result_InvoiceSemanticErrorZ |
|
Result_InvoiceSignOrCreationErrorZ |
|
Result_NetAddressDecodeErrorZ |
|
Result_NetAddressu8Z |
|
Result_NetworkGraphDecodeErrorZ |
|
Result_NodeAnnouncementDecodeErrorZ |
|
Result_NodeAnnouncementInfoDecodeErrorZ |
|
Result_NodeFeaturesDecodeErrorZ |
|
Result_NodeInfoDecodeErrorZ |
|
Result_NoneAPIErrorZ |
|
Result_NoneChannelMonitorUpdateErrZ |
|
Result_NoneErrorZ |
|
Result_NoneLightningErrorZ |
|
Result_NoneMonitorUpdateErrorZ |
|
Result_NoneNoneZ |
|
Result_NonePaymentSendFailureZ |
|
Result_NonePeerHandleErrorZ |
|
Result_NoneSemanticErrorZ |
|
Result_OpenChannelDecodeErrorZ |
|
Result_OutPointDecodeErrorZ |
|
Result_PayeePubKeyErrorZ |
|
Result_PaymentHashPaymentSendFailureZ |
|
Result_PaymentSecretAPIErrorZ |
|
Result_PingDecodeErrorZ |
|
Result_PongDecodeErrorZ |
|
Result_PositiveTimestampCreationErrorZ |
|
Result_PrivateRouteCreationErrorZ |
|
Result_PublicKeyErrorZ |
|
Result_QueryChannelRangeDecodeErrorZ |
|
Result_QueryShortChannelIdsDecodeErrorZ |
|
Result_RecoverableSignatureNoneZ |
|
Result_ReplyChannelRangeDecodeErrorZ |
|
Result_ReplyShortChannelIdsEndDecodeErrorZ |
|
Result_RevokeAndACKDecodeErrorZ |
|
Result_RouteDecodeErrorZ |
|
Result_RouteHopDecodeErrorZ |
|
Result_RouteLightningErrorZ |
|
Result_RoutingFeesDecodeErrorZ |
|
Result_SecretKeyErrorZ |
|
Result_ShutdownDecodeErrorZ |
|
Result_ShutdownScriptDecodeErrorZ |
|
Result_ShutdownScriptInvalidShutdownScriptZ |
|
Result_SignatureNoneZ |
|
Result_SignDecodeErrorZ |
|
Result_SignedRawInvoiceNoneZ |
|
Result_SiPrefixNoneZ |
|
Result_SpendableOutputDescriptorDecodeErrorZ |
|
Result_StaticPaymentOutputDescriptorDecodeErrorZ |
|
Result_StringErrorZ |
|
Result_TransactionNoneZ |
|
Result_TrustedClosingTransactionNoneZ |
|
Result_TrustedCommitmentTransactionNoneZ |
|
Result_TxCreationKeysDecodeErrorZ |
|
Result_TxCreationKeysErrorZ |
|
Result_TxOutAccessErrorZ |
|
Result_UnsignedChannelAnnouncementDecodeErrorZ |
|
Result_UnsignedChannelUpdateDecodeErrorZ |
|
Result_UnsignedNodeAnnouncementDecodeErrorZ |
|
Result_UpdateAddHTLCDecodeErrorZ |
|
Result_UpdateFailHTLCDecodeErrorZ |
|
Result_UpdateFailMalformedHTLCDecodeErrorZ |
|
Result_UpdateFeeDecodeErrorZ |
|
Result_UpdateFulfillHTLCDecodeErrorZ |
|
RevokeAndACK |
A revoke_and_ack message to be sent or received from a peer
|
Route |
A route directs a payment from the sender (us) to the recipient.
|
RouteHint |
A list of hops along a payment path terminating with a channel to the recipient.
|
RouteHintHop |
A channel descriptor for a hop along a payment path.
|
RouteHop |
A hop in a route
|
RoutingFees |
Fees for routing via a given channel or a node
|
RoutingMessageHandler |
A trait to describe an object which can receive routing messages.
|
RoutingMessageHandler.RoutingMessageHandlerInterface |
|
Sha256 |
SHA-256 hash
|
Shutdown |
A shutdown message to be sent or received from a peer
|
ShutdownScript |
A script pubkey for shutting down a channel as defined by [BOLT #2].
|
Sign |
A cloneable signer.
|
Sign.SignInterface |
|
SignedRawInvoice |
Represents a signed `RawInvoice` with cached hash.
|
SignOrCreationError |
When signing using a fallible method either an user-supplied `SignError` or a `CreationError`
may occur.
|
SocketDescriptor |
Provides an object which can be used to send data to and which uniquely identifies a connection
to a remote host.
|
SocketDescriptor.SocketDescriptorInterface |
|
SpendableOutputDescriptor |
When on-chain outputs are created by rust-lightning (which our counterparty is not able to
claim at any point in the future) an event is generated which you must track and be able to
spend on-chain.
|
StaticPaymentOutputDescriptor |
Information about a spendable output to our \"payment key\".
|
TrustedClosingTransaction |
A wrapper on ClosingTransaction indicating that the built bitcoin
transaction is trusted.
|
TrustedCommitmentTransaction |
A wrapper on CommitmentTransaction indicating that the derived fields (the built bitcoin
transaction and the transaction creation keys) are trusted.
|
TxCreationKeys |
The set of public keys which are used in the creation of one commitment transaction.
|
TxOut |
|
Type |
Defines a type identifier for sending messages over the wire.
|
Type.TypeInterface |
|
UnsignedChannelAnnouncement |
The unsigned part of a channel_announcement
|
UnsignedChannelUpdate |
The unsigned part of a channel_update
|
UnsignedNodeAnnouncement |
The unsigned part of a node_announcement
|
UpdateAddHTLC |
An update_add_htlc message to be sent or received from a peer
|
UpdateFailHTLC |
An update_fail_htlc message to be sent or received from a peer
|
UpdateFailMalformedHTLC |
An update_fail_malformed_htlc message to be sent or received from a peer
|
UpdateFee |
An update_fee message to be sent or received from a peer
|
UpdateFulfillHTLC |
An update_fulfill_htlc message to be sent or received from a peer
|
UserConfig |
Top-level config which holds ChannelHandshakeLimits and ChannelConfig.
|
Watch |
The `Watch` trait defines behavior for watching on-chain activity pertaining to channels as
blocks are connected and disconnected.
|
Watch.WatchInterface |
|
WatchedOutput |
A transaction output watched by a [`ChannelMonitor`] for spends on-chain.
|