@@ -28,7 +28,7 @@ use crate::ln::msgs::{DecodeError, ErrorAction, Init, LightningError, RoutingMes
28
28
use crate :: ln:: msgs:: { ChannelAnnouncement , ChannelUpdate , NodeAnnouncement , GossipTimestampFilter } ;
29
29
use crate :: ln:: msgs:: { QueryChannelRange , ReplyChannelRange , QueryShortChannelIds , ReplyShortChannelIdsEnd } ;
30
30
use crate :: ln:: msgs;
31
- use crate :: routing:: utxo:: { self , UtxoLookup } ;
31
+ use crate :: routing:: utxo:: { self , UtxoLookup , UtxoResolver } ;
32
32
use crate :: util:: ser:: { Readable , ReadableArgs , Writeable , Writer , MaybeReadable } ;
33
33
use crate :: util:: logger:: { Logger , Level } ;
34
34
use crate :: util:: scid_utils:: { block_from_scid, scid_from_parts, MAX_SCID_BLOCK } ;
@@ -43,7 +43,7 @@ use core::convert::TryFrom;
43
43
use crate :: sync:: { RwLock , RwLockReadGuard } ;
44
44
#[ cfg( feature = "std" ) ]
45
45
use core:: sync:: atomic:: { AtomicUsize , Ordering } ;
46
- use crate :: sync:: Mutex ;
46
+ use crate :: sync:: { Arc , Mutex } ;
47
47
use core:: ops:: { Bound , Deref } ;
48
48
use core:: str:: FromStr ;
49
49
@@ -1458,6 +1458,19 @@ impl<L: Deref> NetworkGraph<L> where L::Target: Logger {
1458
1458
self . update_channel_from_unsigned_announcement_intern ( & msg. contents , Some ( msg) , utxo_lookup)
1459
1459
}
1460
1460
1461
+ /// Store or update channel info from a channel announcement.
1462
+ ///
1463
+ /// You probably don't want to call this directly, instead relying on a P2PGossipSync's
1464
+ /// RoutingMessageHandler implementation to call it indirectly. This may be useful to accept
1465
+ /// routing messages from a source using a protocol other than the lightning P2P protocol.
1466
+ ///
1467
+ /// This will skip verification of if the channel is actually on-chain.
1468
+ pub fn update_channel_from_announcement_no_lookup (
1469
+ & self , msg : & ChannelAnnouncement
1470
+ ) -> Result < ( ) , LightningError > {
1471
+ self . update_channel_from_announcement :: < Arc < UtxoResolver > > ( msg, & None )
1472
+ }
1473
+
1461
1474
/// Store or update channel info from a channel announcement without verifying the associated
1462
1475
/// signatures. Because we aren't given the associated signatures here we cannot relay the
1463
1476
/// channel announcement to any of our peers.
0 commit comments