Skip to content

Commit 6ccbcba

Browse files
committed
Upgrade bitcoin to 0.32.2.
1 parent 5ab40b2 commit 6ccbcba

File tree

40 files changed

+407
-210
lines changed

40 files changed

+407
-210
lines changed

fuzz/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ lightning = { path = "../lightning", features = ["regex", "hashbrown", "_test_ut
2222
lightning-invoice = { path = "../lightning-invoice" }
2323
lightning-rapid-gossip-sync = { path = "../lightning-rapid-gossip-sync" }
2424
bech32 = "0.9.1"
25-
bitcoin = { version = "0.31.2", features = ["secp-lowmemory"] }
25+
bitcoin = { version = "0.32.2", features = ["secp-lowmemory"] }
2626

2727
afl = { version = "0.12", optional = true }
2828
honggfuzz = { version = "0.5", optional = true, default-features = false }

fuzz/src/chanmon_consistency.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,8 +81,9 @@ use bitcoin::secp256k1::ecdsa::{RecoverableSignature, Signature};
8181
use bitcoin::secp256k1::schnorr;
8282
use bitcoin::secp256k1::{self, Message, PublicKey, Scalar, Secp256k1, SecretKey};
8383

84+
use bech32::u5;
85+
use lightning::io::Cursor;
8486
use std::cmp::{self, Ordering};
85-
use std::io::Cursor;
8687
use std::mem;
8788
use std::sync::atomic;
8889
use std::sync::{Arc, Mutex};
@@ -154,7 +155,7 @@ impl BroadcasterInterface for TestBroadcaster {
154155

155156
pub struct VecWriter(pub Vec<u8>);
156157
impl Writer for VecWriter {
157-
fn write_all(&mut self, buf: &[u8]) -> Result<(), ::std::io::Error> {
158+
fn write_all(&mut self, buf: &[u8]) -> Result<(), ::lightning::io::Error> {
158159
self.0.extend_from_slice(buf);
159160
Ok(())
160161
}
@@ -394,7 +395,7 @@ impl SignerProvider for KeyProvider {
394395
}
395396

396397
fn read_chan_signer(&self, buffer: &[u8]) -> Result<Self::EcdsaSigner, DecodeError> {
397-
let mut reader = std::io::Cursor::new(buffer);
398+
let mut reader = lightning::io::Cursor::new(buffer);
398399

399400
let inner: InMemorySigner = ReadableArgs::read(&mut reader, self)?;
400401
let state = self.make_enforcement_state_cell(inner.commitment_seed);

fuzz/src/chanmon_deser.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,11 @@ use lightning::util::test_utils::OnlyReadsKeysInterface;
1010

1111
use crate::utils::test_logger;
1212

13-
use std::io::Cursor;
13+
use lightning::io::Cursor;
1414

1515
struct VecWriter(Vec<u8>);
1616
impl Writer for VecWriter {
17-
fn write_all(&mut self, buf: &[u8]) -> Result<(), ::std::io::Error> {
17+
fn write_all(&mut self, buf: &[u8]) -> Result<(), ::lightning::io::Error> {
1818
self.0.extend_from_slice(buf);
1919
Ok(())
2020
}

fuzz/src/full_stack.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,8 +121,8 @@ impl InputData {
121121
Some(&self.data[old_pos..old_pos + len])
122122
}
123123
}
124-
impl std::io::Read for &InputData {
125-
fn read(&mut self, buf: &mut [u8]) -> std::io::Result<usize> {
124+
impl lightning::io::Read for &InputData {
125+
fn read(&mut self, buf: &mut [u8]) -> bitcoin::io::Result<usize> {
126126
if let Some(sl) = self.get_slice(buf.len()) {
127127
buf.copy_from_slice(sl);
128128
Ok(buf.len())

fuzz/src/msg_targets/utils.rs

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
use lightning::util::ser::Writer;
1313
pub struct VecWriter(pub Vec<u8>);
1414
impl Writer for VecWriter {
15-
fn write_all(&mut self, buf: &[u8]) -> Result<(), ::std::io::Error> {
15+
fn write_all(&mut self, buf: &[u8]) -> Result<(), ::lightning::io::Error> {
1616
self.0.extend_from_slice(buf);
1717
Ok(())
1818
}
@@ -31,7 +31,7 @@ impl Writer for VecWriter {
3131
macro_rules! test_msg {
3232
($MsgType: path, $data: ident) => {{
3333
use lightning::util::ser::{Readable, Writeable};
34-
let mut r = ::std::io::Cursor::new($data);
34+
let mut r = ::lightning::io::Cursor::new($data);
3535
if let Ok(msg) = <$MsgType as Readable>::read(&mut r) {
3636
let p = r.position() as usize;
3737
let mut w = VecWriter(Vec::new());
@@ -50,13 +50,14 @@ macro_rules! test_msg {
5050
macro_rules! test_msg_simple {
5151
($MsgType: path, $data: ident) => {{
5252
use lightning::util::ser::{Readable, Writeable};
53-
let mut r = ::std::io::Cursor::new($data);
53+
let mut r = ::lightning::io::Cursor::new($data);
5454
if let Ok(msg) = <$MsgType as Readable>::read(&mut r) {
5555
let mut w = VecWriter(Vec::new());
5656
msg.write(&mut w).unwrap();
5757
assert_eq!(msg.serialized_length(), w.0.len());
5858

59-
let msg = <$MsgType as Readable>::read(&mut ::std::io::Cursor::new(&w.0)).unwrap();
59+
let msg =
60+
<$MsgType as Readable>::read(&mut ::lightning::io::Cursor::new(&w.0)).unwrap();
6061
let mut w_two = VecWriter(Vec::new());
6162
msg.write(&mut w_two).unwrap();
6263
assert_eq!(&w.0[..], &w_two.0[..]);
@@ -70,7 +71,7 @@ macro_rules! test_msg_simple {
7071
macro_rules! test_msg_exact {
7172
($MsgType: path, $data: ident) => {{
7273
use lightning::util::ser::{Readable, Writeable};
73-
let mut r = ::std::io::Cursor::new($data);
74+
let mut r = ::lightning::io::Cursor::new($data);
7475
if let Ok(msg) = <$MsgType as Readable>::read(&mut r) {
7576
let mut w = VecWriter(Vec::new());
7677
msg.write(&mut w).unwrap();
@@ -86,7 +87,7 @@ macro_rules! test_msg_exact {
8687
macro_rules! test_msg_hole {
8788
($MsgType: path, $data: ident, $hole: expr, $hole_len: expr) => {{
8889
use lightning::util::ser::{Readable, Writeable};
89-
let mut r = ::std::io::Cursor::new($data);
90+
let mut r = ::lightning::io::Cursor::new($data);
9091
if let Ok(msg) = <$MsgType as Readable>::read(&mut r) {
9192
let mut w = VecWriter(Vec::new());
9293
msg.write(&mut w).unwrap();

fuzz/src/onion_hop_data.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ use lightning::util::test_utils;
1717
pub fn onion_hop_data_test<Out: test_logger::Output>(data: &[u8], _out: Out) {
1818
use bitcoin::secp256k1::PublicKey;
1919
use lightning::util::ser::ReadableArgs;
20-
let mut r = ::std::io::Cursor::new(data);
20+
let mut r = ::lightning::io::Cursor::new(data);
2121
let node_signer = test_utils::TestNodeSigner::new(test_utils::privkey(42));
2222
let _ = <lightning::ln::msgs::InboundOnionPayload as ReadableArgs<(
2323
Option<PublicKey>,
@@ -30,7 +30,7 @@ pub extern "C" fn onion_hop_data_run(data: *const u8, datalen: usize) {
3030
use bitcoin::secp256k1::PublicKey;
3131
use lightning::util::ser::ReadableArgs;
3232
let data = unsafe { std::slice::from_raw_parts(data, datalen) };
33-
let mut r = ::std::io::Cursor::new(data);
33+
let mut r = ::lightning::io::Cursor::new(data);
3434
let node_signer = test_utils::TestNodeSigner::new(test_utils::privkey(42));
3535
let _ = <lightning::ln::msgs::InboundOnionPayload as ReadableArgs<(
3636
Option<PublicKey>,

fuzz/src/onion_message.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ use lightning_invoice::RawBolt11Invoice;
3030

3131
use crate::utils::test_logger;
3232

33-
use std::io::{self, Cursor};
33+
use lightning::io::{self, Cursor};
3434
use std::sync::atomic::{AtomicU64, Ordering};
3535

3636
#[inline]
@@ -168,7 +168,7 @@ impl CustomOnionMessageHandler for TestCustomMessageHandler {
168168
&self, _message_type: u64, buffer: &mut R,
169169
) -> Result<Option<Self::CustomMessage>, msgs::DecodeError> {
170170
let mut buf = Vec::new();
171-
buffer.read_to_end(&mut buf)?;
171+
buffer.read_to_limit(&mut buf, u64::MAX)?;
172172
return Ok(Some(TestCustomMessage {}));
173173
}
174174
fn release_pending_custom_messages(&self) -> Vec<PendingOnionMessage<Self::CustomMessage>> {
@@ -178,7 +178,7 @@ impl CustomOnionMessageHandler for TestCustomMessageHandler {
178178

179179
pub struct VecWriter(pub Vec<u8>);
180180
impl Writer for VecWriter {
181-
fn write_all(&mut self, buf: &[u8]) -> Result<(), ::std::io::Error> {
181+
fn write_all(&mut self, buf: &[u8]) -> Result<(), ::lightning::io::Error> {
182182
self.0.extend_from_slice(buf);
183183
Ok(())
184184
}

fuzz/src/router.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ pub fn do_test<Out: test_logger::Output>(data: &[u8], out: Out) {
146146

147147
macro_rules! decode_msg {
148148
($MsgType: path, $len: expr) => {{
149-
let mut reader = ::std::io::Cursor::new(get_slice!($len));
149+
let mut reader = ::lightning::io::Cursor::new(get_slice!($len));
150150
match <$MsgType>::read(&mut reader) {
151151
Ok(msg) => {
152152
assert_eq!(reader.position(), $len as u64);

lightning-background-processor/Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,12 @@ rustdoc-args = ["--cfg", "docsrs"]
1616
[features]
1717
futures = [ ]
1818
std = ["bitcoin/std", "lightning/std", "lightning-rapid-gossip-sync/std"]
19-
no-std = ["bitcoin/no-std", "lightning/no-std", "lightning-rapid-gossip-sync/no-std"]
19+
no-std = ["lightning/no-std", "lightning-rapid-gossip-sync/no-std"]
2020

2121
default = ["std"]
2222

2323
[dependencies]
24-
bitcoin = { version = "0.31.2", default-features = false }
24+
bitcoin = { version = "0.32.2", default-features = false }
2525
lightning = { version = "0.0.123-beta", path = "../lightning", default-features = false }
2626
lightning-rapid-gossip-sync = { version = "0.0.123-beta", path = "../lightning-rapid-gossip-sync", default-features = false }
2727

lightning-background-processor/src/lib.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1326,7 +1326,7 @@ mod tests {
13261326
&& key == CHANNEL_MANAGER_PERSISTENCE_KEY
13271327
{
13281328
if let Some((error, message)) = self.manager_error {
1329-
return Err(std::io::Error::new(error, message));
1329+
return Err(std::io::Error::new(error, message).into());
13301330
}
13311331
}
13321332

@@ -1344,7 +1344,7 @@ mod tests {
13441344
};
13451345

13461346
if let Some((error, message)) = self.graph_error {
1347-
return Err(std::io::Error::new(error, message));
1347+
return Err(std::io::Error::new(error, message).into());
13481348
}
13491349
}
13501350

@@ -1353,7 +1353,7 @@ mod tests {
13531353
&& key == SCORER_PERSISTENCE_KEY
13541354
{
13551355
if let Some((error, message)) = self.scorer_error {
1356-
return Err(std::io::Error::new(error, message));
1356+
return Err(std::io::Error::new(error, message).into());
13571357
}
13581358
}
13591359

lightning-block-sync/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ rest-client = [ "serde_json", "chunked_transfer" ]
1818
rpc-client = [ "serde_json", "chunked_transfer" ]
1919

2020
[dependencies]
21-
bitcoin = "0.31.2"
21+
bitcoin = "0.32.2"
2222
lightning = { version = "0.0.123-beta", path = "../lightning" }
2323
tokio = { version = "1.35", features = [ "io-util", "net", "time", "rt" ], optional = true }
2424
serde_json = { version = "1.0", optional = true }

lightning-block-sync/src/init.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ where
5959
///
6060
/// use lightning_block_sync::*;
6161
///
62-
/// use std::io::Cursor;
62+
/// use lightning::io::Cursor;
6363
///
6464
/// async fn init_sync<
6565
/// B: BlockSource,

lightning-custom-message/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ all-features = true
1414
rustdoc-args = ["--cfg", "docsrs"]
1515

1616
[dependencies]
17-
bitcoin = "0.31.2"
17+
bitcoin = "0.32.2"
1818
lightning = { version = "0.0.123-beta", path = "../lightning" }
1919

2020
[lints]

lightning-invoice/Cargo.toml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,14 @@ rustdoc-args = ["--cfg", "docsrs"]
1616

1717
[features]
1818
default = ["std"]
19-
no-std = ["bitcoin/no-std"]
20-
std = ["bitcoin/std", "bech32/std"]
19+
no-std = []
20+
std = ["bech32/std"]
2121

2222
[dependencies]
2323
bech32 = { version = "0.9.1", default-features = false }
2424
lightning-types = { version = "0.1", path = "../lightning-types", default-features = false }
25-
secp256k1 = { version = "0.28.0", default-features = false, features = ["recovery", "alloc"] }
2625
serde = { version = "1.0.118", optional = true }
27-
bitcoin = { version = "0.31.2", default-features = false }
26+
bitcoin = { version = "0.32.2", default-features = false, features = ["secp-recovery"] }
2827

2928
[dev-dependencies]
3029
serde_json = { version = "1"}

lightning-invoice/src/de.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ use crate::prelude::*;
1717
use lightning_types::payment::PaymentSecret;
1818
use lightning_types::routing::{RoutingFees, RouteHint, RouteHintHop};
1919

20-
use secp256k1::ecdsa::{RecoveryId, RecoverableSignature};
21-
use secp256k1::PublicKey;
20+
use bitcoin::secp256k1::ecdsa::{RecoveryId, RecoverableSignature};
21+
use bitcoin::secp256k1::PublicKey;
2222

2323
use super::{Bolt11Invoice, Sha256, TaggedField, ExpiryTime, MinFinalCltvExpiryDelta, Fallback, PayeePubKey, Bolt11InvoiceSignature, PositiveTimestamp,
2424
Bolt11SemanticError, PrivateRoute, Bolt11ParseError, ParseOrSemanticError, Description, RawTaggedField, Currency, RawHrp, SiPrefix, RawBolt11Invoice,
@@ -698,7 +698,7 @@ macro_rules! from_error {
698698
}
699699
}
700700

701-
from_error!(Bolt11ParseError::MalformedSignature, secp256k1::Error);
701+
from_error!(Bolt11ParseError::MalformedSignature, bitcoin::secp256k1::Error);
702702
from_error!(Bolt11ParseError::ParseAmountError, ParseIntError);
703703
from_error!(Bolt11ParseError::DescriptionDecodeError, str::Utf8Error);
704704

@@ -726,7 +726,7 @@ impl From<crate::Bolt11SemanticError> for ParseOrSemanticError {
726726
#[cfg(test)]
727727
mod test {
728728
use crate::de::Bolt11ParseError;
729-
use secp256k1::PublicKey;
729+
use bitcoin::secp256k1::PublicKey;
730730
use bech32::u5;
731731
use bitcoin::hashes::sha256;
732732
use std::str::FromStr;
@@ -973,7 +973,7 @@ mod test {
973973
#[test]
974974
fn test_payment_secret_and_features_de_and_ser() {
975975
use lightning_types::features::Bolt11InvoiceFeatures;
976-
use secp256k1::ecdsa::{RecoveryId, RecoverableSignature};
976+
use bitcoin::secp256k1::ecdsa::{RecoveryId, RecoverableSignature};
977977
use crate::TaggedField::*;
978978
use crate::{SiPrefix, SignedRawBolt11Invoice, Bolt11InvoiceSignature, RawBolt11Invoice, RawHrp, RawDataPart,
979979
Currency, Sha256, PositiveTimestamp};
@@ -1020,7 +1020,7 @@ mod test {
10201020
#[test]
10211021
fn test_raw_signed_invoice_deserialization() {
10221022
use crate::TaggedField::*;
1023-
use secp256k1::ecdsa::{RecoveryId, RecoverableSignature};
1023+
use bitcoin::secp256k1::ecdsa::{RecoveryId, RecoverableSignature};
10241024
use crate::{SignedRawBolt11Invoice, Bolt11InvoiceSignature, RawBolt11Invoice, RawHrp, RawDataPart, Currency, Sha256,
10251025
PositiveTimestamp};
10261026

0 commit comments

Comments
 (0)