11use crate :: disk:: { self , INBOUND_PAYMENTS_FNAME , OUTBOUND_PAYMENTS_FNAME } ;
22use crate :: hex_utils;
33use crate :: {
4- ChannelManager , HTLCStatus , MillisatAmount , NetworkGraph , OnionMessenger , PaymentInfo ,
5- PaymentInfoStorage , PeerManager ,
4+ ChannelManager , HTLCStatus , InboundPaymentInfoStorage , MillisatAmount , NetworkGraph ,
5+ OnionMessenger , OutboundPaymentInfoStorage , PaymentInfo , PeerManager ,
66} ;
77use bitcoin:: hashes:: sha256:: Hash as Sha256 ;
88use bitcoin:: hashes:: Hash ;
@@ -12,7 +12,7 @@ use lightning::ln::channelmanager::{PaymentId, RecipientOnionFields, Retry};
1212use lightning:: ln:: msgs:: SocketAddress ;
1313use lightning:: ln:: { ChannelId , PaymentHash , PaymentPreimage } ;
1414use lightning:: onion_message:: OnionMessagePath ;
15- use lightning:: onion_message:: { CustomOnionMessageContents , Destination , OnionMessageContents } ;
15+ use lightning:: onion_message:: { Destination , OnionMessageContents } ;
1616use lightning:: routing:: gossip:: NodeId ;
1717use lightning:: routing:: router:: { PaymentParameters , RouteParameters } ;
1818use lightning:: sign:: { EntropySource , KeysManager } ;
@@ -48,7 +48,7 @@ struct UserOnionMessageContents {
4848 data : Vec < u8 > ,
4949}
5050
51- impl CustomOnionMessageContents for UserOnionMessageContents {
51+ impl OnionMessageContents for UserOnionMessageContents {
5252 fn tlv_type ( & self ) -> u64 {
5353 self . tlv_type
5454 }
@@ -63,9 +63,9 @@ impl Writeable for UserOnionMessageContents {
6363pub ( crate ) fn poll_for_user_input (
6464 peer_manager : Arc < PeerManager > , channel_manager : Arc < ChannelManager > ,
6565 keys_manager : Arc < KeysManager > , network_graph : Arc < NetworkGraph > ,
66- onion_messenger : Arc < OnionMessenger > , inbound_payments : Arc < Mutex < PaymentInfoStorage > > ,
67- outbound_payments : Arc < Mutex < PaymentInfoStorage > > , ldk_data_dir : String , network : Network ,
68- logger : Arc < disk:: FilesystemLogger > , fs_store : Arc < FilesystemStore > ,
66+ onion_messenger : Arc < OnionMessenger > , inbound_payments : Arc < Mutex < InboundPaymentInfoStorage > > ,
67+ outbound_payments : Arc < Mutex < OutboundPaymentInfoStorage > > , ldk_data_dir : String ,
68+ network : Network , logger : Arc < disk:: FilesystemLogger > , fs_store : Arc < FilesystemStore > ,
6969) {
7070 println ! (
7171 "LDK startup successful. Enter \" help\" to view available commands. Press Ctrl-D to quit."
@@ -445,7 +445,7 @@ pub(crate) fn poll_for_user_input(
445445 let message_path = OnionMessagePath { intermediate_nodes, destination } ;
446446 match onion_messenger. send_onion_message (
447447 message_path,
448- OnionMessageContents :: Custom ( UserOnionMessageContents { tlv_type, data } ) ,
448+ UserOnionMessageContents { tlv_type, data } ,
449449 None ,
450450 ) {
451451 Ok ( ( ) ) => println ! ( "SUCCESS: forwarded onion message to first hop" ) ,
@@ -553,7 +553,9 @@ fn list_channels(channel_manager: &Arc<ChannelManager>, network_graph: &Arc<Netw
553553 println ! ( "]" ) ;
554554}
555555
556- fn list_payments ( inbound_payments : & PaymentInfoStorage , outbound_payments : & PaymentInfoStorage ) {
556+ fn list_payments (
557+ inbound_payments : & InboundPaymentInfoStorage , outbound_payments : & OutboundPaymentInfoStorage ,
558+ ) {
557559 print ! ( "[" ) ;
558560 for ( payment_hash, payment_info) in & inbound_payments. payments {
559561 println ! ( "" ) ;
@@ -684,12 +686,12 @@ fn open_channel(
684686
685687fn send_payment (
686688 channel_manager : & ChannelManager , invoice : & Bolt11Invoice ,
687- outbound_payments : & mut PaymentInfoStorage , fs_store : Arc < FilesystemStore > ,
689+ outbound_payments : & mut OutboundPaymentInfoStorage , fs_store : Arc < FilesystemStore > ,
688690) {
689- let payment_hash = PaymentHash ( ( * invoice. payment_hash ( ) ) . into_inner ( ) ) ;
691+ let payment_id = PaymentId ( ( * invoice. payment_hash ( ) ) . into_inner ( ) ) ;
690692 let payment_secret = Some ( * invoice. payment_secret ( ) ) ;
691693 outbound_payments. payments . insert (
692- payment_hash ,
694+ payment_id ,
693695 PaymentInfo {
694696 preimage : None ,
695697 secret : payment_secret,
@@ -708,25 +710,25 @@ fn send_payment(
708710 Err ( e) => {
709711 println ! ( "ERROR: failed to send payment: {:?}" , e) ;
710712 print ! ( "> " ) ;
711- outbound_payments. payments . get_mut ( & payment_hash ) . unwrap ( ) . status = HTLCStatus :: Failed ;
713+ outbound_payments. payments . get_mut ( & payment_id ) . unwrap ( ) . status = HTLCStatus :: Failed ;
712714 fs_store. write ( "" , "" , OUTBOUND_PAYMENTS_FNAME , & outbound_payments. encode ( ) ) . unwrap ( ) ;
713715 }
714716 } ;
715717}
716718
717719fn keysend < E : EntropySource > (
718720 channel_manager : & ChannelManager , payee_pubkey : PublicKey , amt_msat : u64 , entropy_source : & E ,
719- outbound_payments : & mut PaymentInfoStorage , fs_store : Arc < FilesystemStore > ,
721+ outbound_payments : & mut OutboundPaymentInfoStorage , fs_store : Arc < FilesystemStore > ,
720722) {
721723 let payment_preimage = PaymentPreimage ( entropy_source. get_secure_random_bytes ( ) ) ;
722- let payment_hash = PaymentHash ( Sha256 :: hash ( & payment_preimage. 0 [ ..] ) . into_inner ( ) ) ;
724+ let payment_id = PaymentId ( Sha256 :: hash ( & payment_preimage. 0 [ ..] ) . into_inner ( ) ) ;
723725
724726 let route_params = RouteParameters :: from_payment_params_and_value (
725727 PaymentParameters :: for_keysend ( payee_pubkey, 40 , false ) ,
726728 amt_msat,
727729 ) ;
728730 outbound_payments. payments . insert (
729- payment_hash ,
731+ payment_id ,
730732 PaymentInfo {
731733 preimage : None ,
732734 secret : None ,
@@ -738,7 +740,7 @@ fn keysend<E: EntropySource>(
738740 match channel_manager. send_spontaneous_payment_with_retry (
739741 Some ( payment_preimage) ,
740742 RecipientOnionFields :: spontaneous_empty ( ) ,
741- PaymentId ( payment_hash . 0 ) ,
743+ payment_id ,
742744 route_params,
743745 Retry :: Timeout ( Duration :: from_secs ( 10 ) ) ,
744746 ) {
@@ -749,16 +751,16 @@ fn keysend<E: EntropySource>(
749751 Err ( e) => {
750752 println ! ( "ERROR: failed to send payment: {:?}" , e) ;
751753 print ! ( "> " ) ;
752- outbound_payments. payments . get_mut ( & payment_hash ) . unwrap ( ) . status = HTLCStatus :: Failed ;
754+ outbound_payments. payments . get_mut ( & payment_id ) . unwrap ( ) . status = HTLCStatus :: Failed ;
753755 fs_store. write ( "" , "" , OUTBOUND_PAYMENTS_FNAME , & outbound_payments. encode ( ) ) . unwrap ( ) ;
754756 }
755757 } ;
756758}
757759
758760fn get_invoice (
759- amt_msat : u64 , inbound_payments : & mut PaymentInfoStorage , channel_manager : & ChannelManager ,
760- keys_manager : Arc < KeysManager > , network : Network , expiry_secs : u32 ,
761- logger : Arc < disk:: FilesystemLogger > ,
761+ amt_msat : u64 , inbound_payments : & mut InboundPaymentInfoStorage ,
762+ channel_manager : & ChannelManager , keys_manager : Arc < KeysManager > , network : Network ,
763+ expiry_secs : u32 , logger : Arc < disk:: FilesystemLogger > ,
762764) {
763765 let currency = match network {
764766 Network :: Bitcoin => Currency :: Bitcoin ,
0 commit comments