Skip to content

Commit

Permalink
Merge pull request #1582 from TheBlueMatt/2022-06-0.0.109
Browse files Browse the repository at this point in the history
Cut 0.0.109
  • Loading branch information
TheBlueMatt committed Jul 1, 2022
2 parents d9ba7ce + 156cc77 commit f3d5b94
Show file tree
Hide file tree
Showing 8 changed files with 91 additions and 21 deletions.
72 changes: 71 additions & 1 deletion CHANGELOG.md
@@ -1,3 +1,73 @@
# 0.0.109 - 2022-06-30

## API Updates
* `ChannelManager::update_channel_config` has been added to allow the fields
in `ChannelConfig` to be changed in a given channel after open (#1527).
* If we reconnect to a peer which proves we have a stale channel state, rather
than force-closing we will instead panic to provide an opportunity to switch
to the latest state and continue operating without channel loss (#1564).
* A `NodeAlias` struct has been added which handles string sanitization for
node aliases via the `Display` trait (#1544).
* `ProbabilisticScoringParameters` now has a `banned_nodes` set which we will
never route through during path finding (#1550).
* `ProbabilisticScoringParameters` now offers an `anti_probing_penalty_msat`
option to prefer channels which afford better privacy when routing (#1555).
* `ProbabilisticScorer` now provides access to its estimated liquidity range
for a given channel via `estimated_channel_liquidity_range` (#1549).
* Options which cannot be changed at runtime have been moved from
`ChannelConfig` to `ChannelHandshakeConfig` (#1529).
* `find_route` takes `&NetworkGraph` instead of `ReadOnlyNetworkGraph (#1583).
* `ChannelDetails` now contains a copy of the current `ChannelConfig` (#1527).
* The `lightning-invoice` crate now optionally depends on `serde`, with
`Invoice` implementing `serde::{Deserialize,Serialize}` if enabled (#1548).
* Several fields in `UserConfig` have been renamed for clarity (#1540).

## Bug Fixes
* `find_route` no longer selects routes with more than
`PaymentParameters::max_mpp_path_count` paths, and
`ChannelManager::send_payment` no longer refuses to send along routes with
more than ten paths (#1526).
* Fixed two cases where HTLCs pending at the time a counterparty broadcasts a
revoked commitment transaction are considered resolved prior to their actual
resolution on-chain, possibly passing the update to another channel (#1486).
* HTLCs which are relayed through LDK may now have a total expiry time two
weeks in the future, up from one, reducing forwarding failures (#1532).

## Serialization Compatibility
* All new fields are ignored by prior versions of LDK. All new fields are not
present when reading objects serialized by prior versions of LDK.
* `ChannelConfig`'s serialization format has changed and is not compatible
with any previous version of LDK. Attempts to read values written by a
previous version of LDK will fail and attempts to read newly written objects
using a previous version of LDK will fail. It is not expected that users are
serializing `ChannelConfig` using the LDK serialization API, however, if a
backward compatibility wrapper is required, please open an issue.

## Security
0.0.109 fixes a denial-of-service vulnerability which is reachable from
untrusted input in some application deployments.

* Third parties which are allowed to open channels with an LDK-based node may
fund a channel with a bogus and maliciously-crafted transaction which, when
spent, can cause a panic in the channel's corresponding `ChannelMonitor`.
Such a channel is never usable as it cannot be funded with a funding
transaction which matches the required output script, allowing the
`ChannelMonitor` for such channels to be safely purged as a workaround on
previous versions of LDK. Thanks to Eugene Siegel for reporting this issue.

In total, this release features 32 files changed, 1948 insertions, 532
deletions in 33 commits from 9 authors, in alphabetical order:
* Antoine Riard
* Daniel Granhão
* Elias Rohrer
* Jeffrey Czyz
* Matt Corallo
* Matt Faltyn
* NicolaLS
* Valentine Wallace
* Wilmer Paulino


# 0.0.108 - 2022-06-10

## Bug Fixes
Expand Down Expand Up @@ -148,7 +218,7 @@ deletions in 153 commits from 18 authors, in alphabetical order:
* Jurvis Tan
* Justin Moon
* KaFai Choi
* Mateusz Faltyn
* Matt Faltyn
* Matt Corallo
* Valentine Wallace
* Viktor Tigerström
Expand Down
12 changes: 6 additions & 6 deletions lightning-background-processor/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "lightning-background-processor"
version = "0.0.108"
version = "0.0.109"
authors = ["Valentine Wallace <vwallace@protonmail.com>"]
license = "MIT OR Apache-2.0"
repository = "http://github.com/lightningdevkit/rust-lightning"
Expand All @@ -15,10 +15,10 @@ rustdoc-args = ["--cfg", "docsrs"]

[dependencies]
bitcoin = "0.28.1"
lightning = { version = "0.0.108", path = "../lightning", features = ["std"] }
lightning-rapid-gossip-sync = { version = "0.0.108", path = "../lightning-rapid-gossip-sync" }
lightning = { version = "0.0.109", path = "../lightning", features = ["std"] }
lightning-rapid-gossip-sync = { version = "0.0.109", path = "../lightning-rapid-gossip-sync" }

[dev-dependencies]
lightning = { version = "0.0.108", path = "../lightning", features = ["_test_utils"] }
lightning-invoice = { version = "0.16.0", path = "../lightning-invoice" }
lightning-persister = { version = "0.0.108", path = "../lightning-persister" }
lightning = { version = "0.0.109", path = "../lightning", features = ["_test_utils"] }
lightning-invoice = { version = "0.17.0", path = "../lightning-invoice" }
lightning-persister = { version = "0.0.109", path = "../lightning-persister" }
4 changes: 2 additions & 2 deletions lightning-block-sync/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "lightning-block-sync"
version = "0.0.108"
version = "0.0.109"
authors = ["Jeffrey Czyz", "Matt Corallo"]
license = "MIT OR Apache-2.0"
repository = "http://github.com/lightningdevkit/rust-lightning"
Expand All @@ -19,7 +19,7 @@ rpc-client = [ "serde", "serde_json", "chunked_transfer" ]

[dependencies]
bitcoin = "0.28.1"
lightning = { version = "0.0.108", path = "../lightning" }
lightning = { version = "0.0.109", path = "../lightning" }
futures = { version = "0.3" }
tokio = { version = "1.0", features = [ "io-util", "net", "time" ], optional = true }
serde = { version = "1.0", features = ["derive"], optional = true }
Expand Down
6 changes: 3 additions & 3 deletions lightning-invoice/Cargo.toml
@@ -1,7 +1,7 @@
[package]
name = "lightning-invoice"
description = "Data structures to parse and serialize BOLT11 lightning invoices"
version = "0.16.0"
version = "0.17.0"
authors = ["Sebastian Geisler <sgeisler@wh2.tu-dresden.de>"]
documentation = "https://docs.rs/lightning-invoice/"
license = "MIT OR Apache-2.0"
Expand All @@ -20,7 +20,7 @@ std = ["bitcoin_hashes/std", "num-traits/std", "lightning/std", "bech32/std"]

[dependencies]
bech32 = { version = "0.8", default-features = false }
lightning = { version = "0.0.108", path = "../lightning", default-features = false }
lightning = { version = "0.0.109", path = "../lightning", default-features = false }
secp256k1 = { version = "0.22", default-features = false, features = ["recovery", "alloc"] }
num-traits = { version = "0.2.8", default-features = false }
bitcoin_hashes = { version = "0.10", default-features = false }
Expand All @@ -29,6 +29,6 @@ core2 = { version = "0.3.0", default-features = false, optional = true }
serde = { version = "1.0.118", optional = true }

[dev-dependencies]
lightning = { version = "0.0.108", path = "../lightning", default-features = false, features = ["_test_utils"] }
lightning = { version = "0.0.109", path = "../lightning", default-features = false, features = ["_test_utils"] }
hex = "0.4"
serde_json = { version = "1"}
4 changes: 2 additions & 2 deletions lightning-net-tokio/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "lightning-net-tokio"
version = "0.0.108"
version = "0.0.109"
authors = ["Matt Corallo"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/lightningdevkit/rust-lightning/"
Expand All @@ -16,7 +16,7 @@ rustdoc-args = ["--cfg", "docsrs"]

[dependencies]
bitcoin = "0.28.1"
lightning = { version = "0.0.108", path = "../lightning" }
lightning = { version = "0.0.109", path = "../lightning" }
tokio = { version = "1.0", features = [ "io-util", "macros", "rt", "sync", "net", "time" ] }

[dev-dependencies]
Expand Down
6 changes: 3 additions & 3 deletions lightning-persister/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "lightning-persister"
version = "0.0.108"
version = "0.0.109"
authors = ["Valentine Wallace", "Matt Corallo"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/lightningdevkit/rust-lightning/"
Expand All @@ -17,11 +17,11 @@ _bench_unstable = ["lightning/_bench_unstable"]

[dependencies]
bitcoin = "0.28.1"
lightning = { version = "0.0.108", path = "../lightning" }
lightning = { version = "0.0.109", path = "../lightning" }
libc = "0.2"

[target.'cfg(windows)'.dependencies]
winapi = { version = "0.3", features = ["winbase"] }

[dev-dependencies]
lightning = { version = "0.0.108", path = "../lightning", features = ["_test_utils"] }
lightning = { version = "0.0.109", path = "../lightning", features = ["_test_utils"] }
6 changes: 3 additions & 3 deletions lightning-rapid-gossip-sync/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "lightning-rapid-gossip-sync"
version = "0.0.108"
version = "0.0.109"
authors = ["Arik Sosman <git@arik.io>"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/lightningdevkit/rust-lightning"
Expand All @@ -13,8 +13,8 @@ Utility to process gossip routing data from Rapid Gossip Sync Server.
_bench_unstable = []

[dependencies]
lightning = { version = "0.0.108", path = "../lightning" }
lightning = { version = "0.0.109", path = "../lightning" }
bitcoin = { version = "0.28.1", default-features = false }

[dev-dependencies]
lightning = { version = "0.0.108", path = "../lightning", features = ["_test_utils"] }
lightning = { version = "0.0.109", path = "../lightning", features = ["_test_utils"] }
2 changes: 1 addition & 1 deletion lightning/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "lightning"
version = "0.0.108"
version = "0.0.109"
authors = ["Matt Corallo"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/lightningdevkit/rust-lightning/"
Expand Down

0 comments on commit f3d5b94

Please sign in to comment.