Make commitment transaction signing a part of ChannelKeys.
[rust-lightning] / lightning / src / ln / mod.rs
1 //! High level lightning structs and impls live here.
2 //!
3 //! You probably want to create a channelmanager::ChannelManager, and a router::Router first.
4 //! Then, you probably want to pass them both on to a peer_handler::PeerManager and use that to
5 //! create/manage connections and call get_and_clear_pending_events after each action, handling
6 //! them appropriately.
7 //!
8 //! When you want to open/close a channel or send a payment, call into your ChannelManager and when
9 //! you want to learn things about the network topology (eg get a route for sending a payment),
10 //! call into your Router.
11
12 pub mod channelmanager;
13 pub mod channelmonitor;
14 pub mod msgs;
15 pub mod router;
16 pub mod peer_handler;
17 pub mod chan_utils;
18
19 #[cfg(feature = "fuzztarget")]
20 pub mod peer_channel_encryptor;
21 #[cfg(not(feature = "fuzztarget"))]
22 pub(crate) mod peer_channel_encryptor;
23
24 mod channel;
25 mod onion_utils;
26
27 #[cfg(test)]
28 #[macro_use] mod functional_test_utils;
29 #[cfg(test)]
30 mod functional_tests;
31 #[cfg(test)]
32 mod chanmon_update_fail_tests;