@@ -2,28 +2,29 @@ use crate::disk::{self, INBOUND_PAYMENTS_FNAME, OUTBOUND_PAYMENTS_FNAME};
22use crate :: hex_utils;
33use crate :: {
44 ChannelManager , HTLCStatus , InboundPaymentInfoStorage , MillisatAmount , NetworkGraph ,
5- OnionMessenger , OutboundPaymentInfoStorage , PaymentInfo , PeerManager ,
5+ OutboundPaymentInfoStorage , PaymentInfo , PeerManager ,
66} ;
77use bitcoin:: hashes:: sha256:: Hash as Sha256 ;
88use bitcoin:: hashes:: Hash ;
9- use bitcoin:: network:: constants :: Network ;
9+ use bitcoin:: network:: Network ;
1010use bitcoin:: secp256k1:: PublicKey ;
11+ use lightning:: ln:: bolt11_payment:: payment_parameters_from_invoice;
12+ use lightning:: ln:: bolt11_payment:: payment_parameters_from_zero_amount_invoice;
1113use lightning:: ln:: channelmanager:: { PaymentId , RecipientOnionFields , Retry } ;
14+ use lightning:: ln:: invoice_utils as utils;
1215use lightning:: ln:: msgs:: SocketAddress ;
13- use lightning:: ln:: { ChannelId , PaymentHash , PaymentPreimage } ;
16+ use lightning:: ln:: types :: ChannelId ;
1417use lightning:: offers:: offer:: { self , Offer } ;
1518use lightning:: routing:: gossip:: NodeId ;
1619use lightning:: routing:: router:: { PaymentParameters , RouteParameters } ;
1720use lightning:: sign:: { EntropySource , KeysManager } ;
21+ use lightning:: types:: payment:: { PaymentHash , PaymentPreimage } ;
1822use lightning:: util:: config:: { ChannelHandshakeConfig , ChannelHandshakeLimits , UserConfig } ;
1923use lightning:: util:: persist:: KVStore ;
20- use lightning:: util:: ser:: { Writeable , Writer } ;
21- use lightning_invoice:: payment:: payment_parameters_from_invoice;
22- use lightning_invoice:: payment:: payment_parameters_from_zero_amount_invoice;
23- use lightning_invoice:: { utils, Bolt11Invoice , Currency } ;
24+ use lightning:: util:: ser:: Writeable ;
25+ use lightning_invoice:: { Bolt11Invoice , Currency } ;
2426use lightning_persister:: fs_store:: FilesystemStore ;
2527use std:: env;
26- use std:: io;
2728use std:: io:: Write ;
2829use std:: net:: { SocketAddr , ToSocketAddrs } ;
2930use std:: path:: Path ;
@@ -46,7 +47,7 @@ pub(crate) struct LdkUserInfo {
4647pub ( crate ) fn poll_for_user_input (
4748 peer_manager : Arc < PeerManager > , channel_manager : Arc < ChannelManager > ,
4849 keys_manager : Arc < KeysManager > , network_graph : Arc < NetworkGraph > ,
49- onion_messenger : Arc < OnionMessenger > , inbound_payments : Arc < Mutex < InboundPaymentInfoStorage > > ,
50+ inbound_payments : Arc < Mutex < InboundPaymentInfoStorage > > ,
5051 outbound_payments : Arc < Mutex < OutboundPaymentInfoStorage > > , ldk_data_dir : String ,
5152 network : Network , logger : Arc < disk:: FilesystemLogger > , fs_store : Arc < FilesystemStore > ,
5253) {
@@ -57,9 +58,9 @@ pub(crate) fn poll_for_user_input(
5758 println ! ( "Local Node ID is {}." , channel_manager. get_our_node_id( ) ) ;
5859 ' read_command: loop {
5960 print ! ( "> " ) ;
60- io:: stdout ( ) . flush ( ) . unwrap ( ) ; // Without flushing, the `>` doesn't print
61+ std :: io:: stdout ( ) . flush ( ) . unwrap ( ) ; // Without flushing, the `>` doesn't print
6162 let mut line = String :: new ( ) ;
62- if let Err ( e) = io:: stdin ( ) . read_line ( & mut line) {
63+ if let Err ( e) = std :: io:: stdin ( ) . read_line ( & mut line) {
6364 break println ! ( "ERROR: {}" , e) ;
6465 }
6566
@@ -159,7 +160,7 @@ pub(crate) fn poll_for_user_input(
159160 let payment_id = PaymentId ( random_bytes) ;
160161
161162 let amt_msat = match ( offer. amount ( ) , user_provided_amt) {
162- ( Some ( offer:: Amount :: Bitcoin { amount_msats } ) , _) => * amount_msats,
163+ ( Some ( offer:: Amount :: Bitcoin { amount_msats } ) , _) => amount_msats,
163164 ( _, Some ( amt) ) => amt,
164165 ( amt, _) => {
165166 println ! ( "ERROR: Cannot process non-Bitcoin-denominated offer value {:?}" , amt) ;
@@ -173,9 +174,9 @@ pub(crate) fn poll_for_user_input(
173174
174175 while user_provided_amt. is_none ( ) {
175176 print ! ( "Paying offer for {} msat. Continue (Y/N)? >" , amt_msat) ;
176- io:: stdout ( ) . flush ( ) . unwrap ( ) ;
177+ std :: io:: stdout ( ) . flush ( ) . unwrap ( ) ;
177178
178- if let Err ( e) = io:: stdin ( ) . read_line ( & mut line) {
179+ if let Err ( e) = std :: io:: stdin ( ) . read_line ( & mut line) {
179180 println ! ( "ERROR: {}" , e) ;
180181 break ' read_command;
181182 }
@@ -266,7 +267,7 @@ pub(crate) fn poll_for_user_input(
266267 ) ;
267268 } ,
268269 "getoffer" => {
269- let offer_builder = channel_manager. create_offer_builder ( ) ;
270+ let offer_builder = channel_manager. create_offer_builder ( None ) ;
270271 if let Err ( e) = offer_builder {
271272 println ! ( "ERROR: Failed to initiate offer building: {:?}" , e) ;
272273 continue ;
@@ -554,7 +555,7 @@ fn list_channels(channel_manager: &Arc<ChannelManager>, network_graph: &Arc<Netw
554555 . get ( & NodeId :: from_pubkey ( & chan_info. counterparty . node_id ) )
555556 {
556557 if let Some ( announcement) = & node_info. announcement_info {
557- println ! ( "\t \t peer_alias: {}" , announcement. alias) ;
558+ println ! ( "\t \t peer_alias: {}" , announcement. alias( ) ) ;
558559 }
559560 }
560561
@@ -569,7 +570,7 @@ fn list_channels(channel_manager: &Arc<ChannelManager>, network_graph: &Arc<Netw
569570 println ! ( "\t \t available_balance_for_recv_msat: {}," , chan_info. inbound_capacity_msat) ;
570571 }
571572 println ! ( "\t \t channel_can_send_payments: {}," , chan_info. is_usable) ;
572- println ! ( "\t \t public: {}," , chan_info. is_public ) ;
573+ println ! ( "\t \t public: {}," , chan_info. is_announced ) ;
573574 println ! ( "\t }}," ) ;
574575 }
575576 println ! ( "]" ) ;
@@ -676,8 +677,8 @@ fn do_disconnect_peer(
676677}
677678
678679fn open_channel (
679- peer_pubkey : PublicKey , channel_amt_sat : u64 , announced_channel : bool , with_anchors : bool ,
680- channel_manager : Arc < ChannelManager > ,
680+ peer_pubkey : PublicKey , channel_amt_sat : u64 , announce_for_forwarding : bool ,
681+ with_anchors : bool , channel_manager : Arc < ChannelManager > ,
681682) -> Result < ( ) , ( ) > {
682683 let config = UserConfig {
683684 channel_handshake_limits : ChannelHandshakeLimits {
@@ -686,7 +687,7 @@ fn open_channel(
686687 ..Default :: default ( )
687688 } ,
688689 channel_handshake_config : ChannelHandshakeConfig {
689- announced_channel ,
690+ announce_for_forwarding ,
690691 negotiate_anchors_zero_fee_htlc_tx : with_anchors,
691692 ..Default :: default ( )
692693 } ,
@@ -870,9 +871,11 @@ fn close_channel(
870871fn force_close_channel (
871872 channel_id : [ u8 ; 32 ] , counterparty_node_id : PublicKey , channel_manager : Arc < ChannelManager > ,
872873) {
873- match channel_manager
874- . force_close_broadcasting_latest_txn ( & ChannelId ( channel_id) , & counterparty_node_id)
875- {
874+ match channel_manager. force_close_broadcasting_latest_txn (
875+ & ChannelId ( channel_id) ,
876+ & counterparty_node_id,
877+ "Manually force-closed" . to_string ( ) ,
878+ ) {
876879 Ok ( ( ) ) => println ! ( "EVENT: initiating channel force-close" ) ,
877880 Err ( e) => println ! ( "ERROR: failed to force-close channel: {:?}" , e) ,
878881 }
0 commit comments