mirror of
https://github.com/lightningdevkit/rust-lightning.git
synced 2025-02-25 07:17:40 +01:00
Drop unused type parameter on BlindedRoute::new
I'm not sure why rustc didn't complain about the unused parameter or why we're allowed to get away without explicitly bounding the `Sign` in the `KeysInterface`, but the current code requires all `BlindedPath` construction to explicitly turbofish an unused type.
This commit is contained in:
parent
88ec5da4b3
commit
be7107f212
3 changed files with 10 additions and 10 deletions
|
@ -11,7 +11,7 @@
|
|||
|
||||
use bitcoin::secp256k1::{self, PublicKey, Secp256k1, SecretKey};
|
||||
|
||||
use chain::keysinterface::{KeysInterface, Sign};
|
||||
use chain::keysinterface::KeysInterface;
|
||||
use super::utils;
|
||||
use ln::msgs::DecodeError;
|
||||
use util::chacha20poly1305rfc::ChaChaPolyWriteAdapter;
|
||||
|
@ -55,7 +55,7 @@ impl BlindedRoute {
|
|||
///
|
||||
/// Errors if less than two hops are provided or if `node_pk`(s) are invalid.
|
||||
// TODO: make all payloads the same size with padding + add dummy hops
|
||||
pub fn new<Signer: Sign, K: KeysInterface, T: secp256k1::Signing + secp256k1::Verification>
|
||||
pub fn new<K: KeysInterface, T: secp256k1::Signing + secp256k1::Verification>
|
||||
(node_pks: &[PublicKey], keys_manager: &K, secp_ctx: &Secp256k1<T>) -> Result<Self, ()>
|
||||
{
|
||||
if node_pks.len() < 2 { return Err(()) }
|
||||
|
|
|
@ -98,7 +98,7 @@ fn two_unblinded_two_blinded() {
|
|||
let nodes = create_nodes(5);
|
||||
|
||||
let secp_ctx = Secp256k1::new();
|
||||
let blinded_route = BlindedRoute::new::<EnforcingSigner, _, _>(&[nodes[3].get_node_pk(), nodes[4].get_node_pk()], &*nodes[4].keys_manager, &secp_ctx).unwrap();
|
||||
let blinded_route = BlindedRoute::new(&[nodes[3].get_node_pk(), nodes[4].get_node_pk()], &*nodes[4].keys_manager, &secp_ctx).unwrap();
|
||||
|
||||
nodes[0].messenger.send_onion_message(&[nodes[1].get_node_pk(), nodes[2].get_node_pk()], Destination::BlindedRoute(blinded_route), None).unwrap();
|
||||
pass_along_path(&nodes, None);
|
||||
|
@ -109,7 +109,7 @@ fn three_blinded_hops() {
|
|||
let nodes = create_nodes(4);
|
||||
|
||||
let secp_ctx = Secp256k1::new();
|
||||
let blinded_route = BlindedRoute::new::<EnforcingSigner, _, _>(&[nodes[1].get_node_pk(), nodes[2].get_node_pk(), nodes[3].get_node_pk()], &*nodes[3].keys_manager, &secp_ctx).unwrap();
|
||||
let blinded_route = BlindedRoute::new(&[nodes[1].get_node_pk(), nodes[2].get_node_pk(), nodes[3].get_node_pk()], &*nodes[3].keys_manager, &secp_ctx).unwrap();
|
||||
|
||||
nodes[0].messenger.send_onion_message(&[], Destination::BlindedRoute(blinded_route), None).unwrap();
|
||||
pass_along_path(&nodes, None);
|
||||
|
@ -133,13 +133,13 @@ fn invalid_blinded_route_error() {
|
|||
|
||||
// 0 hops
|
||||
let secp_ctx = Secp256k1::new();
|
||||
let mut blinded_route = BlindedRoute::new::<EnforcingSigner, _, _>(&[nodes[1].get_node_pk(), nodes[2].get_node_pk()], &*nodes[2].keys_manager, &secp_ctx).unwrap();
|
||||
let mut blinded_route = BlindedRoute::new(&[nodes[1].get_node_pk(), nodes[2].get_node_pk()], &*nodes[2].keys_manager, &secp_ctx).unwrap();
|
||||
blinded_route.blinded_hops.clear();
|
||||
let err = nodes[0].messenger.send_onion_message(&[], Destination::BlindedRoute(blinded_route), None).unwrap_err();
|
||||
assert_eq!(err, SendError::TooFewBlindedHops);
|
||||
|
||||
// 1 hop
|
||||
let mut blinded_route = BlindedRoute::new::<EnforcingSigner, _, _>(&[nodes[1].get_node_pk(), nodes[2].get_node_pk()], &*nodes[2].keys_manager, &secp_ctx).unwrap();
|
||||
let mut blinded_route = BlindedRoute::new(&[nodes[1].get_node_pk(), nodes[2].get_node_pk()], &*nodes[2].keys_manager, &secp_ctx).unwrap();
|
||||
blinded_route.blinded_hops.remove(0);
|
||||
assert_eq!(blinded_route.blinded_hops.len(), 1);
|
||||
let err = nodes[0].messenger.send_onion_message(&[], Destination::BlindedRoute(blinded_route), None).unwrap_err();
|
||||
|
@ -152,7 +152,7 @@ fn reply_path() {
|
|||
let secp_ctx = Secp256k1::new();
|
||||
|
||||
// Destination::Node
|
||||
let reply_path = BlindedRoute::new::<EnforcingSigner, _, _>(&[nodes[2].get_node_pk(), nodes[1].get_node_pk(), nodes[0].get_node_pk()], &*nodes[0].keys_manager, &secp_ctx).unwrap();
|
||||
let reply_path = BlindedRoute::new(&[nodes[2].get_node_pk(), nodes[1].get_node_pk(), nodes[0].get_node_pk()], &*nodes[0].keys_manager, &secp_ctx).unwrap();
|
||||
nodes[0].messenger.send_onion_message(&[nodes[1].get_node_pk(), nodes[2].get_node_pk()], Destination::Node(nodes[3].get_node_pk()), Some(reply_path)).unwrap();
|
||||
pass_along_path(&nodes, None);
|
||||
// Make sure the last node successfully decoded the reply path.
|
||||
|
@ -161,8 +161,8 @@ fn reply_path() {
|
|||
format!("Received an onion message with path_id: None and reply_path").to_string(), 1);
|
||||
|
||||
// Destination::BlindedRoute
|
||||
let blinded_route = BlindedRoute::new::<EnforcingSigner, _, _>(&[nodes[1].get_node_pk(), nodes[2].get_node_pk(), nodes[3].get_node_pk()], &*nodes[3].keys_manager, &secp_ctx).unwrap();
|
||||
let reply_path = BlindedRoute::new::<EnforcingSigner, _, _>(&[nodes[2].get_node_pk(), nodes[1].get_node_pk(), nodes[0].get_node_pk()], &*nodes[0].keys_manager, &secp_ctx).unwrap();
|
||||
let blinded_route = BlindedRoute::new(&[nodes[1].get_node_pk(), nodes[2].get_node_pk(), nodes[3].get_node_pk()], &*nodes[3].keys_manager, &secp_ctx).unwrap();
|
||||
let reply_path = BlindedRoute::new(&[nodes[2].get_node_pk(), nodes[1].get_node_pk(), nodes[0].get_node_pk()], &*nodes[0].keys_manager, &secp_ctx).unwrap();
|
||||
|
||||
nodes[0].messenger.send_onion_message(&[], Destination::BlindedRoute(blinded_route), Some(reply_path)).unwrap();
|
||||
pass_along_path(&nodes, None);
|
||||
|
|
|
@ -71,7 +71,7 @@ use prelude::*;
|
|||
/// // Create a blinded route to yourself, for someone to send an onion message to.
|
||||
/// # let your_node_id = hop_node_id1;
|
||||
/// let hops = [hop_node_id3, hop_node_id4, your_node_id];
|
||||
/// let blinded_route = BlindedRoute::new::<InMemorySigner, _, _>(&hops, &keys_manager, &secp_ctx).unwrap();
|
||||
/// let blinded_route = BlindedRoute::new(&hops, &keys_manager, &secp_ctx).unwrap();
|
||||
///
|
||||
/// // Send an empty onion message to a blinded route.
|
||||
/// # let intermediate_hops = [hop_node_id1, hop_node_id2];
|
||||
|
|
Loading…
Add table
Reference in a new issue