Skip to content

Commit a1d4c53

Browse files
committed
Require at least 1k sat for outbound channels and meet BTC's dust
1 parent 2c65a1f commit a1d4c53

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

src/ln/channel.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -400,7 +400,7 @@ impl Channel {
400400
}
401401

402402
fn derive_our_dust_limit_satoshis(at_open_background_feerate: u64) -> u64 {
403-
at_open_background_feerate * B_OUTPUT_PLUS_SPENDING_INPUT_WEIGHT / 1000 //TODO
403+
cmp::max(at_open_background_feerate * B_OUTPUT_PLUS_SPENDING_INPUT_WEIGHT / 1000, 546) //TODO
404404
}
405405

406406
fn derive_our_htlc_minimum_msat(_at_open_channel_feerate_per_kw: u64) -> u64 {

src/ln/channelmanager.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -463,8 +463,13 @@ impl ChannelManager {
463463
/// If successful, will generate a SendOpenChannel message event, so you should probably poll
464464
/// PeerManager::process_events afterwards.
465465
///
466-
/// Raises APIError::APIMisuseError when channel_value_satoshis > 2**24 or push_msat being greater than channel_value_satoshis * 1k
466+
/// Raises APIError::APIMisuseError when channel_value_satoshis > 2**24 or push_msat is
467+
/// greater than channel_value_satoshis * 1k or channel_value_satoshis is < 1000.
467468
pub fn create_channel(&self, their_network_key: PublicKey, channel_value_satoshis: u64, push_msat: u64, user_id: u64) -> Result<(), APIError> {
469+
if channel_value_satoshis < 1000 {
470+
return Err(APIError::APIMisuseError { err: "channel_value must be at least 1000 satoshis" });
471+
}
472+
468473
let channel = Channel::new_outbound(&*self.fee_estimator, &self.keys_manager, their_network_key, channel_value_satoshis, push_msat, self.announce_channels_publicly, user_id, Arc::clone(&self.logger))?;
469474
let res = channel.get_open_channel(self.genesis_hash.clone(), &*self.fee_estimator);
470475

0 commit comments

Comments
 (0)