Module ln
Expand description
Implementations of various parts of the Lightning protocol are in this module.
Modules§
- bolt11_
payment - Convenient utilities for paying Lightning invoices.
- chan_
utils - Various utilities for building scripts related to channels. These are
largely of interest for those implementing the traits on
crate::sign
by hand. - channel_
keys - Keys used to generate commitment transactions. See: https://github.com/lightning/bolts/blob/master/03-transactions.md#keys
- channel_
state - Information about the state of a channel.
- channelmanager
- The top-level channel management and payment tracking stuff lives here.
- inbound_
payment - Utilities to generate inbound payment information in service of invoice creation.
- invoice_
utils - Convenient utilities to create an invoice.
- msgs
- Wire messages, traits representing wire message handlers, and a few error types live here.
- onion_
payment - Utilities to decode payment onions and do contextless validation of incoming payments.
- peer_
handler - Top level peer message handling and socket handling logic lives here.
- script
- Abstractions for scripts used in the Lightning Network.
- types
- Various wrapper types (most around 32-byte arrays) for use in lightning.
- wire
- Wire encoding/decoding for Lightning messages according to BOLT #1, and for
custom message through the
CustomMessageReader
trait.
Constants§
- LN_
MAX_ MSG_ LEN - Maximum Lightning message data length according to BOLT-8 and BOLT-1:
Functions§
- create_
payment_ onion - Build a payment onion, returning the first hop msat and cltv values as well.
cur_block_height
should be set to the best known block height + 1.