Skip to content

Commit 027835a

Browse files
committed
Add and parse electrum advertise_binds/safes.
1 parent 0c2d3ce commit 027835a

3 files changed

Lines changed: 17 additions & 1 deletion

File tree

include/bitcoin/server/settings.hpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,14 +97,18 @@ class BCS_API settings
9797
/// Maximum cumulative number of address subscriptions per channel.
9898
uint32_t maximum_subscriptions{ 1'000'000 };
9999

100-
/// Arbitrary server name returned by server.version.
100+
/// Arbitrary name returned by server.version and server.features.
101101
std::string server_name{ BC_USER_AGENT };
102102

103103
/// Arbitrary string returned by server.donation_address.
104104
std::string donation_address{};
105105

106106
/// Arbitrary string returned by server.banner.
107107
std::string banner_message{};
108+
109+
/// Advertised as self via server.features (limit one each per host).
110+
network::config::endpoints advertise_binds{};
111+
network::config::endpoints advertise_safes{};
108112
};
109113

110114
/// html (http/s) document server settings (has directory/default).

src/parser.cpp

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1154,6 +1154,16 @@ options_metadata parser::load_settings() THROWS
11541154
value<std::string>(&configured.server.electrum.banner_message),
11551155
"String returned by server.banner, defaults to empty."
11561156
)
1157+
(
1158+
"electrum.advertise_bind",
1159+
value<network::config::endpoints>(&configured.server.electrum.advertise_binds),
1160+
"Advertised host:port at which this server can be reached (defaults to empty)."
1161+
)
1162+
(
1163+
"electrum.advertise_safe",
1164+
value<network::config::endpoints>(&configured.server.electrum.advertise_safes),
1165+
"Advertised secure host:port at which this server can be reached (defaults to empty)."
1166+
)
11571167

11581168
/* [stratum_v1] */
11591169
(

test/settings.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -237,6 +237,8 @@ BOOST_AUTO_TEST_CASE(server__electrum_server__defaults__expected)
237237
BOOST_REQUIRE_EQUAL(server.server_name, BC_USER_AGENT);
238238
BOOST_REQUIRE(server.donation_address.empty());
239239
BOOST_REQUIRE(server.banner_message.empty());
240+
BOOST_REQUIRE(server.advertise_binds.empty());
241+
BOOST_REQUIRE(server.advertise_safes.empty());
240242
}
241243

242244
BOOST_AUTO_TEST_CASE(server__stratum_v1_server__defaults__expected)

0 commit comments

Comments
 (0)