Skip to content

Commit 665d799

Browse files
authored
Merge pull request #1701 from evoskuil/master
Move authority and endpoint config classes from network.
2 parents 1aff1f7 + a560ae3 commit 665d799

File tree

19 files changed

+2192
-2
lines changed

19 files changed

+2192
-2
lines changed

Makefile.am

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,13 +59,15 @@ src_libbitcoin_system_la_SOURCES = \
5959
src/chain/witness.cpp \
6060
src/chain/witness_extract.cpp \
6161
src/chain/enums/opcode.cpp \
62+
src/config/authority.cpp \
6263
src/config/base16.cpp \
6364
src/config/base2.cpp \
6465
src/config/base32.cpp \
6566
src/config/base58.cpp \
6667
src/config/base64.cpp \
6768
src/config/base85.cpp \
6869
src/config/block.cpp \
70+
src/config/endpoint.cpp \
6971
src/config/hash160.cpp \
7072
src/config/hash256.cpp \
7173
src/config/header.cpp \
@@ -77,6 +79,7 @@ src_libbitcoin_system_la_SOURCES = \
7779
src/config/printer.cpp \
7880
src/config/script.cpp \
7981
src/config/transaction.cpp \
82+
src/config/utilities.cpp \
8083
src/crypto/aes256.cpp \
8184
src/crypto/der_parser.cpp \
8285
src/crypto/ec_context.cpp \
@@ -241,16 +244,19 @@ test_libbitcoin_system_test_SOURCES = \
241244
test/chain/transaction.cpp \
242245
test/chain/witness.cpp \
243246
test/chain/enums/opcode.cpp \
247+
test/config/authority.cpp \
244248
test/config/base16.cpp \
245249
test/config/base2.cpp \
246250
test/config/base32.cpp \
247251
test/config/base58.cpp \
248252
test/config/base64.cpp \
249253
test/config/base85.cpp \
250254
test/config/block.cpp \
255+
test/config/endpoint.cpp \
251256
test/config/hash256.cpp \
252257
test/config/parameter.cpp \
253258
test/config/printer.cpp \
259+
test/config/utilities.cpp \
254260
test/crypto/aes256.cpp \
255261
test/crypto/elliptic_curve.cpp \
256262
test/crypto/pseudo_random.cpp \
@@ -497,6 +503,7 @@ include_bitcoin_system_chain_enums_HEADERS = \
497503

498504
include_bitcoin_system_configdir = ${includedir}/bitcoin/system/config
499505
include_bitcoin_system_config_HEADERS = \
506+
include/bitcoin/system/config/authority.hpp \
500507
include/bitcoin/system/config/base16.hpp \
501508
include/bitcoin/system/config/base2.hpp \
502509
include/bitcoin/system/config/base32.hpp \
@@ -505,6 +512,7 @@ include_bitcoin_system_config_HEADERS = \
505512
include/bitcoin/system/config/base85.hpp \
506513
include/bitcoin/system/config/block.hpp \
507514
include/bitcoin/system/config/config.hpp \
515+
include/bitcoin/system/config/endpoint.hpp \
508516
include/bitcoin/system/config/hash160.hpp \
509517
include/bitcoin/system/config/hash256.hpp \
510518
include/bitcoin/system/config/header.hpp \
@@ -515,7 +523,8 @@ include_bitcoin_system_config_HEADERS = \
515523
include/bitcoin/system/config/point.hpp \
516524
include/bitcoin/system/config/printer.hpp \
517525
include/bitcoin/system/config/script.hpp \
518-
include/bitcoin/system/config/transaction.hpp
526+
include/bitcoin/system/config/transaction.hpp \
527+
include/bitcoin/system/config/utilities.hpp
519528

520529
include_bitcoin_system_cryptodir = ${includedir}/bitcoin/system/crypto
521530
include_bitcoin_system_crypto_HEADERS = \

builds/cmake/CMakeLists.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -489,13 +489,15 @@ add_library( ${CANONICAL_LIB_NAME}
489489
"../../src/chain/witness.cpp"
490490
"../../src/chain/witness_extract.cpp"
491491
"../../src/chain/enums/opcode.cpp"
492+
"../../src/config/authority.cpp"
492493
"../../src/config/base16.cpp"
493494
"../../src/config/base2.cpp"
494495
"../../src/config/base32.cpp"
495496
"../../src/config/base58.cpp"
496497
"../../src/config/base64.cpp"
497498
"../../src/config/base85.cpp"
498499
"../../src/config/block.cpp"
500+
"../../src/config/endpoint.cpp"
499501
"../../src/config/hash160.cpp"
500502
"../../src/config/hash256.cpp"
501503
"../../src/config/header.cpp"
@@ -507,6 +509,7 @@ add_library( ${CANONICAL_LIB_NAME}
507509
"../../src/config/printer.cpp"
508510
"../../src/config/script.cpp"
509511
"../../src/config/transaction.cpp"
512+
"../../src/config/utilities.cpp"
510513
"../../src/crypto/aes256.cpp"
511514
"../../src/crypto/der_parser.cpp"
512515
"../../src/crypto/ec_context.cpp"
@@ -716,16 +719,19 @@ if (with-tests)
716719
"../../test/chain/transaction.cpp"
717720
"../../test/chain/witness.cpp"
718721
"../../test/chain/enums/opcode.cpp"
722+
"../../test/config/authority.cpp"
719723
"../../test/config/base16.cpp"
720724
"../../test/config/base2.cpp"
721725
"../../test/config/base32.cpp"
722726
"../../test/config/base58.cpp"
723727
"../../test/config/base64.cpp"
724728
"../../test/config/base85.cpp"
725729
"../../test/config/block.cpp"
730+
"../../test/config/endpoint.cpp"
726731
"../../test/config/hash256.cpp"
727732
"../../test/config/parameter.cpp"
728733
"../../test/config/printer.cpp"
734+
"../../test/config/utilities.cpp"
729735
"../../test/crypto/aes256.cpp"
730736
"../../test/crypto/elliptic_curve.cpp"
731737
"../../test/crypto/pseudo_random.cpp"

builds/msvc/vs2022/libbitcoin-system-test/libbitcoin-system-test.vcxproj

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,7 @@
144144
<ClCompile Include="..\..\..\..\test\chain\tapscript.cpp" />
145145
<ClCompile Include="..\..\..\..\test\chain\transaction.cpp" />
146146
<ClCompile Include="..\..\..\..\test\chain\witness.cpp" />
147+
<ClCompile Include="..\..\..\..\test\config\authority.cpp" />
147148
<ClCompile Include="..\..\..\..\test\config\base16.cpp" />
148149
<ClCompile Include="..\..\..\..\test\config\base2.cpp" />
149150
<ClCompile Include="..\..\..\..\test\config\base32.cpp" />
@@ -153,9 +154,11 @@
153154
<ClCompile Include="..\..\..\..\test\config\block.cpp">
154155
<ObjectFileName>$(IntDir)test_config_block.obj</ObjectFileName>
155156
</ClCompile>
157+
<ClCompile Include="..\..\..\..\test\config\endpoint.cpp" />
156158
<ClCompile Include="..\..\..\..\test\config\hash256.cpp" />
157159
<ClCompile Include="..\..\..\..\test\config\parameter.cpp" />
158160
<ClCompile Include="..\..\..\..\test\config\printer.cpp" />
161+
<ClCompile Include="..\..\..\..\test\config\utilities.cpp" />
159162
<ClCompile Include="..\..\..\..\test\constants.cpp" />
160163
<ClCompile Include="..\..\..\..\test\constraints.cpp" />
161164
<ClCompile Include="..\..\..\..\test\crypto\aes256.cpp" />

builds/msvc/vs2022/libbitcoin-system-test/libbitcoin-system-test.vcxproj.filters

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,6 +174,9 @@
174174
<ClCompile Include="..\..\..\..\test\chain\witness.cpp">
175175
<Filter>src\chain</Filter>
176176
</ClCompile>
177+
<ClCompile Include="..\..\..\..\test\config\authority.cpp">
178+
<Filter>src\config</Filter>
179+
</ClCompile>
177180
<ClCompile Include="..\..\..\..\test\config\base16.cpp">
178181
<Filter>src\config</Filter>
179182
</ClCompile>
@@ -195,6 +198,9 @@
195198
<ClCompile Include="..\..\..\..\test\config\block.cpp">
196199
<Filter>src\config</Filter>
197200
</ClCompile>
201+
<ClCompile Include="..\..\..\..\test\config\endpoint.cpp">
202+
<Filter>src\config</Filter>
203+
</ClCompile>
198204
<ClCompile Include="..\..\..\..\test\config\hash256.cpp">
199205
<Filter>src\config</Filter>
200206
</ClCompile>
@@ -204,6 +210,9 @@
204210
<ClCompile Include="..\..\..\..\test\config\printer.cpp">
205211
<Filter>src\config</Filter>
206212
</ClCompile>
213+
<ClCompile Include="..\..\..\..\test\config\utilities.cpp">
214+
<Filter>src\config</Filter>
215+
</ClCompile>
207216
<ClCompile Include="..\..\..\..\test\constants.cpp">
208217
<Filter>src</Filter>
209218
</ClCompile>

builds/msvc/vs2022/libbitcoin-system/libbitcoin-system.vcxproj

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,7 @@
158158
<ClCompile Include="..\..\..\..\src\chain\transaction_sighash_v1.cpp" />
159159
<ClCompile Include="..\..\..\..\src\chain\witness.cpp" />
160160
<ClCompile Include="..\..\..\..\src\chain\witness_extract.cpp" />
161+
<ClCompile Include="..\..\..\..\src\config\authority.cpp" />
161162
<ClCompile Include="..\..\..\..\src\config\base16.cpp" />
162163
<ClCompile Include="..\..\..\..\src\config\base2.cpp" />
163164
<ClCompile Include="..\..\..\..\src\config\base32.cpp" />
@@ -167,6 +168,7 @@
167168
<ClCompile Include="..\..\..\..\src\config\block.cpp">
168169
<ObjectFileName>$(IntDir)src_config_block.obj</ObjectFileName>
169170
</ClCompile>
171+
<ClCompile Include="..\..\..\..\src\config\endpoint.cpp" />
170172
<ClCompile Include="..\..\..\..\src\config\hash160.cpp" />
171173
<ClCompile Include="..\..\..\..\src\config\hash256.cpp" />
172174
<ClCompile Include="..\..\..\..\src\config\header.cpp">
@@ -190,6 +192,7 @@
190192
<ClCompile Include="..\..\..\..\src\config\transaction.cpp">
191193
<ObjectFileName>$(IntDir)src_config_transaction.obj</ObjectFileName>
192194
</ClCompile>
195+
<ClCompile Include="..\..\..\..\src\config\utilities.cpp" />
193196
<ClCompile Include="..\..\..\..\src\crypto\aes256.cpp" />
194197
<ClCompile Include="..\..\..\..\src\crypto\der_parser.cpp" />
195198
<ClCompile Include="..\..\..\..\src\crypto\ec_context.cpp" />
@@ -328,6 +331,7 @@
328331
<ClInclude Include="..\..\..\..\include\bitcoin\system\chain\tapscript.hpp" />
329332
<ClInclude Include="..\..\..\..\include\bitcoin\system\chain\transaction.hpp" />
330333
<ClInclude Include="..\..\..\..\include\bitcoin\system\chain\witness.hpp" />
334+
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\authority.hpp" />
331335
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\base16.hpp" />
332336
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\base2.hpp" />
333337
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\base32.hpp" />
@@ -336,6 +340,7 @@
336340
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\base85.hpp" />
337341
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\block.hpp" />
338342
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\config.hpp" />
343+
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\endpoint.hpp" />
339344
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\hash160.hpp" />
340345
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\hash256.hpp" />
341346
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\header.hpp" />
@@ -347,6 +352,7 @@
347352
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\printer.hpp" />
348353
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\script.hpp" />
349354
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\transaction.hpp" />
355+
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\utilities.hpp" />
350356
<ClInclude Include="..\..\..\..\include\bitcoin\system\constants.hpp" />
351357
<ClInclude Include="..\..\..\..\include\bitcoin\system\constraints.hpp" />
352358
<ClInclude Include="..\..\..\..\include\bitcoin\system\crypto\aes256.hpp" />

builds/msvc/vs2022/libbitcoin-system/libbitcoin-system.vcxproj.filters

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -309,6 +309,9 @@
309309
<ClCompile Include="..\..\..\..\src\chain\witness_extract.cpp">
310310
<Filter>src\chain</Filter>
311311
</ClCompile>
312+
<ClCompile Include="..\..\..\..\src\config\authority.cpp">
313+
<Filter>src\config</Filter>
314+
</ClCompile>
312315
<ClCompile Include="..\..\..\..\src\config\base16.cpp">
313316
<Filter>src\config</Filter>
314317
</ClCompile>
@@ -330,6 +333,9 @@
330333
<ClCompile Include="..\..\..\..\src\config\block.cpp">
331334
<Filter>src\config</Filter>
332335
</ClCompile>
336+
<ClCompile Include="..\..\..\..\src\config\endpoint.cpp">
337+
<Filter>src\config</Filter>
338+
</ClCompile>
333339
<ClCompile Include="..\..\..\..\src\config\hash160.cpp">
334340
<Filter>src\config</Filter>
335341
</ClCompile>
@@ -363,6 +369,9 @@
363369
<ClCompile Include="..\..\..\..\src\config\transaction.cpp">
364370
<Filter>src\config</Filter>
365371
</ClCompile>
372+
<ClCompile Include="..\..\..\..\src\config\utilities.cpp">
373+
<Filter>src\config</Filter>
374+
</ClCompile>
366375
<ClCompile Include="..\..\..\..\src\crypto\aes256.cpp">
367376
<Filter>src\crypto</Filter>
368377
</ClCompile>
@@ -731,6 +740,9 @@
731740
<ClInclude Include="..\..\..\..\include\bitcoin\system\chain\witness.hpp">
732741
<Filter>include\bitcoin\system\chain</Filter>
733742
</ClInclude>
743+
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\authority.hpp">
744+
<Filter>include\bitcoin\system\config</Filter>
745+
</ClInclude>
734746
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\base16.hpp">
735747
<Filter>include\bitcoin\system\config</Filter>
736748
</ClInclude>
@@ -755,6 +767,9 @@
755767
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\config.hpp">
756768
<Filter>include\bitcoin\system\config</Filter>
757769
</ClInclude>
770+
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\endpoint.hpp">
771+
<Filter>include\bitcoin\system\config</Filter>
772+
</ClInclude>
758773
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\hash160.hpp">
759774
<Filter>include\bitcoin\system\config</Filter>
760775
</ClInclude>
@@ -788,6 +803,9 @@
788803
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\transaction.hpp">
789804
<Filter>include\bitcoin\system\config</Filter>
790805
</ClInclude>
806+
<ClInclude Include="..\..\..\..\include\bitcoin\system\config\utilities.hpp">
807+
<Filter>include\bitcoin\system\config</Filter>
808+
</ClInclude>
791809
<ClInclude Include="..\..\..\..\include\bitcoin\system\constants.hpp">
792810
<Filter>include\bitcoin\system</Filter>
793811
</ClInclude>

include/bitcoin/system.hpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@
6262
#include <bitcoin/system/chain/enums/script_pattern.hpp>
6363
#include <bitcoin/system/chain/enums/script_version.hpp>
6464
#include <bitcoin/system/chain/enums/selection.hpp>
65+
#include <bitcoin/system/config/authority.hpp>
6566
#include <bitcoin/system/config/base16.hpp>
6667
#include <bitcoin/system/config/base2.hpp>
6768
#include <bitcoin/system/config/base32.hpp>
@@ -70,6 +71,7 @@
7071
#include <bitcoin/system/config/base85.hpp>
7172
#include <bitcoin/system/config/block.hpp>
7273
#include <bitcoin/system/config/config.hpp>
74+
#include <bitcoin/system/config/endpoint.hpp>
7375
#include <bitcoin/system/config/hash160.hpp>
7476
#include <bitcoin/system/config/hash256.hpp>
7577
#include <bitcoin/system/config/header.hpp>
@@ -81,6 +83,7 @@
8183
#include <bitcoin/system/config/printer.hpp>
8284
#include <bitcoin/system/config/script.hpp>
8385
#include <bitcoin/system/config/transaction.hpp>
86+
#include <bitcoin/system/config/utilities.hpp>
8487
#include <bitcoin/system/crypto/aes256.hpp>
8588
#include <bitcoin/system/crypto/crypto.hpp>
8689
#include <bitcoin/system/crypto/der_parser.hpp>

include/bitcoin/system/boost.hpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
#include <bitcoin/system/warnings.hpp>
2626

2727
// Include boost only from here, so exception disable works.
28+
#include <boost/asio.hpp>
2829
#include <boost/format.hpp>
2930
#include <boost/iostreams/stream.hpp>
3031
#include <boost/json.hpp>
@@ -40,6 +41,13 @@ BC_API void tag_invoke(boost::json::value_from_tag, \
4041
boost::json::value& value, const name& instance) NOEXCEPT
4142

4243
namespace libbitcoin {
44+
45+
namespace system {
46+
namespace asio {
47+
typedef boost::asio::ip::address address;
48+
typedef boost::asio::ip::tcp::endpoint endpoint;
49+
} // system
50+
} // asio
4351

4452
typedef boost::program_options::variables_map variables_map;
4553
typedef boost::program_options::option_description option_metadata;

include/bitcoin/system/chain/enums/magic_numbers.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,9 +80,9 @@ constexpr size_t base_size_contribution = 3;
8080
constexpr size_t total_size_contribution = 1;
8181
constexpr size_t min_witness_program = 2;
8282
constexpr size_t max_witness_program = 40;
83-
constexpr uint32_t witness_head = 0xaa21a9ed;
8483
constexpr uint8_t witness_marker = 0x00;
8584
constexpr uint8_t witness_enabled = 0x01;
85+
constexpr uint32_t witness_head = 0xaa21a9ed;
8686

8787
/// Taproot consensus constants [bip342].
8888
/// ---------------------------------------------------------------------------

0 commit comments

Comments
 (0)