X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=src%2Futil%2Fconfig.rs;h=f3b574b93fba6c40389761994cb92cddb1b3480a;hb=80aa4f20a977d61d328a5dd9294f02cc82592a6c;hp=a3abdbedeecc9e88174899b05b76330dda22ce22;hpb=f5a572926f03ebde71ab8da04405a82a50779cd4;p=rust-lightning diff --git a/src/util/config.rs b/src/util/config.rs index a3abdbed..f3b574b9 100644 --- a/src/util/config.rs +++ b/src/util/config.rs @@ -4,8 +4,10 @@ /// Top-level config which holds ChannelHandshakeLimits and ChannelConfig. #[derive(Clone, Debug)] pub struct UserConfig { - /// Limits applied during channel creation. - pub channel_limits: ChannelHandshakeLimits, + /// Channel config that we propose to our counterparty. + pub own_channel_config: ChannelHandshakeConfig, + /// Limits applied to our counterparty's proposed channel config settings. + pub peer_channel_config_limits: ChannelHandshakeLimits, /// Channel config which affects behavior during channel lifetime. pub channel_options: ChannelConfig, } @@ -14,12 +16,31 @@ impl UserConfig { /// Provides sane defaults for most configurations (but with 0 relay fees!) pub fn new() -> Self{ UserConfig { - channel_limits: ChannelHandshakeLimits::new(), + own_channel_config: ChannelHandshakeConfig::new(), + peer_channel_config_limits: ChannelHandshakeLimits::new(), channel_options: ChannelConfig::new(), } } } +/// Configuration we set when applicable. +#[derive(Clone, Debug)] +pub struct ChannelHandshakeConfig { + /// Confirmations we will wait for before considering the channel locked in. + /// Applied only for inbound channels (see ChannelHandshakeLimits::max_minimum_depth for the + /// equivalent limit applied to outbound channels). + pub minimum_depth: u32, +} + +impl ChannelHandshakeConfig { + /// Provides sane defaults for `ChannelHandshakeConfig` + pub fn new() -> ChannelHandshakeConfig { + ChannelHandshakeConfig { + minimum_depth: 6, + } + } +} + /// Optional channel limits which are applied during channel creation. /// /// These limits are only applied to our counterparty's limits, not our own.