Skip to content

Commit 1e1e84a

Browse files
committed
Derive minimum relay fee from byte fee.
1 parent 0ab2384 commit 1e1e84a

3 files changed

Lines changed: 8 additions & 9 deletions

File tree

data/bn.cfg

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -156,8 +156,6 @@ sync_timeout_seconds = 5
156156
block_poll_seconds = 1
157157
# The minimum fee per byte required for transaction acceptance, defaults to 1.
158158
minimum_byte_fee_satoshis = 1
159-
# The minimum fee required for transaction relay from peers, defaults to 1.
160-
minimum_relay_fee_satoshis = 1
161159
# Request that peers relay transactions, defaults to true.
162160
relay_transactions = true
163161
# Request transactions on each channel start, defaults to true.

src/parser.cpp

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -406,12 +406,6 @@ options_metadata parser::load_settings()
406406
value<float>(&configured.chain.minimum_byte_fee_satoshis),
407407
"The minimum fee per byte required for transaction acceptance, defaults to 1."
408408
)
409-
(
410-
/* Internally this is blockchain, but it is conceptually a node setting.*/
411-
"node.minimum_relay_fee_satoshis",
412-
value<uint64_t>(&configured.chain.minimum_relay_fee_satoshis),
413-
"The minimum fee required for transaction relay from peers, defaults to 1."
414-
)
415409
////(
416410
//// /* Internally this blockchain, but it is conceptually a node setting.*/
417411
//// "node.reject_conflicts",

src/protocols/protocol_transaction_in.cpp

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,13 @@ using namespace bc::message;
3838
using namespace bc::network;
3939
using namespace std::placeholders;
4040

41+
uint64_t to_relay_fee(float minimum_byte_fee)
42+
{
43+
// Spending one standard prevout with one output is nominally 189 bytes.
44+
static const size_t small_transaction_size = 189;
45+
return static_cast<uint64_t>(minimum_byte_fee * small_transaction_size);
46+
}
47+
4148
protocol_transaction_in::protocol_transaction_in(full_node& node,
4249
channel::ptr channel, safe_chain& chain)
4350
: protocol_events(node, channel, NAME),
@@ -52,7 +59,7 @@ protocol_transaction_in::protocol_transaction_in(full_node& node,
5259

5360
// TODO: move fee_filter to a derived class protocol_transaction_in_70013.
5461
minimum_relay_fee_(negotiated_version() >= version::level::bip133 ?
55-
node.chain_settings().minimum_relay_fee_satoshis : 0),
62+
to_relay_fee(node.chain_settings().minimum_byte_fee_satoshis) : 0),
5663
CONSTRUCT_TRACK(protocol_transaction_in)
5764
{
5865
}

0 commit comments

Comments
 (0)