Commit graph

35 commits

Author SHA1 Message Date
Calin Culianu
c0ea7f75a0
Refactored things, added "Controller" class
Controller will manage BitcoinD and perhaps synching to bitcoind. It can
"see" all the servers as well as bitcoind.

Also refactored things a little bit and added some more startup sanity
checks.
2019-11-18 00:21:34 +02:00
Calin Culianu
4249740857
Added CBlock and block deserialization of bitcoin blocks.
Works! Yay!  We are one step closer to our Grande Plan.
2019-11-08 20:06:39 +02:00
Calin Culianu
0a22cdfb2d Added more comments and additional arg to VerifyTxSignature 2019-05-07 18:27:54 +03:00
Calin Culianu
67899d5ac4 Clarified nSequence, nLocktime, nVersion in comments 2019-05-07 18:09:06 +03:00
Calin Culianu
1b3c460baa Made all amounts referring to satoshis be signed 64 rather than unsigned
This is to more closely match bitcoin lib. Also it makes
differences/subtraction work better to use signed values.
2019-05-07 13:46:09 +03:00
Calin Culianu
bd8bb06203 Added Cash Address support!
Note internally the BTC::Address class just stores hash160.

Its ToString() is always legacy (for now), but the server can now accept
both legacy or cash address from clients.  Class c'tor for
BTC::Address() auto-detects address type and decodes it appropriately.
2019-05-07 12:15:53 +03:00
Calin Culianu
80926f3d6b Added VerifyTxSignature function to namespace BTC 2019-05-07 03:05:47 +03:00
Calin Culianu
eca4a74fed Added sigcheck tests and more helper methods to BTC namespace 2019-05-07 02:02:23 +03:00
Calin Culianu
fa49e5af50 added ECCVerifyHandle creation at app launch 2019-05-06 22:26:51 +03:00
Calin Culianu
aa7159fa0e Some cleanup to BTC namespace
Also added "MakeUnsignedTransaction"

ToDo: Verify tx sigs
2019-05-06 21:33:19 +03:00
Calin Culianu
8399ee0052 Added BTC::UTXO with tests
Faster encapsulation of UTXOs .. string based.  Copy-on-write.

interops with bitcoin::COutPoint
2019-05-03 14:37:07 +03:00
Calin Culianu
b3159f4318 fixed broken endian check at startup. oops. 2019-05-02 05:55:14 +03:00
Calin Culianu
96b0c0e0d3 nit to endian check 2019-05-01 18:30:22 +03:00
Calin Culianu
b84bcbd8b5 Added Linux compile fixups. Also a check that the endianness in bitcoin:: is ok. 2019-05-01 18:19:17 +03:00
Calin Culianu
79e922ac9c Nit in BTC::Address to add some syntax sugar
Also moved the OpCodes enum into its own file as it's long...
2019-04-30 21:17:50 +03:00
Calin Culianu
3f49dce1db Added some small goodies
- Util::RunInThread to run a lambda in a thread
- App exit handling cleanup
- EXMgr uses an id for clients now
- EXMgr keeps track of lagging clients
- EXMgr more aggressive with reconnects if no valid exclients
- Nits and refactorings and misc. cleanup
2019-04-27 12:38:50 +03:00
Calin Culianu
194611a406 Revert "pragma warning tweaks got gcc and clang"
This reverts commit f83c3eea47.
2019-04-26 22:21:04 +03:00
Calin Culianu
e0c5aec12e Revert "follow-up. got it wrong for gnuc :)"
This reverts commit 50c28f90c3.
2019-04-26 22:21:00 +03:00
Calin Culianu
50c28f90c3 follow-up. got it wrong for gnuc :) 2019-04-26 22:17:16 +03:00
Calin Culianu
f83c3eea47 pragma warning tweaks got gcc and clang 2019-04-26 22:11:14 +03:00
Calin Culianu
6c56a9157a added ifdef __clang__ to clang directives 2019-04-26 14:25:39 +03:00
Calin Culianu
e5b293e2e7 suppress a compile warning 2019-04-25 21:36:05 +03:00
Calin Culianu
9a10e74ec8 updated bitcoin dir to BitcoinABC latest, removing dep. on OpenSSL 2019-04-25 21:09:05 +03:00
Calin Culianu
99c8a0a711 tweaked tests plus added comments 2019-04-25 13:46:35 +03:00
Calin Culianu
6947d57679 added concat tests plus a comment 2019-04-25 13:30:33 +03:00
Calin Culianu
6e95dec64d tweak 2019-04-25 13:02:28 +03:00
Calin Culianu
d7d021ba2e added some comments 2019-04-25 12:33:39 +03:00
Calin Culianu
1355fed36b tweak 2019-04-25 10:54:28 +03:00
Calin Culianu
b2c6fc2dae refactored Address class a bit to be more useful 2019-04-25 10:20:18 +03:00
Calin Culianu
4e17c247ac added hashX caching to Address class 2019-04-25 10:00:55 +03:00
Calin Culianu
7fb9867844 finished up ByteArray 2019-04-25 09:45:08 +03:00
Calin Culianu
d6d88761d8 testing 2019-04-25 09:22:25 +03:00
Calin Culianu
fe45011530 Added ByteArray type to BTC namespace 2019-04-25 09:13:50 +03:00
Calin Culianu
59edb8fe81 nit 2019-04-24 23:50:13 +03:00
Calin Culianu
e9490a860a Added BTC namespace and Address class.
We now can decode addresses and turn them into ElectrumX scripthash.
2019-04-24 23:25:01 +03:00