Skip to content

Commit f8b06ec

Browse files
authored
Merge pull request #439 from TheBlueMatt/2020-01-398-fixups
398 with nits fixed.
2 parents a3064d9 + 933ae34 commit f8b06ec

8 files changed

+822
-878
lines changed

fuzz/src/chanmon_consistency.rs

+21-24
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ use lightning::ln::channelmonitor;
2929
use lightning::ln::channelmonitor::{ChannelMonitor, ChannelMonitorUpdateErr, HTLCUpdate};
3030
use lightning::ln::channelmanager::{ChannelManager, PaymentHash, PaymentPreimage, ChannelManagerReadArgs};
3131
use lightning::ln::router::{Route, RouteHop};
32-
use lightning::ln::msgs::{CommitmentUpdate, ChannelMessageHandler, ErrorAction, LightningError, UpdateAddHTLC, LocalFeatures};
32+
use lightning::ln::msgs::{CommitmentUpdate, ChannelMessageHandler, UpdateAddHTLC, LocalFeatures, ErrorAction};
3333
use lightning::util::enforcing_trait_impls::EnforcingChannelKeys;
3434
use lightning::util::events;
3535
use lightning::util::logger::Logger;
@@ -252,7 +252,7 @@ pub fn do_test(data: &[u8]) {
252252
} else { panic!("Wrong event type"); }
253253
};
254254

255-
$dest.handle_open_channel(&$source.get_our_node_id(), LocalFeatures::new(), &open_channel).unwrap();
255+
$dest.handle_open_channel(&$source.get_our_node_id(), LocalFeatures::new(), &open_channel);
256256
let accept_channel = {
257257
let events = $dest.get_and_clear_pending_msg_events();
258258
assert_eq!(events.len(), 1);
@@ -261,7 +261,7 @@ pub fn do_test(data: &[u8]) {
261261
} else { panic!("Wrong event type"); }
262262
};
263263

264-
$source.handle_accept_channel(&$dest.get_our_node_id(), LocalFeatures::new(), &accept_channel).unwrap();
264+
$source.handle_accept_channel(&$dest.get_our_node_id(), LocalFeatures::new(), &accept_channel);
265265
{
266266
let events = $source.get_and_clear_pending_events();
267267
assert_eq!(events.len(), 1);
@@ -282,7 +282,7 @@ pub fn do_test(data: &[u8]) {
282282
msg.clone()
283283
} else { panic!("Wrong event type"); }
284284
};
285-
$dest.handle_funding_created(&$source.get_our_node_id(), &funding_created).unwrap();
285+
$dest.handle_funding_created(&$source.get_our_node_id(), &funding_created);
286286

287287
let funding_signed = {
288288
let events = $dest.get_and_clear_pending_msg_events();
@@ -291,7 +291,7 @@ pub fn do_test(data: &[u8]) {
291291
msg.clone()
292292
} else { panic!("Wrong event type"); }
293293
};
294-
$source.handle_funding_signed(&$dest.get_our_node_id(), &funding_signed).unwrap();
294+
$source.handle_funding_signed(&$dest.get_our_node_id(), &funding_signed);
295295

296296
{
297297
let events = $source.get_and_clear_pending_events();
@@ -330,7 +330,7 @@ pub fn do_test(data: &[u8]) {
330330
if let events::MessageSendEvent::SendFundingLocked { ref node_id, ref msg } = event {
331331
for node in $nodes.iter() {
332332
if node.get_our_node_id() == *node_id {
333-
node.handle_funding_locked(&$nodes[idx].get_our_node_id(), msg).unwrap();
333+
node.handle_funding_locked(&$nodes[idx].get_our_node_id(), msg);
334334
}
335335
}
336336
} else { panic!("Wrong event type"); }
@@ -381,16 +381,6 @@ pub fn do_test(data: &[u8]) {
381381
let mut node_c_ser = VecWriter(Vec::new());
382382
nodes[2].write(&mut node_c_ser).unwrap();
383383

384-
macro_rules! test_err {
385-
($res: expr) => {
386-
match $res {
387-
Ok(()) => {},
388-
Err(LightningError { action: ErrorAction::IgnoreError, .. }) => { },
389-
_ => { $res.unwrap() },
390-
}
391-
}
392-
}
393-
394384
macro_rules! test_return {
395385
() => { {
396386
assert_eq!(nodes[0].list_channels().len(), 1);
@@ -470,7 +460,7 @@ pub fn do_test(data: &[u8]) {
470460
assert!(update_fee.is_none());
471461
for update_add in update_add_htlcs {
472462
if !$corrupt_forward {
473-
test_err!(dest.handle_update_add_htlc(&nodes[$node].get_our_node_id(), &update_add));
463+
dest.handle_update_add_htlc(&nodes[$node].get_our_node_id(), &update_add);
474464
} else {
475465
// Corrupt the update_add_htlc message so that its HMAC
476466
// check will fail and we generate a
@@ -479,33 +469,33 @@ pub fn do_test(data: &[u8]) {
479469
let mut msg_ser = update_add.encode();
480470
msg_ser[1000] ^= 0xff;
481471
let new_msg = UpdateAddHTLC::read(&mut Cursor::new(&msg_ser)).unwrap();
482-
test_err!(dest.handle_update_add_htlc(&nodes[$node].get_our_node_id(), &new_msg));
472+
dest.handle_update_add_htlc(&nodes[$node].get_our_node_id(), &new_msg);
483473
}
484474
}
485475
for update_fulfill in update_fulfill_htlcs {
486-
test_err!(dest.handle_update_fulfill_htlc(&nodes[$node].get_our_node_id(), &update_fulfill));
476+
dest.handle_update_fulfill_htlc(&nodes[$node].get_our_node_id(), &update_fulfill);
487477
}
488478
for update_fail in update_fail_htlcs {
489-
test_err!(dest.handle_update_fail_htlc(&nodes[$node].get_our_node_id(), &update_fail));
479+
dest.handle_update_fail_htlc(&nodes[$node].get_our_node_id(), &update_fail);
490480
}
491481
for update_fail_malformed in update_fail_malformed_htlcs {
492-
test_err!(dest.handle_update_fail_malformed_htlc(&nodes[$node].get_our_node_id(), &update_fail_malformed));
482+
dest.handle_update_fail_malformed_htlc(&nodes[$node].get_our_node_id(), &update_fail_malformed);
493483
}
494-
test_err!(dest.handle_commitment_signed(&nodes[$node].get_our_node_id(), &commitment_signed));
484+
dest.handle_commitment_signed(&nodes[$node].get_our_node_id(), &commitment_signed);
495485
}
496486
}
497487
},
498488
events::MessageSendEvent::SendRevokeAndACK { ref node_id, ref msg } => {
499489
for dest in nodes.iter() {
500490
if dest.get_our_node_id() == *node_id {
501-
test_err!(dest.handle_revoke_and_ack(&nodes[$node].get_our_node_id(), msg));
491+
dest.handle_revoke_and_ack(&nodes[$node].get_our_node_id(), msg);
502492
}
503493
}
504494
},
505495
events::MessageSendEvent::SendChannelReestablish { ref node_id, ref msg } => {
506496
for dest in nodes.iter() {
507497
if dest.get_our_node_id() == *node_id {
508-
test_err!(dest.handle_channel_reestablish(&nodes[$node].get_our_node_id(), msg));
498+
dest.handle_channel_reestablish(&nodes[$node].get_our_node_id(), msg);
509499
}
510500
}
511501
},
@@ -516,6 +506,10 @@ pub fn do_test(data: &[u8]) {
516506
// Can be generated due to a payment forward being rejected due to a
517507
// channel having previously failed a monitor update
518508
},
509+
events::MessageSendEvent::HandleError { action: ErrorAction::IgnoreError, .. } => {
510+
// Can be generated at any processing step to send back an error, disconnect
511+
// peer or just ignore
512+
},
519513
_ => panic!("Unhandled message event"),
520514
}
521515
}
@@ -532,6 +526,7 @@ pub fn do_test(data: &[u8]) {
532526
events::MessageSendEvent::SendChannelReestablish { .. } => {},
533527
events::MessageSendEvent::SendFundingLocked { .. } => {},
534528
events::MessageSendEvent::PaymentFailureNetworkUpdate { .. } => {},
529+
events::MessageSendEvent::HandleError { action: ErrorAction::IgnoreError, .. } => {},
535530
_ => panic!("Unhandled message event"),
536531
}
537532
}
@@ -544,6 +539,7 @@ pub fn do_test(data: &[u8]) {
544539
events::MessageSendEvent::SendChannelReestablish { .. } => {},
545540
events::MessageSendEvent::SendFundingLocked { .. } => {},
546541
events::MessageSendEvent::PaymentFailureNetworkUpdate { .. } => {},
542+
events::MessageSendEvent::HandleError { action: ErrorAction::IgnoreError, .. } => {},
547543
_ => panic!("Unhandled message event"),
548544
}
549545
}
@@ -565,6 +561,7 @@ pub fn do_test(data: &[u8]) {
565561
},
566562
events::MessageSendEvent::SendFundingLocked { .. } => false,
567563
events::MessageSendEvent::PaymentFailureNetworkUpdate { .. } => false,
564+
events::MessageSendEvent::HandleError { action: ErrorAction::IgnoreError, .. } => false,
568565
_ => panic!("Unhandled message event"),
569566
};
570567
if push { msg_sink.push(event); }

0 commit comments

Comments
 (0)