doc: escape more naughty underscores

The only time underscores aren't special in Markdown is when they appear
in preformatted text. We have gotten away with not escaping underscores
where an asterisk-enclosed span or the paragraph ends before the next
underscore appears, but this is fragile and bad practice. Conversely,
there are many places where we have not escaped underscores but needed
to.

Escape all underscores that do not appear in preformatted blocks or
preformatted spans and are not themselves delineating emphasized spans.

The changes in this commit are exactly the result of executing the
following Bash code:

```bash
e=':x;'           	# begin loop
e+='s/^'          	# anchor match at beginning of line
e+='('            	# begin capturing subexpression
	e+='('    	# begin list of alternatives
		e+='[^`_\\]|'        	# any mundane character, or
		e+='`([^`\\]|\\.)*`|'	# backtick-enclosed span, or
		e+='\b_|_\b|'        	# underscore at boundary, or
		e+='\\.'             	# backslash-escaped character
	e+=')*'   	# any number of the preceding alternatives
e+=')'            	# end capturing subexpression
e+='\B_\B/\1\\_/;'	# escape non-formatting underscore
e+='tx'           	# repeat loop if we escaped an underscore

escape_underscores=(
	sed

	# use extended regular expressions
	-E

	# skip over indented blocks (following an empty line)
	-e '/^$/{:i;n;/^( {4,}|\t)/bi}'

	# skip over preformatted blocks
	-e '/^\s*```/,/^\s*```/{p;d}'

	# skip over generated sections
	-e '/GENERATE-FROM-SCHEMA-START/,/GENERATE-FROM-SCHEMA-END/{p;d}'

	# escape underscores
	-e "${e}"
)

"${escape_underscores[@]}" -i doc/*.[0-9].md
```

Changelog-None
This commit is contained in:
Matt Whitlock 2022-11-10 20:44:56 -05:00 committed by Rusty Russell
parent 41987ed379
commit 09d52b3cb4
49 changed files with 229 additions and 229 deletions

View file

@ -16,7 +16,7 @@ update its internal state using the gossip message.
Note that currently some paths will still silently reject the gossip: it Note that currently some paths will still silently reject the gossip: it
is best effort. is best effort.
This is particularly used by plugins which may receive channel_update This is particularly used by plugins which may receive channel\_update
messages within error replies. messages within error replies.
RETURN VALUE RETURN VALUE

View file

@ -4,7 +4,7 @@ lightning-bkpr-channelsapy -- Command to list stats on channel earnings
SYNOPSIS SYNOPSIS
-------- --------
**bkpr-channelsapy** \[*start_time*\] \[*end_time*\] **bkpr-channelsapy** \[*start\_time*\] \[*end\_time*\]
DESCRIPTION DESCRIPTION
----------- -----------
@ -12,9 +12,9 @@ DESCRIPTION
The **bkpr-channelsapy** RPC command lists stats on routing income, leasing income, The **bkpr-channelsapy** RPC command lists stats on routing income, leasing income,
and various calculated APYs for channel routed funds. and various calculated APYs for channel routed funds.
The **start_time** is a UNIX timestamp (in seconds) that filters events after the provided timestamp. Defaults to zero. The **start\_time** is a UNIX timestamp (in seconds) that filters events after the provided timestamp. Defaults to zero.
The **end_time** is a UNIX timestamp (in seconds) that filters events up to and at the provided timestamp. Defaults to max-int. The **end\_time** is a UNIX timestamp (in seconds) that filters events up to and at the provided timestamp. Defaults to max-int.
RETURN VALUE RETURN VALUE

View file

@ -4,19 +4,19 @@ lightning-bkpr-dumpincomecsv -- Command to emit a CSV of income events
SYNOPSIS SYNOPSIS
-------- --------
**bkpr-dumpincomecsv** *csv_format* \[*csv_file*\] \[*consolidate_fees*\] \[*start_time*\] \[*end_time*\] **bkpr-dumpincomecsv** *csv\_format* \[*csv\_file*\] \[*consolidate\_fees*\] \[*start\_time*\] \[*end\_time*\]
DESCRIPTION DESCRIPTION
----------- -----------
The **bkpr-dumpincomcsv** RPC command writes a CSV file to disk at *csv_file* The **bkpr-dumpincomcsv** RPC command writes a CSV file to disk at *csv\_file*
location. This is a formatted output of the **listincome** RPC command. location. This is a formatted output of the **listincome** RPC command.
**csv_format** is which CSV format to use. See RETURN VALUE for options. **csv\_format** is which CSV format to use. See RETURN VALUE for options.
**csv_file** is the on-disk destination of the generated CSV file. **csv\_file** is the on-disk destination of the generated CSV file.
If **consolidate_fees** is true, we emit a single, consolidated event for If **consolidate\_fees** is true, we emit a single, consolidated event for
any onchain-fees for a txid and account. Otherwise, events for every update to any onchain-fees for a txid and account. Otherwise, events for every update to
the onchain fee calculation for this account and txid will be printed. the onchain fee calculation for this account and txid will be printed.
Defaults to true. Note that this means that the events emitted are Defaults to true. Note that this means that the events emitted are
@ -24,9 +24,9 @@ non-stable, i.e. calling **dumpincomecsv** twice may result in different
onchain fee events being emitted, depending on how much information we've onchain fee events being emitted, depending on how much information we've
logged for that transaction. logged for that transaction.
The **start_time** is a UNIX timestamp (in seconds) that filters events after the provided timestamp. Defaults to zero. The **start\_time** is a UNIX timestamp (in seconds) that filters events after the provided timestamp. Defaults to zero.
The **end_time** is a UNIX timestamp (in seconds) that filters events up to and at the provided timestamp. Defaults to max-int. The **end\_time** is a UNIX timestamp (in seconds) that filters events up to and at the provided timestamp. Defaults to max-int.
RETURN VALUE RETURN VALUE

View file

@ -14,7 +14,7 @@ The **bkpr-listaccountevents** RPC command is a list of all bookkeeping events t
If the optional parameter **account** is set, we only emit events for the If the optional parameter **account** is set, we only emit events for the
specified account, if exists. specified account, if exists.
Note that the type **onchain_fees** that are emitted are of opposite credit/debit than as they appear in **listincome**, as **listincome** shows all events from the perspective of the node, whereas **listaccountevents** just dumps the event data as we've got it. Onchain fees are updated/recorded as we get more information about input and output spends -- the total onchain fees that were recorded for a transaction for an account can be found by summing all onchain fee events and taking the difference between the **credit_msat** and **debit_msat** for these events. We do this so that successive calls to **listaccountevents** always Note that the type **onchain\_fees** that are emitted are of opposite credit/debit than as they appear in **listincome**, as **listincome** shows all events from the perspective of the node, whereas **listaccountevents** just dumps the event data as we've got it. Onchain fees are updated/recorded as we get more information about input and output spends -- the total onchain fees that were recorded for a transaction for an account can be found by summing all onchain fee events and taking the difference between the **credit\_msat** and **debit\_msat** for these events. We do this so that successive calls to **listaccountevents** always
produce the same list of events -- no previously emitted event will be produce the same list of events -- no previously emitted event will be
subsequently updated, rather we add a new event to the list. subsequently updated, rather we add a new event to the list.

View file

@ -4,23 +4,23 @@ lightning-bkpr-listincome -- Command for listing all income impacting events
SYNOPSIS SYNOPSIS
-------- --------
**bkpr-listincome** \[*consolidate_fees*\] \[*start_time*\] \[*end_time*\] **bkpr-listincome** \[*consolidate\_fees*\] \[*start\_time*\] \[*end\_time*\]
DESCRIPTION DESCRIPTION
----------- -----------
The **bkpr-listincome** RPC command is a list of all income impacting events that the bookkeeper plugin has recorded for this node. The **bkpr-listincome** RPC command is a list of all income impacting events that the bookkeeper plugin has recorded for this node.
If **consolidate_fees** is true, we emit a single, consolidated event for If **consolidate\_fees** is true, we emit a single, consolidated event for
any onchain-fees for a txid and account. Otherwise, events for every update to any onchain-fees for a txid and account. Otherwise, events for every update to
the onchain fee calculation for this account and txid will be printed. Defaults to true. Note that this means that the events emitted are non-stable, the onchain fee calculation for this account and txid will be printed. Defaults to true. Note that this means that the events emitted are non-stable,
i.e. calling **listincome** twice may result in different onchain fee events i.e. calling **listincome** twice may result in different onchain fee events
being emitted, depending on how much information we've logged for that being emitted, depending on how much information we've logged for that
transaction. transaction.
The **start_time** is a UNIX timestamp (in seconds) that filters events after the provided timestamp. Defaults to zero. The **start\_time** is a UNIX timestamp (in seconds) that filters events after the provided timestamp. Defaults to zero.
The **end_time** is a UNIX timestamp (in seconds) that filters events up to and at the provided timestamp. Defaults to max-int. The **end\_time** is a UNIX timestamp (in seconds) that filters events up to and at the provided timestamp. Defaults to max-int.
RETURN VALUE RETURN VALUE
------------ ------------

View file

@ -4,7 +4,7 @@ lightning-close -- Command for closing channels with direct peers
SYNOPSIS SYNOPSIS
-------- --------
**close** *id* [*unilateraltimeout*] [*destination*] [*fee_negotiation_step*] [*wrong_funding*] [*force_lease_closed*] [\*feerange\*] **close** *id* [*unilateraltimeout*] [*destination*] [*fee\_negotiation\_step*] [*wrong\_funding*] [*force\_lease\_closed*] [\*feerange\*]
DESCRIPTION DESCRIPTION
----------- -----------
@ -31,7 +31,7 @@ the peer hasn't offered the `option_shutdown_anysegwit` feature, then
taproot addresses (or other v1+ segwit) are not allowed. Tell your taproot addresses (or other v1+ segwit) are not allowed. Tell your
friends to upgrade! friends to upgrade!
The *fee_negotiation_step* parameter controls how closing fee The *fee\_negotiation\_step* parameter controls how closing fee
negotiation is performed assuming the peer proposes a fee that is negotiation is performed assuming the peer proposes a fee that is
different than our estimate. (Note that modern peers use the quick-close protocol which does not allow negotiation: see *feerange* instead). different than our estimate. (Note that modern peers use the quick-close protocol which does not allow negotiation: see *feerange* instead).
@ -50,8 +50,8 @@ we quickly accept the peer's proposal.
The default is "50%". The default is "50%".
*wrong_funding* can only be specified if both sides have offered *wrong\_funding* can only be specified if both sides have offered
the "shutdown_wrong_funding" feature (enabled by the the "shutdown\_wrong\_funding" feature (enabled by the
**experimental-shutdown-wrong-funding** option): it must be a **experimental-shutdown-wrong-funding** option): it must be a
transaction id followed by a colon then the output number. Instead of transaction id followed by a colon then the output number. Instead of
negotiating a shutdown to spend the expected funding transaction, the negotiating a shutdown to spend the expected funding transaction, the
@ -59,13 +59,13 @@ shutdown transaction will spend this output instead. This is only
allowed if this peer opened the channel and the channel is unused: it allowed if this peer opened the channel and the channel is unused: it
can rescue openings which have been manually miscreated. can rescue openings which have been manually miscreated.
*force_lease_closed* if the channel has funds leased to the peer *force\_lease\_closed* if the channel has funds leased to the peer
(option_will_fund), we prevent initiation of a mutual close (option\_will\_fund), we prevent initiation of a mutual close
unless this flag is passed in. Defaults to false. unless this flag is passed in. Defaults to false.
*feerange* is an optional array [ *min*, *max* ], indicating the *feerange* is an optional array [ *min*, *max* ], indicating the
minimum and maximum feerates to offer: the peer will obey these if it minimum and maximum feerates to offer: the peer will obey these if it
supports the quick-close protocol. *slow* and *unilateral_close* are supports the quick-close protocol. *slow* and *unilateral\_close* are
the defaults. the defaults.
Rates are one of the strings *urgent* (aim for next block), *normal* Rates are one of the strings *urgent* (aim for next block), *normal*

View file

@ -30,7 +30,7 @@ is listpeers", or "method is listpeers OR time is before 2023". Alternatives us
being run: being run:
* time: the current UNIX time, e.g. "time<1656759180". * time: the current UNIX time, e.g. "time<1656759180".
* id: the node_id of the peer, e.g. "id=024b9a1fa8e006f1e3937f65f66c408e6da8e1ca728ea43222a7381df1cc449605". * id: the node\_id of the peer, e.g. "id=024b9a1fa8e006f1e3937f65f66c408e6da8e1ca728ea43222a7381df1cc449605".
* method: the command being run, e.g. "method=withdraw". * method: the command being run, e.g. "method=withdraw".
* rate: the rate limit, per minute, e.g. "rate=60". * rate: the rate limit, per minute, e.g. "rate=60".
* pnum: the number of parameters. e.g. "pnum<2". * pnum: the number of parameters. e.g. "pnum<2".

View file

@ -4,13 +4,13 @@ lightning-commando -- Command to Send a Command to a Remote Peer
SYNOPSIS SYNOPSIS
-------- --------
**commando** *peer_id* *method* [*params*] [*rune*] **commando** *peer\_id* *method* [*params*] [*rune*]
DESCRIPTION DESCRIPTION
----------- -----------
The **commando** RPC command is a homage to bad 80s movies. It also The **commando** RPC command is a homage to bad 80s movies. It also
sends a directly-connected *peer_id* a custom message, containing a sends a directly-connected *peer\_id* a custom message, containing a
request to run *method* (with an optional dictionary of *params*); request to run *method* (with an optional dictionary of *params*);
generally the peer will only allow you to run a command if it has generally the peer will only allow you to run a command if it has
provided you with a *rune* which allows it. provided you with a *rune* which allows it.

View file

@ -4,7 +4,7 @@ lightning-createonion -- Low-level command to create a custom onion
SYNOPSIS SYNOPSIS
-------- --------
**createonion** *hops* *assocdata* [*session_key*] [*onion_size*] **createonion** *hops* *assocdata* [*session\_key*] [*onion\_size*]
DESCRIPTION DESCRIPTION
----------- -----------
@ -75,13 +75,13 @@ The *assocdata* parameter specifies the associated data that the onion should
commit to. If the onion is to be used to send a payment later it MUST match commit to. If the onion is to be used to send a payment later it MUST match
the `payment_hash` of the payment in order to be valid. the `payment_hash` of the payment in order to be valid.
The optional *session_key* parameter can be used to specify a secret that is The optional *session\_key* parameter can be used to specify a secret that is
used to generate the shared secrets used to encrypt the onion for each hop. It used to generate the shared secrets used to encrypt the onion for each hop. It
should only be used for testing or if a specific shared secret is should only be used for testing or if a specific shared secret is
important. If not specified it will be securely generated internally, and the important. If not specified it will be securely generated internally, and the
shared secrets will be returned. shared secrets will be returned.
The optional *onion_size* parameter specifies a size different from the default The optional *onion\_size* parameter specifies a size different from the default
payment onion (1300 bytes). May be used for custom protocols like trampoline payment onion (1300 bytes). May be used for custom protocols like trampoline
routing. routing.

View file

@ -4,13 +4,13 @@ lightning-delforward -- Command for removing a forwarding entry
SYNOPSIS SYNOPSIS
-------- --------
**delforward** *in_channel* *in_htlc_id* *status* **delforward** *in\_channel* *in\_htlc\_id* *status*
DESCRIPTION DESCRIPTION
----------- -----------
The **delforward** RPC command removes a single forward from **listforwards**, The **delforward** RPC command removes a single forward from **listforwards**,
using the uniquely-identifying *in_channel* and *in_htlc_id* (and, as a sanity using the uniquely-identifying *in\_channel* and *in\_htlc\_id* (and, as a sanity
check, the *status*) given by that command. check, the *status*) given by that command.
This command is mainly used by the *autoclean* plugin (see lightningd-config(7)), This command is mainly used by the *autoclean* plugin (see lightningd-config(7)),
@ -20,10 +20,10 @@ has no effect on the running of your node.
You cannot delete forwards which have status *offered* (i.e. are You cannot delete forwards which have status *offered* (i.e. are
currently active). currently active).
Note: for **listforwards** entries without an *in_htlc_id* entry (no Note: for **listforwards** entries without an *in\_htlc\_id* entry (no
longer created in v22.11, but can exist from older versions), a value longer created in v22.11, but can exist from older versions), a value
of 18446744073709551615 can be used, but then it will delete *all* of 18446744073709551615 can be used, but then it will delete *all*
entries without *in_htlc_id* for this *in_channel* and *status*. entries without *in\_htlc\_id* for this *in\_channel* and *status*.
RETURN VALUE RETURN VALUE
------------ ------------

View file

@ -59,7 +59,7 @@ The following errors may be reported:
- 905: An invoice with that label does not exist. - 905: An invoice with that label does not exist.
- 906: The invoice *status* does not match the parameter. - 906: The invoice *status* does not match the parameter.
An error object will be returned as error *data*, containing An error object will be returned as error *data*, containing
*current_status* and *expected_status* fields. *current\_status* and *expected\_status* fields.
This is most likely due to the *status* of the invoice This is most likely due to the *status* of the invoice
changing just before this command is invoked. changing just before this command is invoked.
- 908: The invoice already has no description, and *desconly* was set. - 908: The invoice already has no description, and *desconly* was set.

View file

@ -114,7 +114,7 @@ SEE ALSO
-------- --------
lightning-parsefeerate(7), lightning-fundchannel(7), lightning-withdraw(7), lightning-parsefeerate(7), lightning-fundchannel(7), lightning-withdraw(7),
lightning-txprepare(7), lightning-fundchannel_start(7). lightning-txprepare(7), lightning-fundchannel\_start(7).
RESOURCES RESOURCES
--------- ---------

View file

@ -6,7 +6,7 @@ SYNOPSIS
**(WARNING: experimental-offers only)** **(WARNING: experimental-offers only)**
**fetchinvoice** *offer* [*msatoshi*] [*quantity*] [*recurrence_counter*] [*recurrence_start*] [*recurrence_label*] [*timeout*] [*payer_note*] **fetchinvoice** *offer* [*msatoshi*] [*quantity*] [*recurrence\_counter*] [*recurrence\_start*] [*recurrence\_label*] [*timeout*] [*payer\_note*]
DESCRIPTION DESCRIPTION
----------- -----------
@ -19,31 +19,31 @@ If **fetchinvoice-noconnect** is not specified in the configuation, it
will connect to the destination in the (currently common!) case where it will connect to the destination in the (currently common!) case where it
cannot find a route which supports `option_onion_messages`. cannot find a route which supports `option_onion_messages`.
The offer must not contain *send_invoice*; see lightning-sendinvoice(7). The offer must not contain *send\_invoice*; see lightning-sendinvoice(7).
*msatoshi* is required if the *offer* does not specify *msatoshi* is required if the *offer* does not specify
an amount at all, otherwise it is not allowed. an amount at all, otherwise it is not allowed.
*quantity* is is required if the *offer* specifies *quantity* is is required if the *offer* specifies
*quantity_min* or *quantity_max*, otherwise it is not allowed. *quantity\_min* or *quantity\_max*, otherwise it is not allowed.
*recurrence_counter* is required if the *offer* *recurrence\_counter* is required if the *offer*
specifies *recurrence*, otherwise it is not allowed. specifies *recurrence*, otherwise it is not allowed.
*recurrence_counter* should first be set to 0, and incremented for *recurrence\_counter* should first be set to 0, and incremented for
each successive invoice in a given series. each successive invoice in a given series.
*recurrence_start* is required if the *offer* *recurrence\_start* is required if the *offer*
specifies *recurrence_base* with *start_any_period* set, otherwise it specifies *recurrence\_base* with *start\_any\_period* set, otherwise it
is not allowed. It indicates what period number to start at. is not allowed. It indicates what period number to start at.
*recurrence_label* is required if *recurrence_counter* is set, and *recurrence\_label* is required if *recurrence\_counter* is set, and
otherwise is not allowed. It must be the same as prior fetchinvoice otherwise is not allowed. It must be the same as prior fetchinvoice
calls for the same recurrence, as it is used to link them together. calls for the same recurrence, as it is used to link them together.
*timeout* is an optional timeout; if we don't get a reply before this *timeout* is an optional timeout; if we don't get a reply before this
we fail (default, 60 seconds). we fail (default, 60 seconds).
*payer_note* is an optional payer note to include in the fetched invoice. *payer\_note* is an optional payer note to include in the fetched invoice.
RETURN VALUE RETURN VALUE
------------ ------------

View file

@ -5,7 +5,7 @@ SYNOPSIS
-------- --------
**fundchannel** *id* *amount* [*feerate*] [*announce*] [*minconf*] **fundchannel** *id* *amount* [*feerate*] [*announce*] [*minconf*]
[*utxos*] [*push_msat*] [*close_to*] [*request_amt*] [*compact_lease*] [*utxos*] [*push\_msat*] [*close\_to*] [*request\_amt*] [*compact\_lease*]
DESCRIPTION DESCRIPTION
----------- -----------
@ -55,20 +55,20 @@ outputs should have. Default is 1.
*utxos* specifies the utxos to be used to fund the channel, as an array *utxos* specifies the utxos to be used to fund the channel, as an array
of "txid:vout". of "txid:vout".
*push_msat* is the amount of millisatoshis to push to the channel peer at *push\_msat* is the amount of millisatoshis to push to the channel peer at
open. Note that this is a gift to the peer -- these satoshis are open. Note that this is a gift to the peer -- these satoshis are
added to the initial balance of the peer at channel start and are largely added to the initial balance of the peer at channel start and are largely
unrecoverable once pushed. unrecoverable once pushed.
*close_to* is a Bitcoin address to which the channel funds should be sent to *close\_to* is a Bitcoin address to which the channel funds should be sent to
on close. Only valid if both peers have negotiated `option_upfront_shutdown_script`. on close. Only valid if both peers have negotiated `option_upfront_shutdown_script`.
Returns `close_to` set to closing script iff is negotiated. Returns `close_to` set to closing script iff is negotiated.
*request_amt* is an amount of liquidity you'd like to lease from the peer. *request\_amt* is an amount of liquidity you'd like to lease from the peer.
If peer supports `option_will_fund`, indicates to them to include this If peer supports `option_will_fund`, indicates to them to include this
much liquidity into the channel. Must also pass in *compact_lease*. much liquidity into the channel. Must also pass in *compact\_lease*.
*compact_lease* is a compact represenation of the peer's expected *compact\_lease* is a compact represenation of the peer's expected
channel lease terms. If the peer's terms don't match this set, we will channel lease terms. If the peer's terms don't match this set, we will
fail to open the channel. fail to open the channel.

View file

@ -4,7 +4,7 @@ lightning-fundchannel\_start -- Command for initiating channel establishment for
SYNOPSIS SYNOPSIS
-------- --------
**fundchannel\_start** *id* *amount* [*feerate* *announce* *close_to* *push_msat*] **fundchannel\_start** *id* *amount* [*feerate* *announce* *close\_to* *push\_msat*]
DESCRIPTION DESCRIPTION
----------- -----------
@ -23,11 +23,11 @@ commitment transactions: see **fundchannel**.
*announce* whether or not to announce this channel. *announce* whether or not to announce this channel.
*close_to* is a Bitcoin address to which the channel funds should be sent to *close\_to* is a Bitcoin address to which the channel funds should be sent to
on close. Only valid if both peers have negotiated `option_upfront_shutdown_script`. on close. Only valid if both peers have negotiated `option_upfront_shutdown_script`.
Returns `close_to` set to closing script iff is negotiated. Returns `close_to` set to closing script iff is negotiated.
*push_msat* is the amount of millisatoshis to push to the channel peer at *push\_msat* is the amount of millisatoshis to push to the channel peer at
open. Note that this is a gift to the peer -- these satoshis are open. Note that this is a gift to the peer -- these satoshis are
added to the initial balance of the peer at channel start and are largely added to the initial balance of the peer at channel start and are largely
unrecoverable once pushed. unrecoverable once pushed.

View file

@ -4,7 +4,7 @@ lightning-funderupdate -- Command for adjusting node funding v2 channels
SYNOPSIS SYNOPSIS
-------- --------
**funderupdate** [*policy*] [*policy_mod*] [*leases_only*] [*min_their_funding_msat*] [*max_their_funding_msat*] [*per_channel_min_msat*] [*per_channel_max_msat*] [*reserve_tank_msat*] [*fuzz_percent*] [*fund_probability*] [*lease_fee_base_msat*] [*lease_fee_basis*] [*funding_weight*] [*channel_fee_max_base_msat*] [*channel_fee_max_proportional_thousandths*] [*compact_lease*] **funderupdate** [*policy*] [*policy\_mod*] [*leases\_only*] [*min\_their\_funding\_msat*] [*max\_their\_funding\_msat*] [*per\_channel\_min\_msat*] [*per\_channel\_max\_msat*] [*reserve\_tank\_msat*] [*fuzz\_percent*] [*fund\_probability*] [*lease\_fee\_base\_msat*] [*lease\_fee\_basis*] [*funding\_weight*] [*channel\_fee\_max\_base\_msat*] [*channel\_fee\_max\_proportional\_thousandths*] [*compact\_lease*]
NOTE: Must have --experimental-dual-fund enabled for these settings to take effect. NOTE: Must have --experimental-dual-fund enabled for these settings to take effect.
@ -14,55 +14,55 @@ DESCRIPTION
For channel open requests using For channel open requests using
*policy*, *policy_mod* is the policy the funder plugin will use to decide *policy*, *policy\_mod* is the policy the funder plugin will use to decide
how much capital to commit to a v2 open channel request. There are three how much capital to commit to a v2 open channel request. There are three
policy options, detailed below: `match`, `available`, and `fixed`. policy options, detailed below: `match`, `available`, and `fixed`.
The *policy_mod* is the number or 'modification' to apply to the policy. The *policy\_mod* is the number or 'modification' to apply to the policy.
Default is (fixed, 0sats). Default is (fixed, 0sats).
* `match` -- Contribute *policy_mod* percent of their requested funds. * `match` -- Contribute *policy\_mod* percent of their requested funds.
Valid *policy_mod* values are 0 to 200. If this is a channel lease Valid *policy\_mod* values are 0 to 200. If this is a channel lease
request, we match based on their requested funds. If it is not a request, we match based on their requested funds. If it is not a
channel lease request (and *lease_only* is false), then we match channel lease request (and *lease\_only* is false), then we match
their funding amount. Note: any lease match less than 100 will their funding amount. Note: any lease match less than 100 will
likely fail, as clients will not accept a lease less than their request. likely fail, as clients will not accept a lease less than their request.
* `available` -- Contribute *policy_mod* percent of our available * `available` -- Contribute *policy\_mod* percent of our available
node wallet funds. Valid *policy_mod* values are 0 to 100. node wallet funds. Valid *policy\_mod* values are 0 to 100.
* `fixed` -- Contributes a fixed *policy_mod* sats to v2 channel open requests. * `fixed` -- Contributes a fixed *policy\_mod* sats to v2 channel open requests.
Note: to maximize channel leases, best policy setting is (match, 100). Note: to maximize channel leases, best policy setting is (match, 100).
*leases_only* will only contribute funds to `option_will_fund` requests *leases\_only* will only contribute funds to `option_will_fund` requests
which pay to lease funds. Defaults to false, will fund any v2 open request which pay to lease funds. Defaults to false, will fund any v2 open request
using *policy* even if it's they're not seeking to lease funds. Note that using *policy* even if it's they're not seeking to lease funds. Note that
`option_will_fund` commits funds for 4032 blocks (~1mo). Must also set `option_will_fund` commits funds for 4032 blocks (~1mo). Must also set
*lease_fee_base_msat*, *lease_fee_basis*, *funding_weight*, *lease\_fee\_base\_msat*, *lease\_fee\_basis*, *funding\_weight*,
*channel_fee_max_base_msat*, and *channel_fee_max_proportional_thousandths* *channel\_fee\_max\_base\_msat*, and *channel\_fee\_max\_proportional\_thousandths*
to advertise available channel leases. to advertise available channel leases.
*min_their_funding_msat* is the minimum funding sats that we require in order *min\_their\_funding\_msat* is the minimum funding sats that we require in order
to activate our contribution policy to the v2 open. Defaults to 10k sats. to activate our contribution policy to the v2 open. Defaults to 10k sats.
*max_their_funding_msat* is the maximum funding sats that we will consider *max\_their\_funding\_msat* is the maximum funding sats that we will consider
to activate our contribution policy to the v2 open. Any channel open above this to activate our contribution policy to the v2 open. Any channel open above this
will not be funded. Defaults to no max (`UINT_MAX`). will not be funded. Defaults to no max (`UINT_MAX`).
*per_channel_min_msat* is the minimum amount that we will contribute to a *per\_channel\_min\_msat* is the minimum amount that we will contribute to a
channel open. Defaults to 10k sats. channel open. Defaults to 10k sats.
*per_channel_max_msat* is the maximum amount that we will contribute to a *per\_channel\_max\_msat* is the maximum amount that we will contribute to a
channel open. Defaults to no max (`UINT_MAX`). channel open. Defaults to no max (`UINT_MAX`).
*reserve_tank_msat* is the amount of sats to leave available in the node wallet. *reserve\_tank\_msat* is the amount of sats to leave available in the node wallet.
Defaults to zero sats. Defaults to zero sats.
*fuzz_percent* is a percentage to fuzz the resulting contribution amount by. *fuzz\_percent* is a percentage to fuzz the resulting contribution amount by.
Valid values are 0 to 100. Note that turning this on with (match, 100) policy Valid values are 0 to 100. Note that turning this on with (match, 100) policy
will randomly fail `option_will_fund` leases, as most clients will randomly fail `option_will_fund` leases, as most clients
expect an exact or greater match of their `requested_funds`. expect an exact or greater match of their `requested_funds`.
Defaults to 0% (no fuzz). Defaults to 0% (no fuzz).
*fund_probability* is the percent of v2 channel open requests to apply our *fund\_probability* is the percent of v2 channel open requests to apply our
policy to. Valid values are integers from 0 (fund 0% of all open requests) policy to. Valid values are integers from 0 (fund 0% of all open requests)
to 100 (fund every request). Useful for randomizing opens that receive funds. to 100 (fund every request). Useful for randomizing opens that receive funds.
Defaults to 100. Defaults to 100.
@ -71,33 +71,33 @@ Setting any of the next 5 options will activate channel leases for this node,
and advertise these values via the lightning gossip network. If any one is set, and advertise these values via the lightning gossip network. If any one is set,
the other values will be the default. the other values will be the default.
*lease_fee_base_msat* is the flat fee for a channel lease. Node will *lease\_fee\_base\_msat* is the flat fee for a channel lease. Node will
receive this much extra added to their channel balance, paid by the opening receive this much extra added to their channel balance, paid by the opening
node. Defaults to 2k sats. Note that the minimum is 1sat. node. Defaults to 2k sats. Note that the minimum is 1sat.
*lease_fee_basis* is a basis fee that's calculated as 1/10k of the total *lease\_fee\_basis* is a basis fee that's calculated as 1/10k of the total
requested funds the peer is asking for. Node will receive the total of requested funds the peer is asking for. Node will receive the total of
*lease_fee_basis* times requested funds / 10k satoshis added to their channel *lease\_fee\_basis* times requested funds / 10k satoshis added to their channel
balance, paid by the opening node. Default is 0.65% (65 basis points) balance, paid by the opening node. Default is 0.65% (65 basis points)
*funding_weight* is used to calculate the fee the peer will compensate your *funding\_weight* is used to calculate the fee the peer will compensate your
node for its contributing inputs to the funding transaction. The total fee node for its contributing inputs to the funding transaction. The total fee
is calculated as the `open_channel2`.`funding_feerate_perkw` times this is calculated as the `open_channel2`.`funding_feerate_perkw` times this
*funding_weight* divided by 1000. Node will have this funding fee added *funding\_weight* divided by 1000. Node will have this funding fee added
to their channel balance, paid by the opening node. Default is to their channel balance, paid by the opening node. Default is
2 inputs + 1 P2WPKH output. 2 inputs + 1 P2WPKH output.
*channel_fee_max_base_msat* is a commitment to a maximum *channel\_fee\_max\_base\_msat* is a commitment to a maximum
`channel_fee_base_msat` that your node will charge for routing payments `channel_fee_base_msat` that your node will charge for routing payments
over this leased channel during the lease duration. Default is 5k sats. over this leased channel during the lease duration. Default is 5k sats.
*channel_fee_max_proportional_thousandths* is a commitment to a maximum *channel\_fee\_max\_proportional\_thousandths* is a commitment to a maximum
`channel_fee_proportional_millionths` that your node will charge for `channel_fee_proportional_millionths` that your node will charge for
routing payments over this leased channel during the lease duration. routing payments over this leased channel during the lease duration.
Note that it's denominated in 'thousandths'. A setting of `1` is equal Note that it's denominated in 'thousandths'. A setting of `1` is equal
to 1k ppm; `5` is 5k ppm, etc. Default is 100 (100k ppm). to 1k ppm; `5` is 5k ppm, etc. Default is 100 (100k ppm).
*compact_lease* is a compact description of the channel lease params. When *compact\_lease* is a compact description of the channel lease params. When
opening a channel, passed in to `fundchannel` to indicate the terms we opening a channel, passed in to `fundchannel` to indicate the terms we
expect from the peer. expect from the peer.

View file

@ -4,7 +4,7 @@ lightning-fundpsbt -- Command to populate PSBT inputs from the wallet
SYNOPSIS SYNOPSIS
-------- --------
**fundpsbt** *satoshi* *feerate* *startweight* [*minconf*] [*reserve*] [*locktime*] [*min_witness_weight*] [*excess_as_change*] **fundpsbt** *satoshi* *feerate* *startweight* [*minconf*] [*reserve*] [*locktime*] [*min\_witness\_weight*] [*excess\_as\_change*]
DESCRIPTION DESCRIPTION
----------- -----------
@ -40,11 +40,11 @@ If *reserve* if not zero, then *reserveinputs* is called (successfully, with
*locktime* is an optional locktime: if not set, it is set to a recent *locktime* is an optional locktime: if not set, it is set to a recent
block height. block height.
*min_witness_weight* is an optional minimum weight to use for a UTXO's *min\_witness\_weight* is an optional minimum weight to use for a UTXO's
witness. If the actual witness weight is greater than the provided minimum, witness. If the actual witness weight is greater than the provided minimum,
the actual witness weight will be used. the actual witness weight will be used.
*excess_as_change* is an optional boolean to flag to add a change output *excess\_as\_change* is an optional boolean to flag to add a change output
for the excess sats. for the excess sats.
EXAMPLE USAGE EXAMPLE USAGE
@ -57,15 +57,15 @@ known outputs of the transaction (typically (9 + scriptlen) * 4). For
a simple P2WPKH it's a 22 byte scriptpubkey, so that's 124 weight. a simple P2WPKH it's a 22 byte scriptpubkey, so that's 124 weight.
It calls "*fundpsbt* 100000sat slow 166", which succeeds, and returns It calls "*fundpsbt* 100000sat slow 166", which succeeds, and returns
the *psbt* and *feerate_per_kw* it used, the *estimated_final_weight* the *psbt* and *feerate\_per\_kw* it used, the *estimated\_final\_weight*
and any *excess_msat*. and any *excess\_msat*.
If *excess_msat* is greater than the cost of adding a change output, If *excess\_msat* is greater than the cost of adding a change output,
the caller adds a change output randomly to position 0 or 1 in the the caller adds a change output randomly to position 0 or 1 in the
PSBT. Say *feerate_per_kw* is 253, and the change output is a P2WPKH PSBT. Say *feerate\_per\_kw* is 253, and the change output is a P2WPKH
(weight 124), the cost is around 31 sats. With the dust limit disallowing (weight 124), the cost is around 31 sats. With the dust limit disallowing
payments below 546 satoshis, we would only create a change output payments below 546 satoshis, we would only create a change output
if *excess_msat* was greater or equal to 31 + 546. if *excess\_msat* was greater or equal to 31 + 546.
RETURN VALUE RETURN VALUE
------------ ------------
@ -87,10 +87,10 @@ On success, an object is returned, containing:
[comment]: # (GENERATE-FROM-SCHEMA-END) [comment]: # (GENERATE-FROM-SCHEMA-END)
If *excess_as_change* is true and the excess is enough to cover If *excess\_as\_change* is true and the excess is enough to cover
an additional output above the `dust_limit`, then an output is an additional output above the `dust_limit`, then an output is
added to the PSBT for the excess amount. The *excess_msat* will added to the PSBT for the excess amount. The *excess\_msat* will
be zero. A *change_outnum* will be returned with the index of be zero. A *change\_outnum* will be returned with the index of
the change output. the change output.
On error the returned object will contain `code` and `message` properties, On error the returned object will contain `code` and `message` properties,

View file

@ -53,17 +53,17 @@ ever had.
Specify *password* if the `hsm_secret` is encrypted. Specify *password* if the `hsm_secret` is encrypted.
**generatehsm** *hsm\_secret\_path* **generatehsm** *hsm\_secret\_path*
Generates a new hsm_secret using BIP39. Generates a new hsm\_secret using BIP39.
**checkhsm** *hsm\_secret\_path* **checkhsm** *hsm\_secret\_path*
Checks that hsm_secret matchs a BIP39 pass phrase. Checks that hsm\_secret matchs a BIP39 pass phrase.
**dumponchaindescriptors** *hsm_secret* \[*password*\] \[*network*\] **dumponchaindescriptors** *hsm\_secret* \[*password*\] \[*network*\]
Dump output descriptors for our onchain wallet. Dump output descriptors for our onchain wallet.
The descriptors can be used by external services to be able to generate The descriptors can be used by external services to be able to generate
addresses for our onchain wallet. (for example on `bitcoind` using the addresses for our onchain wallet. (for example on `bitcoind` using the
`importmulti` or `importdescriptors` RPC calls) `importmulti` or `importdescriptors` RPC calls)
We need the path to the hsm_secret containing the wallet seed, and an optional We need the path to the hsm\_secret containing the wallet seed, and an optional
(skip using `""`) password if it was encrypted. (skip using `""`) password if it was encrypted.
To generate descriptors using testnet master keys, you may specify *testnet* as To generate descriptors using testnet master keys, you may specify *testnet* as
the last parameter. By default, mainnet-encoded keys are generated. the last parameter. By default, mainnet-encoded keys are generated.

View file

@ -4,7 +4,7 @@ lightning-invoice -- Command for accepting payments
SYNOPSIS SYNOPSIS
-------- --------
**invoice** *amount_msat* *label* *description* [*expiry*] **invoice** *amount\_msat* *label* *description* [*expiry*]
[*fallbacks*] [*preimage*] [*exposeprivatechannels*] [*cltv*] [*deschashonly*] [*fallbacks*] [*preimage*] [*exposeprivatechannels*] [*cltv*] [*deschashonly*]
DESCRIPTION DESCRIPTION
@ -16,7 +16,7 @@ lightning daemon can use to pay this invoice. This token includes a
*route hint* description of an incoming channel with capacity to pay the *route hint* description of an incoming channel with capacity to pay the
invoice, if any exists. invoice, if any exists.
The *amount_msat* parameter can be the string "any", which creates an The *amount\_msat* parameter can be the string "any", which creates an
invoice that can be paid with any amount. Otherwise it is a positive value in invoice that can be paid with any amount. Otherwise it is a positive value in
millisatoshi precision; it can be a whole number, or a whole number millisatoshi precision; it can be a whole number, or a whole number
ending in *msat* or *sat*, or a number with three decimal places ending ending in *msat* or *sat*, or a number with three decimal places ending
@ -64,7 +64,7 @@ other public channel). The selection uses some randomness to prevent
probing, but favors channels that become more balanced after the probing, but favors channels that become more balanced after the
payment. payment.
If specified, *cltv* sets the *min_final_cltv_expiry* for the invoice. If specified, *cltv* sets the *min\_final\_cltv\_expiry* for the invoice.
Otherwise, it's set to the parameter **cltv-final**. Otherwise, it's set to the parameter **cltv-final**.
If *deschashonly* is true (default false), then the bolt11 returned If *deschashonly* is true (default false), then the bolt11 returned

View file

@ -33,7 +33,7 @@ Setting `exemptfee` allows the `maxfeepercent` check to be skipped on fees that
The response will occur when the payment fails or succeeds. The response will occur when the payment fails or succeeds.
Unlike lightning-pay(7), issuing the same `keysend` commands multiple times will result in multiple payments being sent. Unlike lightning-pay(7), issuing the same `keysend` commands multiple times will result in multiple payments being sent.
Until *retry_for* seconds passes (default: 60), the command will keep finding routes and retrying the payment. Until *retry\_for* seconds passes (default: 60), the command will keep finding routes and retrying the payment.
However, a payment may be delayed for up to `maxdelay` blocks by another node; clients should be prepared for this worst case. However, a payment may be delayed for up to `maxdelay` blocks by another node; clients should be prepared for this worst case.
*extratlvs* is an optional dictionary of additional fields to insert into the final tlv. The format is 'fieldnumber': 'hexstring'. *extratlvs* is an optional dictionary of additional fields to insert into the final tlv. The format is 'fieldnumber': 'hexstring'.
@ -99,7 +99,7 @@ A routing failure object has the fields below:
- `erring_node`: The hex string of the pubkey id of the node that reported the error. - `erring_node`: The hex string of the pubkey id of the node that reported the error.
- `erring_channel`: The short channel ID of the channel that has the error, or *0:0:0* if the destination node raised the error. - `erring_channel`: The short channel ID of the channel that has the error, or *0:0:0* if the destination node raised the error.
- `failcode`: The failure code, as per BOLT \#4. - `failcode`: The failure code, as per BOLT \#4.
- `channel_update`. The hex string of the *channel_update* message received from the remote node. Only present if error is from the remote node and the *failcode* has the `UPDATE` bit set, as per BOLT \#4. - `channel_update`. The hex string of the *channel\_update* message received from the remote node. Only present if error is from the remote node and the *failcode* has the `UPDATE` bit set, as per BOLT \#4.
AUTHOR AUTHOR

View file

@ -4,7 +4,7 @@ lightning-listforwards -- Command showing all htlcs and their information
SYNOPSIS SYNOPSIS
-------- --------
**listforwards** [*status*] [*in_channel*] [*out_channel*] **listforwards** [*status*] [*in\_channel*] [*out\_channel*]
DESCRIPTION DESCRIPTION
----------- -----------
@ -13,9 +13,9 @@ The **listforwards** RPC command displays all htlcs that have been
attempted to be forwarded by the Core Lightning node. attempted to be forwarded by the Core Lightning node.
If *status* is specified, then only the forwards with the given status are returned. If *status* is specified, then only the forwards with the given status are returned.
*status* can be either *offered* or *settled* or *failed* or *local_failed* *status* can be either *offered* or *settled* or *failed* or *local\_failed*
If *in_channel* or *out_channel* is specified, then only the matching forwards If *in\_channel* or *out\_channel* is specified, then only the matching forwards
on the given in/out channel are returned. on the given in/out channel are returned.
RETURN VALUE RETURN VALUE

View file

@ -4,7 +4,7 @@ lightning-listinvoices -- Command for querying invoice status
SYNOPSIS SYNOPSIS
-------- --------
**listinvoices** [*label*] [*invstring*] [*payment_hash*] [*offer_id*] **listinvoices** [*label*] [*invstring*] [*payment\_hash*] [*offer\_id*]
DESCRIPTION DESCRIPTION
----------- -----------

View file

@ -5,13 +5,13 @@ SYNOPSIS
-------- --------
**(WARNING: experimental-offers only)** **(WARNING: experimental-offers only)**
**listoffers** [*offer_id*] [*active_only*] **listoffers** [*offer\_id*] [*active\_only*]
DESCRIPTION DESCRIPTION
----------- -----------
The **listoffers** RPC command list all offers, or with `offer_id`, The **listoffers** RPC command list all offers, or with `offer_id`,
only the offer with that offer_id (if it exists). If `active_only` is only the offer with that offer\_id (if it exists). If `active_only` is
set and is true, only offers with `active` true are returned. set and is true, only offers with `active` true are returned.
EXAMPLE JSON REQUEST EXAMPLE JSON REQUEST

View file

@ -4,13 +4,13 @@ lightning-listpays -- Command for querying payment status
SYNOPSIS SYNOPSIS
-------- --------
**listpays** [*bolt11*] [*payment_hash*] [*status*] **listpays** [*bolt11*] [*payment\_hash*] [*status*]
DESCRIPTION DESCRIPTION
----------- -----------
The **listpay** RPC command gets the status of all *pay* commands, or a The **listpay** RPC command gets the status of all *pay* commands, or a
single one if either *bolt11* or *payment_hash* was specified. single one if either *bolt11* or *payment\_hash* was specified.
It is possible filter the payments also by *status*. It is possible filter the payments also by *status*.
RETURN VALUE RETURN VALUE
@ -40,7 +40,7 @@ If **status** is "failed":
[comment]: # (GENERATE-FROM-SCHEMA-END) [comment]: # (GENERATE-FROM-SCHEMA-END)
The returned array is ordered by increasing **created_at** fields. The returned array is ordered by increasing **created\_at** fields.
AUTHOR AUTHOR
------ ------

View file

@ -227,7 +227,7 @@ The objects in the *channels* array will have at least these fields:
peer, or a theft attempt). peer, or a theft attempt).
* `"CLOSED"`: The channel closure has been confirmed deeply. * `"CLOSED"`: The channel closure has been confirmed deeply.
The channel will eventually be removed from this array. The channel will eventually be removed from this array.
* *state_changes*: An array of objects describing prior state change events. * *state\_changes*: An array of objects describing prior state change events.
* *opener*: A string `"local"` or `"remote`" describing which side opened this * *opener*: A string `"local"` or `"remote`" describing which side opened this
channel. channel.
* *closer*: A string `"local"` or `"remote`" describing which side * *closer*: A string `"local"` or `"remote`" describing which side
@ -243,9 +243,9 @@ The objects in the *channels* array will have at least these fields:
a number followed by a string unit. a number followed by a string unit.
* *total\_msat*: A string describing the total capacity of the channel; * *total\_msat*: A string describing the total capacity of the channel;
a number followed by a string unit. a number followed by a string unit.
* *fee_base_msat*: The fixed routing fee we charge for forwards going out over * *fee\_base\_msat*: The fixed routing fee we charge for forwards going out over
this channel, regardless of payment size. this channel, regardless of payment size.
* *fee_proportional_millionths*: The proportional routing fees in ppm (parts- * *fee\_proportional\_millionths*: The proportional routing fees in ppm (parts-
per-millionths) we charge for forwards going out over this channel. per-millionths) we charge for forwards going out over this channel.
* *features*: An array of feature names supported by this channel. * *features*: An array of feature names supported by this channel.
@ -325,7 +325,7 @@ state, or in various circumstances:
your funds, if you close unilaterally. your funds, if you close unilaterally.
* *max\_accepted\_htlcs*: The maximum number of HTLCs you will accept on * *max\_accepted\_htlcs*: The maximum number of HTLCs you will accept on
this channel. this channel.
* *in\_payments_offered*: The number of incoming HTLCs offered over this * *in\_payments\_offered*: The number of incoming HTLCs offered over this
channel. channel.
* *in\_offered\_msat*: A string describing the total amount of all incoming * *in\_offered\_msat*: A string describing the total amount of all incoming
HTLCs offered over this channel; HTLCs offered over this channel;
@ -345,9 +345,9 @@ state, or in various circumstances:
* *out\_fulfilled\_msat*: A string describing the total amount of all * *out\_fulfilled\_msat*: A string describing the total amount of all
outgoing HTLCs offered *and successfully claimed* over this channel; outgoing HTLCs offered *and successfully claimed* over this channel;
a number followed by a string unit. a number followed by a string unit.
* *scratch_txid*: The txid of the latest transaction (what we would sign and * *scratch\_txid*: The txid of the latest transaction (what we would sign and
send to chain if the channel were to fail now). send to chain if the channel were to fail now).
* *last_tx_fee*: The fee on that latest transaction. * *last\_tx\_fee*: The fee on that latest transaction.
* *feerate*: An object containing the latest feerate as both *perkw* and *perkb*. * *feerate*: An object containing the latest feerate as both *perkw* and *perkb*.
* *htlcs*: An array of objects describing the HTLCs currently in-flight * *htlcs*: An array of objects describing the HTLCs currently in-flight
in the channel. in the channel.

View file

@ -9,7 +9,7 @@ SYNOPSIS
DESCRIPTION DESCRIPTION
----------- -----------
The **makesecret** RPC command derives a secret key from the HSM_secret. The **makesecret** RPC command derives a secret key from the HSM\_secret.
One of *hex* or *string* must be specified: *hex* can be any hex data, One of *hex* or *string* must be specified: *hex* can be any hex data,
*string* is a UTF-8 string interpreted literally. *string* is a UTF-8 string interpreted literally.

View file

@ -4,7 +4,7 @@ lightning-multifundchannel -- Command for establishing many lightning channels
SYNOPSIS SYNOPSIS
-------- --------
**multifundchannel** *destinations* [*feerate*] [*minconf*] [*utxos*] [*minchannels*] [*commitment_feerate*] **multifundchannel** *destinations* [*feerate*] [*minconf*] [*utxos*] [*minchannels*] [*commitment\_feerate*]
DESCRIPTION DESCRIPTION
----------- -----------
@ -47,14 +47,14 @@ Readiness is indicated by **listpeers** reporting a *state* of
node. node.
This is a gift to the peer, and you do not get a proof-of-payment This is a gift to the peer, and you do not get a proof-of-payment
out of this. out of this.
* *close_to* is a Bitcoin address to which the channel funds should be sent to * *close\_to* is a Bitcoin address to which the channel funds should be sent to
on close. Only valid if both peers have negotiated on close. Only valid if both peers have negotiated
`option_upfront_shutdown_script`. Returns `close_to` set to `option_upfront_shutdown_script`. Returns `close_to` set to
closing script iff is negotiated. closing script iff is negotiated.
* *request_amt* is the amount of liquidity you'd like to lease from peer. * *request\_amt* is the amount of liquidity you'd like to lease from peer.
If peer supports `option_will_fund`, indicates to them to include this If peer supports `option_will_fund`, indicates to them to include this
much liquidity into the channel. Must also pass in *compact_lease*. much liquidity into the channel. Must also pass in *compact\_lease*.
* *compact_lease* is a compact represenation of the peer's expected * *compact\_lease* is a compact represenation of the peer's expected
channel lease terms. If the peer's terms don't match this set, we will channel lease terms. If the peer's terms don't match this set, we will
fail to open the channel to this destination. fail to open the channel to this destination.
@ -62,7 +62,7 @@ There must be at least one entry in *destinations*;
it cannot be an empty array. it cannot be an empty array.
*feerate* is an optional feerate used for the opening transaction and, if *feerate* is an optional feerate used for the opening transaction and, if
*commitment_feerate* is not set, as the initial feerate for *commitment\_feerate* is not set, as the initial feerate for
commitment and HTLC transactions. It can be one of commitment and HTLC transactions. It can be one of
the strings *urgent* (aim for next block), *normal* (next 4 blocks or the strings *urgent* (aim for next block), *normal* (next 4 blocks or
so) or *slow* (next 100 blocks or so) to use lightningd's internal so) or *slow* (next 100 blocks or so) to use lightningd's internal
@ -84,7 +84,7 @@ this many peers remain (must not be zero).
The **multifundchannel** command will only fail if too many peers fail The **multifundchannel** command will only fail if too many peers fail
the funding process. the funding process.
*commitment_feerate* is the initial feerate for commitment and HTLC *commitment\_feerate* is the initial feerate for commitment and HTLC
transactions. See *feerate* for valid values. transactions. See *feerate* for valid values.
RETURN VALUE RETURN VALUE

View file

@ -6,14 +6,14 @@ SYNOPSIS
**(WARNING: experimental-offers only)** **(WARNING: experimental-offers only)**
**offer** *amount* *description* [*issuer*] [*label*] [*quantity_max*] [*absolute_expiry*] [*recurrence*] [*recurrence_base*] [*recurrence_paywindow*] [*recurrence_limit*] [*single_use*] **offer** *amount* *description* [*issuer*] [*label*] [*quantity\_max*] [*absolute\_expiry*] [*recurrence*] [*recurrence\_base*] [*recurrence\_paywindow*] [*recurrence\_limit*] [*single\_use*]
DESCRIPTION DESCRIPTION
----------- -----------
The **offer** RPC command creates an offer (or returns an existing The **offer** RPC command creates an offer (or returns an existing
one), which is a precursor to creating one or more invoices. It one), which is a precursor to creating one or more invoices. It
automatically enables the processing of an incoming invoice_request, automatically enables the processing of an incoming invoice\_request,
and issuing of invoices. and issuing of invoices.
Note that it creates two variants of the offer: a signed and an Note that it creates two variants of the offer: a signed and an
@ -43,13 +43,13 @@ reflects who is issuing this offer (i.e. you) if appropriate.
The *label* field is an internal-use name for the offer, which can The *label* field is an internal-use name for the offer, which can
be any UTF-8 string. be any UTF-8 string.
The presence of *quantity_max* indicates that the The presence of *quantity\_max* indicates that the
invoice can specify more than one of the items up (and including) invoice can specify more than one of the items up (and including)
this maximum: 0 is a special value meaning "no maximuim". this maximum: 0 is a special value meaning "no maximuim".
The *amount* for the invoice will need to be multiplied The *amount* for the invoice will need to be multiplied
accordingly. This is encoded in the offer. accordingly. This is encoded in the offer.
The *absolute_expiry* is optionally the time the offer is valid until, The *absolute\_expiry* is optionally the time the offer is valid until,
in seconds since the first day of 1970 UTC. If not set, the offer in seconds since the first day of 1970 UTC. If not set, the offer
remains valid (though it can be deactivated by the issuer of course). remains valid (though it can be deactivated by the issuer of course).
This is encoded in the offer. This is encoded in the offer.
@ -61,7 +61,7 @@ without the trailing "s" are also permitted). This is encoded in the
offer. The semantics of recurrence is fairly predictable, but fully offer. The semantics of recurrence is fairly predictable, but fully
documented in BOLT 12. e.g. "4weeks". documented in BOLT 12. e.g. "4weeks".
*recurrence_base* is an optional time in seconds since the first day *recurrence\_base* is an optional time in seconds since the first day
of 1970 UTC, optionally with a "@" prefix. This indicates when the of 1970 UTC, optionally with a "@" prefix. This indicates when the
first period begins; without this, the recurrence periods start from first period begins; without this, the recurrence periods start from
the first invoice. The "@" prefix means that the invoice must start the first invoice. The "@" prefix means that the invoice must start
@ -69,7 +69,7 @@ by paying the first period; otherwise it is permitted to start at any
period. This is encoded in the offer. e.g. "@1609459200" indicates period. This is encoded in the offer. e.g. "@1609459200" indicates
you must start paying on the 1st January 2021. you must start paying on the 1st January 2021.
*recurrence_paywindow* is an optional argument of form *recurrence\_paywindow* is an optional argument of form
'-time+time[%]'. The first time is the number of seconds before the '-time+time[%]'. The first time is the number of seconds before the
start of a period in which an invoice and payment is valid, the second start of a period in which an invoice and payment is valid, the second
time is the number of seconds after the start of the period. For time is the number of seconds after the start of the period. For
@ -80,15 +80,15 @@ by the time remaining in the period. If this is not specified, the
default is that payment is allowed during the current and previous default is that payment is allowed during the current and previous
periods. This is encoded in the offer. periods. This is encoded in the offer.
*recurrence_limit* is an optional argument to indicate the maximum *recurrence\_limit* is an optional argument to indicate the maximum
period which exists. eg. "12" means there are 13 periods, from 0 to period which exists. eg. "12" means there are 13 periods, from 0 to
12 inclusive. This is encoded in the offer. 12 inclusive. This is encoded in the offer.
*refund_for* is the payment_preimage of a previous (paid) invoice. *refund\_for* is the payment\_preimage of a previous (paid) invoice.
This implies *send_invoice* and *single_use*. This is encoded in the This implies *send\_invoice* and *single\_use*. This is encoded in the
offer. offer.
*single_use* (default false) indicates that the offer is only valid *single\_use* (default false) indicates that the offer is only valid
once; we may issue multiple invoices, but as soon as one is paid all other once; we may issue multiple invoices, but as soon as one is paid all other
invoices will be expired (i.e. only one person can pay this offer). invoices will be expired (i.e. only one person can pay this offer).
@ -118,7 +118,7 @@ if it's not active then this call fails.
The following error codes may occur: The following error codes may occur:
- -1: Catchall nonspecific error. - -1: Catchall nonspecific error.
- 1000: Offer with this offer_id already exists (but is not active). - 1000: Offer with this offer\_id already exists (but is not active).
AUTHOR AUTHOR
------ ------

View file

@ -7,7 +7,7 @@ SYNOPSIS
**(WARNING: experimental-offers only)** **(WARNING: experimental-offers only)**
**offerout** *amount* *description* [*issuer*] [*label*] [*absolute_expiry*] [*refund_for*] **offerout** *amount* *description* [*issuer*] [*label*] [*absolute\_expiry*] [*refund\_for*]
DESCRIPTION DESCRIPTION
----------- -----------
@ -40,13 +40,13 @@ reflects who is issuing this offer (i.e. you) if appropriate.
The *label* field is an internal-use name for the offer, which can The *label* field is an internal-use name for the offer, which can
be any UTF-8 string. be any UTF-8 string.
The *absolute_expiry* is optionally the time the offer is valid until, The *absolute\_expiry* is optionally the time the offer is valid until,
in seconds since the first day of 1970 UTC. If not set, the offer in seconds since the first day of 1970 UTC. If not set, the offer
remains valid (though it can be deactivated by the issuer of course). remains valid (though it can be deactivated by the issuer of course).
This is encoded in the offer. This is encoded in the offer.
*refund_for* is a previous (paid) invoice of ours. The *refund\_for* is a previous (paid) invoice of ours. The
payment_preimage of this is encoded in the offer, and redemption payment\_preimage of this is encoded in the offer, and redemption
requires that the invoice we receive contains a valid signature using requires that the invoice we receive contains a valid signature using
that previous `payer_key`. that previous `payer_key`.
@ -73,7 +73,7 @@ not.
The following error codes may occur: The following error codes may occur:
- -1: Catchall nonspecific error. - -1: Catchall nonspecific error.
- 1000: Offer with this offer_id already exists. - 1000: Offer with this offer\_id already exists.
NOTES NOTES
----- -----

View file

@ -4,7 +4,7 @@ lightning-openchannel\_abort -- Command to abort a channel to a peer
SYNOPSIS SYNOPSIS
-------- --------
**openchannel_abort** *channel_id* **openchannel\_abort** *channel\_id*
DESCRIPTION DESCRIPTION
----------- -----------
@ -13,7 +13,7 @@ DESCRIPTION
open with a specified peer. It uses the openchannel protocol open with a specified peer. It uses the openchannel protocol
which allows for interactive transaction construction. which allows for interactive transaction construction.
*channel_id* is id of this channel. *channel\_id* is id of this channel.
RETURN VALUE RETURN VALUE

View file

@ -4,7 +4,7 @@ lightning-openchannel\_bump -- Command to initiate a channel RBF
SYNOPSIS SYNOPSIS
-------- --------
**openchannel_bump** *channel_id* *amount* *initalpsbt* [*funding_feerate*] **openchannel\_bump** *channel\_id* *amount* *initalpsbt* [*funding\_feerate*]
DESCRIPTION DESCRIPTION
----------- -----------
@ -26,7 +26,7 @@ Must have the Non-Witness UTXO (PSBT\_IN\_NON\_WITNESS\_UTXO) set for
every input. An error (code 309) will be returned if this requirement every input. An error (code 309) will be returned if this requirement
is not met. is not met.
*funding_feerate* is an optional field. Sets the feerate for the *funding\_feerate* is an optional field. Sets the feerate for the
funding transaction. Defaults to 1/64th greater than the last funding transaction. Defaults to 1/64th greater than the last
feerate used for this channel. feerate used for this channel.

View file

@ -4,7 +4,7 @@ lightning-openchannel\_init -- Command to initiate a channel to a peer
SYNOPSIS SYNOPSIS
-------- --------
**openchannel_init** *id* *amount* *initalpsbt* [*commitment_feerate*] [*funding_feerate*] [*announce*] [*close_to*] [*request_amt*] [*compact_lease*] **openchannel\_init** *id* *amount* *initalpsbt* [*commitment\_feerate*] [*funding\_feerate*] [*announce*] [*close\_to*] [*request\_amt*] [*compact\_lease*]
DESCRIPTION DESCRIPTION
----------- -----------
@ -26,23 +26,23 @@ Must have the Non-Witness UTXO (PSBT\_IN\_NON\_WITNESS\_UTXO) set for
every input. An error (code 309) will be returned if this requirement every input. An error (code 309) will be returned if this requirement
is not met. is not met.
*commitment_feerate* is an optional field. Sets the feerate for *commitment\_feerate* is an optional field. Sets the feerate for
commitment transactions: see **fundchannel**. commitment transactions: see **fundchannel**.
*funding_feerate* is an optional field. Sets the feerate for the *funding\_feerate* is an optional field. Sets the feerate for the
funding transaction. Defaults to 'opening' feerate. funding transaction. Defaults to 'opening' feerate.
*announce* is an optional field. Whether or not to announce this channel. *announce* is an optional field. Whether or not to announce this channel.
*close_to* is a Bitcoin address to which the channel funds should be *close\_to* is a Bitcoin address to which the channel funds should be
sent on close. Only valid if both peers have negotiated sent on close. Only valid if both peers have negotiated
`option_upfront_shutdown_script`. `option_upfront_shutdown_script`.
*request_amt* is an amount of liquidity you'd like to lease from the peer. *request\_amt* is an amount of liquidity you'd like to lease from the peer.
If peer supports `option_will_fund`, indicates to them to include this If peer supports `option_will_fund`, indicates to them to include this
much liquidity into the channel. Must also pass in *compact_lease*. much liquidity into the channel. Must also pass in *compact\_lease*.
*compact_lease* is a compact represenation of the peer's expected *compact\_lease* is a compact represenation of the peer's expected
channel lease terms. If the peer's terms don't match this set, we will channel lease terms. If the peer's terms don't match this set, we will
fail to open the channel. fail to open the channel.
@ -63,12 +63,12 @@ On success, an object is returned, containing:
If the peer does not support `option_dual_fund`, this command If the peer does not support `option_dual_fund`, this command
will return an error. will return an error.
If you sent a *request_amt* and the peer supports `option_will_fund` and is If you sent a *request\_amt* and the peer supports `option_will_fund` and is
interested in leasing you liquidity in this channel, returns their updated interested in leasing you liquidity in this channel, returns their updated
channel fee max (*channel_fee_proportional_basis*, *channel_fee_base_msat*), channel fee max (*channel\_fee\_proportional\_basis*, *channel\_fee\_base\_msat*),
updated rate card for the lease fee (*lease_fee_proportional_basis*, updated rate card for the lease fee (*lease\_fee\_proportional\_basis*,
*lease_fee_base_sat*) and their on-chain weight *weight_charge*, which will *lease\_fee\_base\_sat*) and their on-chain weight *weight\_charge*, which will
be added to the lease fee at a rate of *funding_feerate* * *weight_charge* be added to the lease fee at a rate of *funding\_feerate* * *weight\_charge*
/ 1000. / 1000.
On error the returned object will contain `code` and `message` properties, On error the returned object will contain `code` and `message` properties,

View file

@ -4,7 +4,7 @@ lightning-openchannel\_signed -- Command to conclude a channel open
SYNOPSIS SYNOPSIS
-------- --------
**openchannel_signed** *channel_id* *signed_psbt* **openchannel\_signed** *channel\_id* *signed\_psbt*
DESCRIPTION DESCRIPTION
----------- -----------
@ -14,15 +14,15 @@ open with the specified peer. It uses the v2 openchannel protocol, which
allows for interactive transaction construction. allows for interactive transaction construction.
This command should be called after `openchannel_update` returns This command should be called after `openchannel_update` returns
*commitments_secured* `true`. *commitments\_secured* `true`.
This command will broadcast the finalized funding transaction, This command will broadcast the finalized funding transaction,
if we receive valid signatures from the peer. if we receive valid signatures from the peer.
*channel_id* is the id of the channel. *channel\_id* is the id of the channel.
*signed_psbt* is the PSBT returned from `openchannel_update` (where *signed\_psbt* is the PSBT returned from `openchannel_update` (where
*commitments_secured* was true) with partial signatures or finalized *commitments\_secured* was true) with partial signatures or finalized
witness stacks included for every input that we contributed to the witness stacks included for every input that we contributed to the
PSBT. PSBT.

View file

@ -4,23 +4,23 @@ lightning-openchannel\_update -- Command to update a collab channel open
SYNOPSIS SYNOPSIS
-------- --------
**openchannel_update** *channel_id* *psbt* **openchannel\_update** *channel\_id* *psbt*
DESCRIPTION DESCRIPTION
----------- -----------
`openchannel_update` is a low level RPC command which continues an open `openchannel_update` is a low level RPC command which continues an open
channel, as specified by *channel_id*. An updated *psbt* is passed in; any channel, as specified by *channel\_id*. An updated *psbt* is passed in; any
changes from the PSBT last returned (either from `openchannel_init` or changes from the PSBT last returned (either from `openchannel_init` or
a previous call to `openchannel_update`) will be communicated to the peer. a previous call to `openchannel_update`) will be communicated to the peer.
Must be called after `openchannel_init` and before `openchannel_signed`. Must be called after `openchannel_init` and before `openchannel_signed`.
Must be called until *commitments_secured* is returned as true, at which point Must be called until *commitments\_secured* is returned as true, at which point
`openchannel_signed` should be called with a signed version of the PSBT `openchannel_signed` should be called with a signed version of the PSBT
returned by the last call to `openchannel_update`. returned by the last call to `openchannel_update`.
*channel_id* is the id of the channel. *channel\_id* is the id of the channel.
*psbt* is the updated PSBT to be sent to the peer. May be identical to *psbt* is the updated PSBT to be sent to the peer. May be identical to
the PSBT last returned by either `openchannel_init` or `openchannel_update`. the PSBT last returned by either `openchannel_init` or `openchannel_update`.
@ -39,11 +39,11 @@ On success, an object is returned, containing:
[comment]: # (GENERATE-FROM-SCHEMA-END) [comment]: # (GENERATE-FROM-SCHEMA-END)
If *commitments_secured* is true, will also return: If *commitments\_secured* is true, will also return:
- The derived *channel_id*. - The derived *channel\_id*.
- A *close_to* script, iff a `close_to` address was provided to - A *close\_to* script, iff a `close_to` address was provided to
`openchannel_init` and the peer supports `option_upfront_shutdownscript`. `openchannel_init` and the peer supports `option_upfront_shutdownscript`.
- The *funding_outnum*, the index of the funding output for this channel - The *funding\_outnum*, the index of the funding output for this channel
in the funding transaction. in the funding transaction.

View file

@ -4,13 +4,13 @@ lightning-parsefeerate -- Command for parsing a feerate string to a feerate
SYNOPSIS SYNOPSIS
-------- --------
**parsefeerate** *feerate_str* **parsefeerate** *feerate\_str*
DESCRIPTION DESCRIPTION
----------- -----------
The **parsefeerate** command returns the current feerate for any valid The **parsefeerate** command returns the current feerate for any valid
*feerate_str*. This is useful for finding the current feerate that a *feerate\_str*. This is useful for finding the current feerate that a
**fundpsbt** or **utxopsbt** command might use. **fundpsbt** or **utxopsbt** command might use.
RETURN VALUE RETURN VALUE
@ -26,7 +26,7 @@ On success, an object is returned, containing:
ERRORS ERRORS
------ ------
The **parsefeerate** command will error if the *feerate_str* format is The **parsefeerate** command will error if the *feerate\_str* format is
not recognized. not recognized.
- -32602: If the given parameters are wrong. - -32602: If the given parameters are wrong.

View file

@ -5,7 +5,7 @@ SYNOPSIS
-------- --------
**pay** *bolt11* [*msatoshi*] [*label*] [*riskfactor*] **pay** *bolt11* [*msatoshi*] [*label*] [*riskfactor*]
[*maxfeepercent*] [*retry_for*] [*maxdelay*] [*exemptfee*] [*maxfeepercent*] [*retry\_for*] [*maxdelay*] [*exemptfee*]
[*localinvreqid*] [*exclude*] [*maxfee*] [*description*] [*localinvreqid*] [*exclude*] [*maxfee*] [*description*]
DESCRIPTION DESCRIPTION

View file

@ -40,9 +40,9 @@ which was reserved:
- *txid* is the input transaction id. - *txid* is the input transaction id.
- *vout* is the input index. - *vout* is the input index.
- *was_reserved* indicates whether the input was already reserved. - *was\_reserved* indicates whether the input was already reserved.
- *reserved* indicates that the input is now reserved (i.e. true). - *reserved* indicates that the input is now reserved (i.e. true).
- *reserved_to_block* indicates what blockheight the reservation will expire. - *reserved\_to\_block* indicates what blockheight the reservation will expire.
On failure, an error is reported and no UTXOs are reserved. On failure, an error is reported and no UTXOs are reserved.

View file

@ -4,7 +4,7 @@ lightning-sendcustommsg -- Low-level interface to send protocol messages to peer
SYNOPSIS SYNOPSIS
-------- --------
**sendcustommsg** *node_id* *msg* **sendcustommsg** *node\_id* *msg*
DESCRIPTION DESCRIPTION
----------- -----------

View file

@ -13,7 +13,7 @@ DESCRIPTION
The **sendinvoice** RPC command creates and sends an invoice to the The **sendinvoice** RPC command creates and sends an invoice to the
issuer of an *offer* for it to pay: the offer must contain issuer of an *offer* for it to pay: the offer must contain
*send_invoice*; see lightning-fetchinvoice(7). *send\_invoice*; see lightning-fetchinvoice(7).
If **fetchinvoice-noconnect** is not specified in the configuation, it If **fetchinvoice-noconnect** is not specified in the configuation, it
will connect to the destination in the (currently common!) case where it will connect to the destination in the (currently common!) case where it
@ -33,7 +33,7 @@ invoice or return an error, default 90 seconds. This will also be the
timeout on the invoice that is sent. timeout on the invoice that is sent.
*quantity* is optional: it is required if the *offer* specifies *quantity* is optional: it is required if the *offer* specifies
*quantity_min* or *quantity_max*, otherwise it is not allowed. *quantity\_min* or *quantity\_max*, otherwise it is not allowed.
RETURN VALUE RETURN VALUE
------------ ------------

View file

@ -4,7 +4,7 @@ lightning-sendonion -- Send a payment with a custom onion packet
SYNOPSIS SYNOPSIS
-------- --------
**sendonion** *onion* *first_hop* *payment_hash* [*label*] [*shared_secrets*] [*partid*] [*bolt11*] **sendonion** *onion* *first\_hop* *payment\_hash* [*label*] [*shared\_secrets*] [*partid*] [*bolt11*]
[*msatoshi*] [*destination*] [*msatoshi*] [*destination*]
DESCRIPTION DESCRIPTION
@ -18,7 +18,7 @@ of the payment for the final hop. However, it is possible to add arbitrary
information for hops in the custom onion, allowing for custom extensions that information for hops in the custom onion, allowing for custom extensions that
are not directly supported by Core Lightning. are not directly supported by Core Lightning.
The onion is specific to the route that is being used and the *payment_hash* The onion is specific to the route that is being used and the *payment\_hash*
used to construct, and therefore cannot be reused for other payments or to used to construct, and therefore cannot be reused for other payments or to
attempt a separate route. The custom onion can generally be created using the attempt a separate route. The custom onion can generally be created using the
`devtools/onion` CLI tool, or the **createonion** RPC command. `devtools/onion` CLI tool, or the **createonion** RPC command.
@ -28,7 +28,7 @@ by either of the tools that can generate onions. It contains the payloads
destined for each hop and some metadata. Please refer to [BOLT 04][bolt04] for destined for each hop and some metadata. Please refer to [BOLT 04][bolt04] for
further details. further details.
The *first_hop* parameter instructs Core Lightning which peer to send the onion The *first\_hop* parameter instructs Core Lightning which peer to send the onion
to. It is a JSON dictionary that corresponds to the first element of the route to. It is a JSON dictionary that corresponds to the first element of the route
array returned by *getroute*. The following is a minimal example telling array returned by *getroute*. The following is a minimal example telling
Core Lightning to use any available channel to `022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59` Core Lightning to use any available channel to `022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59`
@ -46,18 +46,18 @@ If the first element of *route* does not have "channel" set, a
suitable channel (if any) will be chosen, otherwise that specific suitable channel (if any) will be chosen, otherwise that specific
short-channel-id is used. short-channel-id is used.
The *payment_hash* parameter specifies the 32 byte hex-encoded hash to use as The *payment\_hash* parameter specifies the 32 byte hex-encoded hash to use as
a challenge to the HTLC that we are sending. It is specific to the onion and a challenge to the HTLC that we are sending. It is specific to the onion and
has to match the one the onion was created with. has to match the one the onion was created with.
The *label* parameter can be used to provide a human readable reference to The *label* parameter can be used to provide a human readable reference to
retrieve the payment at a later time. retrieve the payment at a later time.
The *shared_secrets* parameter is a JSON list of 32 byte hex-encoded secrets The *shared\_secrets* parameter is a JSON list of 32 byte hex-encoded secrets
that were used when creating the onion. Core Lightning can send a payment with a that were used when creating the onion. Core Lightning can send a payment with a
custom onion without the knowledge of these secrets, however it will not be custom onion without the knowledge of these secrets, however it will not be
able to parse an eventual error message since that is encrypted with the able to parse an eventual error message since that is encrypted with the
shared secrets used in the onion. If *shared_secrets* is provided Core Lightning shared secrets used in the onion. If *shared\_secrets* is provided Core Lightning
will decrypt the error, act accordingly, e.g., add a `channel_update` included will decrypt the error, act accordingly, e.g., add a `channel_update` included
in the error to its network view, and set the details in *listsendpays* in the error to its network view, and set the details in *listsendpays*
correctly. If it is not provided Core Lightning will store the encrypted onion, correctly. If it is not provided Core Lightning will store the encrypted onion,
@ -72,12 +72,12 @@ externally. The following is an example of a 3 hop onion:
] ]
``` ```
If *shared_secrets* is not provided the Core Lightning node does not know how If *shared\_secrets* is not provided the Core Lightning node does not know how
long the route is, which channels or nodes are involved, and what an eventual long the route is, which channels or nodes are involved, and what an eventual
error could have been. It can therefore be used for oblivious payments. error could have been. It can therefore be used for oblivious payments.
The *partid* value, if provided and non-zero, allows for multiple parallel The *partid* value, if provided and non-zero, allows for multiple parallel
partial payments with the same *payment_hash*. partial payments with the same *payment\_hash*.
The *bolt11* parameter, if provided, will be returned in The *bolt11* parameter, if provided, will be returned in
*waitsendpay* and *listsendpays* results. *waitsendpay* and *listsendpays* results.
@ -115,7 +115,7 @@ If **status** is "pending":
[comment]: # (GENERATE-FROM-SCHEMA-END) [comment]: # (GENERATE-FROM-SCHEMA-END)
If *shared_secrets* was provided and an error was returned by one of the If *shared\_secrets* was provided and an error was returned by one of the
intermediate nodes the error details are decrypted and presented intermediate nodes the error details are decrypted and presented
here. Otherwise the error code is 202 for an unparseable onion. here. Otherwise the error code is 202 for an unparseable onion.

View file

@ -6,7 +6,7 @@ SYNOPSIS
**(WARNING: experimental-onion-messages only)** **(WARNING: experimental-onion-messages only)**
**sendonionmessage** *first_id* *blinding* *hops* **sendonionmessage** *first\_id* *blinding* *hops*
DESCRIPTION DESCRIPTION
----------- -----------

View file

@ -5,8 +5,8 @@ SYNOPSIS
-------- --------
**sendpay** *route* *payment\_hash* [*label*] [*msatoshi*] **sendpay** *route* *payment\_hash* [*label*] [*msatoshi*]
[*bolt11*] [*payment_secret*] [*partid*] [*localinvreqid*] [*groupid*] [*bolt11*] [*payment\_secret*] [*partid*] [*localinvreqid*] [*groupid*]
[*payment_metadata*] [*description*] [*payment\_metadata*] [*description*]
DESCRIPTION DESCRIPTION
----------- -----------
@ -34,26 +34,26 @@ amount to the destination. By default it is in millisatoshi precision; it can be
ending in *msat* or *sat*, or a number with three decimal places ending ending in *msat* or *sat*, or a number with three decimal places ending
in *sat*, or a number with 1 to 11 decimal places ending in *btc*. in *sat*, or a number with 1 to 11 decimal places ending in *btc*.
The *payment_secret* is the value that the final recipient requires to The *payment\_secret* is the value that the final recipient requires to
accept the payment, as defined by the `payment_data` field in BOLT 4 accept the payment, as defined by the `payment_data` field in BOLT 4
and the `s` field in the BOLT 11 invoice format. It is required if and the `s` field in the BOLT 11 invoice format. It is required if
*partid* is non-zero. *partid* is non-zero.
The *partid* value, if provided and non-zero, allows for multiple parallel The *partid* value, if provided and non-zero, allows for multiple parallel
partial payments with the same *payment_hash*. The *msatoshi* amount partial payments with the same *payment\_hash*. The *msatoshi* amount
(which must be provided) for each **sendpay** with matching (which must be provided) for each **sendpay** with matching
*payment_hash* must be equal, and **sendpay** will fail if there are *payment\_hash* must be equal, and **sendpay** will fail if there are
already *msatoshi* worth of payments pending. already *msatoshi* worth of payments pending.
The *localinvreqid* value indicates that this payment is being made for a local The *localinvreqid* value indicates that this payment is being made for a local
invoice_request: this ensures that we only send a payment for a single-use invoice\_request: this ensures that we only send a payment for a single-use
invoice_request once. invoice\_request once.
*groupid* allows you to attach a number which appears in **listsendpays** so *groupid* allows you to attach a number which appears in **listsendpays** so
payments can be identified as part of a logical group. The *pay* plugin uses payments can be identified as part of a logical group. The *pay* plugin uses
this to identify one attempt at a MPP payment, for example. this to identify one attempt at a MPP payment, for example.
*payment_metadata* is placed in the final onion hop TLV. *payment\_metadata* is placed in the final onion hop TLV.
Once a payment has succeeded, calls to **sendpay** with the same Once a payment has succeeded, calls to **sendpay** with the same
*payment\_hash* but a different *msatoshi* or destination will fail; *payment\_hash* but a different *msatoshi* or destination will fail;
@ -109,7 +109,7 @@ The following error codes may occur:
will be routing failure object. will be routing failure object.
- 204: Failure along route; retry a different route. The *data* field - 204: Failure along route; retry a different route. The *data* field
of the error will be routing failure object. of the error will be routing failure object.
- 212: *localinvreqid* refers to an invalid, or used, local invoice_request. - 212: *localinvreqid* refers to an invalid, or used, local invoice\_request.
A routing failure object has the fields below: A routing failure object has the fields below:
- *erring\_index*. The index of the node along the route that reported - *erring\_index*. The index of the node along the route that reported

View file

@ -22,7 +22,7 @@ will accept: we allow 2 a day, with a few extra occasionally).
*id* is required and should contain a scid (short channel ID), channel *id* is required and should contain a scid (short channel ID), channel
id or peerid (pubkey) of the channel to be modified. If *id* is set to id or peerid (pubkey) of the channel to be modified. If *id* is set to
"all", the updates are applied to all channels in states "all", the updates are applied to all channels in states
CHANNELD\_NORMAL CHANNELD\_AWAITING\_LOCKIN or DUALOPEND_AWAITING_LOCKIN. CHANNELD\_NORMAL CHANNELD\_AWAITING\_LOCKIN or DUALOPEND\_AWAITING\_LOCKIN.
If *id* is a peerid, all channels with the +peer in those states are If *id* is a peerid, all channels with the +peer in those states are
changed. changed.

View file

@ -12,13 +12,13 @@ DESCRIPTION
The **setchannelfee** RPC command sets channel specific routing fees as The **setchannelfee** RPC command sets channel specific routing fees as
defined in BOLT \#7. The channel has to be in normal or awaiting state. defined in BOLT \#7. The channel has to be in normal or awaiting state.
This can be checked by **listpeers** reporting a *state* of This can be checked by **listpeers** reporting a *state* of
CHANNELD\_NORMAL, CHANNELD\_AWAITING\_LOCKIN or DUALOPEND_AWAITING_LOCKIN for the channel. CHANNELD\_NORMAL, CHANNELD\_AWAITING\_LOCKIN or DUALOPEND\_AWAITING\_LOCKIN for the channel.
*id* is required and should contain a scid (short channel ID), channel *id* is required and should contain a scid (short channel ID), channel
id or peerid (pubkey) of the channel to be modified. If *id* is set to id or peerid (pubkey) of the channel to be modified. If *id* is set to
"all", the fees for all channels are updated that are in state "all", the fees for all channels are updated that are in state
CHANNELD\_NORMAL, CHANNELD\_AWAITING\_LOCKIN or CHANNELD\_NORMAL, CHANNELD\_AWAITING\_LOCKIN or
DUALOPEND_AWAITING_LOCKIN. If *id* is a peerid, all channels with the DUALOPEND\_AWAITING\_LOCKIN. If *id* is a peerid, all channels with the
peer in those states are changed. peer in those states are changed.
*base* is an optional value in millisatoshi that is added as base fee to *base* is an optional value in millisatoshi that is added as base fee to

View file

@ -4,7 +4,7 @@ lightning-utxopsbt -- Command to populate PSBT inputs from given UTXOs
SYNOPSIS SYNOPSIS
-------- --------
**utxopsbt** *satoshi* *feerate* *startweight* *utxos* [*reserve*] [*reservedok*] [*locktime*] [*min_witness_weight*] [*excess_as_change*] **utxopsbt** *satoshi* *feerate* *startweight* *utxos* [*reserve*] [*reservedok*] [*locktime*] [*min\_witness\_weight*] [*excess\_as\_change*]
DESCRIPTION DESCRIPTION
----------- -----------
@ -33,11 +33,11 @@ if any of the *utxos* are already reserved.
*locktime* is an optional locktime: if not set, it is set to a recent *locktime* is an optional locktime: if not set, it is set to a recent
block height. block height.
*min_witness_weight* is an optional minimum weight to use for a UTXO's *min\_witness\_weight* is an optional minimum weight to use for a UTXO's
witness. If the actual witness weight is greater than the provided minimum, witness. If the actual witness weight is greater than the provided minimum,
the actual witness weight will be used. the actual witness weight will be used.
*excess_as_change* is an optional boolean to flag to add a change output *excess\_as\_change* is an optional boolean to flag to add a change output
for the excess sats. for the excess sats.
RETURN VALUE RETURN VALUE
@ -62,20 +62,20 @@ On success, an object is returned, containing:
On success, returns the *psbt* it created, containing the inputs, On success, returns the *psbt* it created, containing the inputs,
*feerate_per_kw* showing the exact numeric feerate it used, *feerate\_per\_kw* showing the exact numeric feerate it used,
*estimated_final_weight* for the estimated weight of the transaction *estimated\_final\_weight* for the estimated weight of the transaction
once fully signed, and *excess_msat* containing the amount above *satoshi* once fully signed, and *excess\_msat* containing the amount above *satoshi*
which is available. This could be zero, or dust. If *satoshi* was "all", which is available. This could be zero, or dust. If *satoshi* was "all",
then *excess_msat* is the entire amount once fees are subtracted then *excess\_msat* is the entire amount once fees are subtracted
for the weights of the inputs and *startweight*. for the weights of the inputs and *startweight*.
If *reserve* was *true* or a non-zero number, then a *reservations* If *reserve* was *true* or a non-zero number, then a *reservations*
array is returned, exactly like *reserveinputs*. array is returned, exactly like *reserveinputs*.
If *excess_as_change* is true and the excess is enough to cover If *excess\_as\_change* is true and the excess is enough to cover
an additional output above the `dust_limit`, then an output is an additional output above the `dust_limit`, then an output is
added to the PSBT for the excess amount. The *excess_msat* will added to the PSBT for the excess amount. The *excess\_msat* will
be zero. A *change_outnum* will be returned with the index of be zero. A *change\_outnum* will be returned with the index of
the change output. the change output.
On error the returned object will contain `code` and `message` properties, On error the returned object will contain `code` and `message` properties,

View file

@ -141,8 +141,8 @@ Current subdaemons are *channeld*, *closingd*,
If the supplied path is relative the subdaemon binary is found in the If the supplied path is relative the subdaemon binary is found in the
working directory. This option may be specified multiple times. working directory. This option may be specified multiple times.
So, **subdaemon=hsmd:remote_signer** would use a So, **subdaemon=hsmd:remote\_signer** would use a
hypothetical remote signing proxy instead of the standard *lightning_hsmd* hypothetical remote signing proxy instead of the standard *lightning\_hsmd*
binary. binary.
* **pid-file**=*PATH* * **pid-file**=*PATH*
@ -343,8 +343,8 @@ This allows override of one or more of our standard feerates (see
lightning-feerates(7)). Up to 5 values, separated by '/' can be lightning-feerates(7)). Up to 5 values, separated by '/' can be
provided: if fewer are provided, then the final value is used for the provided: if fewer are provided, then the final value is used for the
remainder. The values are in per-kw (roughly 1/4 of bitcoind's per-kb remainder. The values are in per-kw (roughly 1/4 of bitcoind's per-kb
values), and the order is "opening", "mutual_close", "unilateral_close", values), and the order is "opening", "mutual\_close", "unilateral\_close",
"delayed_to_us", "htlc_resolution", and "penalty". "delayed\_to\_us", "htlc\_resolution", and "penalty".
You would usually put this option in the per-chain config file, to avoid You would usually put this option in the per-chain config file, to avoid
setting it on Bitcoin mainnet! e.g. `~rusty/.lightning/regtest/config`. setting it on Bitcoin mainnet! e.g. `~rusty/.lightning/regtest/config`.

View file

@ -84,8 +84,8 @@ Any field name which starts with "warning" is a specific warning, and
should be documented in the commands' manual page. Each warning field should be documented in the commands' manual page. Each warning field
has an associated human-readable string, but it's redudant, as each has an associated human-readable string, but it's redudant, as each
separate warning should have a distinct field name separate warning should have a distinct field name
(e.g. **warning_offer_unknown_currency** and (e.g. **warning\_offer\_unknown\_currency** and
**warning_offer_missing_description**). **warning\_offer\_missing\_description**).
JSON TYPES JSON TYPES
---------- ----------

View file

@ -142,11 +142,11 @@ and look at the *state* of the channel:
$ lightning-cli listpeers $PUBLICKEY $ lightning-cli listpeers $PUBLICKEY
The channel will initially start with a *state* of The channel will initially start with a *state* of
*CHANNELD\_AWAITING_LOCKIN*. You need to wait for the channel *state* *CHANNELD\_AWAITING\_LOCKIN*. You need to wait for the channel *state*
to become *CHANNELD_NORMAL*, meaning the funding transaction has been to become *CHANNELD\_NORMAL*, meaning the funding transaction has been
confirmed deeply. confirmed deeply.
Once the channel *state* is *CHANNELD_NORMAL*, you can start paying Once the channel *state* is *CHANNELD\_NORMAL*, you can start paying
merchants over Lightning. Acquire a Lightning invoice from your favorite merchants over Lightning. Acquire a Lightning invoice from your favorite
merchant, and use lightning-pay(7) to pay it: merchant, and use lightning-pay(7) to pay it:

View file

@ -14,7 +14,7 @@ installation involves: finding the source plugin, copying,
installing dependencies, testing, activating, and updating the installing dependencies, testing, activating, and updating the
lightningd config file. Reckless does all of these by invoking: lightningd config file. Reckless does all of these by invoking:
**reckless** **install** *plugin_name* **reckless** **install** *plugin\_name*
reckless will exit early in the event that: reckless will exit early in the event that:
- the plugin is not found in any available source repositories - the plugin is not found in any available source repositories
@ -28,28 +28,28 @@ config), but regtest may also be used.
Other commands include: Other commands include:
**reckless** **uninstall** *plugin_name* **reckless** **uninstall** *plugin\_name*
disables the plugin, removes the directory. disables the plugin, removes the directory.
**reckless** **search** *plugin_name* **reckless** **search** *plugin\_name*
looks through all available sources for a plugin matching looks through all available sources for a plugin matching
this name. this name.
**reckless** **enable** *plugin_name* **reckless** **enable** *plugin\_name*
dynamically enables the reckless-installed plugin and updates dynamically enables the reckless-installed plugin and updates
the config to match. the config to match.
**reckless** **disable** *plugin_name* **reckless** **disable** *plugin\_name*
dynamically disables the reckless-installed plugin and updates dynamically disables the reckless-installed plugin and updates
the config to match. the config to match.
**reckless** **source** **list** **reckless** **source** **list**
list available plugin repositories. list available plugin repositories.
**reckless** **source** **add** *repo_url* **reckless** **source** **add** *repo\_url*
add another plugin repo for reckless to search. add another plugin repo for reckless to search.
**reckless** **source** **rm** *repo_url* **reckless** **source** **rm** *repo\_url*
remove a plugin repo for reckless to search. remove a plugin repo for reckless to search.
OPTIONS OPTIONS
@ -57,14 +57,14 @@ OPTIONS
Available option flags: Available option flags:
**-d**, **--reckless-dir** *reckless_dir* **-d**, **--reckless-dir** *reckless\_dir*
specify an alternative data directory for reckless to use. specify an alternative data directory for reckless to use.
Useful if your .lightning is protected from execution. Useful if your .lightning is protected from execution.
**-l**, **--lightning** *lightning_data_dir* **-l**, **--lightning** *lightning\_data\_dir*
lightning data directory (defaults to $USER/.lightning) lightning data directory (defaults to $USER/.lightning)
**-c**, **--conf** *lightning_config* **-c**, **--conf** *lightning\_config*
pass the config used by lightningd pass the config used by lightningd
**-r**, **--regtest** **-r**, **--regtest**
@ -92,7 +92,7 @@ invoked, so **python3** should be available in your environment. This
can be verified with **which Python3**. The default reckless directory can be verified with **which Python3**. The default reckless directory
is $USER/.lightning/reckless and it should be possible for the is $USER/.lightning/reckless and it should be possible for the
lightningd user to execute files located here. If this is a problem, lightningd user to execute files located here. If this is a problem,
the option flag **reckless -d=<my_alternate_dir>** may be used to the option flag **reckless -d=<my\_alternate\_dir>** may be used to
relocate the reckless directory from its default. Consider creating a relocate the reckless directory from its default. Consider creating a
permanent alias in this case. permanent alias in this case.