Roman Khimov
aacf58c9ab
util: add 'constructors' for BinReader/BinWriter
...
And an additional BufBinWriter to ease buffer management.
2019-09-16 23:38:48 +03:00
Roman Khimov
e72a8bbecd
network: decode CMDGetData the same way as CMDInv
...
As they're the same wrt the payload.
2019-08-30 13:14:12 +03:00
Roman Khimov
2d94a1e337
network: add getblocks
message parsing
...
It has identical structure to the `getheaders`.
2019-08-29 21:23:57 +03:00
Roman Khimov
459542a978
pkg/network: convert to using binaryReader/Writer
2019-08-28 19:45:17 +03:00
Roman Khimov
a436e22ec1
pkg/network: sort messages
...
Just for convenience.
2019-08-27 20:12:01 +03:00
Roman Khimov
0f265a6a04
_pkg.dev: drop wire/command
...
Transferring some missing commands to pkg/network.
2019-08-27 20:08:48 +03:00
Roman Khimov
ec7e17ffa6
pkg: make use of the new crypto/hash package
...
Simplifies a lot of code and removes some duplication. Unfortunately I had to
move test_util random functions in same commit to avoid cycle
dependencies. One of these random functions was also used in core/transaction
testing, to simplify things I've just dropped it there and used a static
string (which is nice to have for a test anyway).
There is still sha256 left in wallet (but it needs to pass Hash structure into
the signing function).
2019-08-26 13:32:19 +03:00
Evgeniy Kulikov
f000b76879
[FIX] Formatting and code-style ( #118 )
...
* [FIX] Formatting and code-style
- gofmt
- import resort
- prealloc slices
- simplify code
* fix vet
2019-01-25 12:20:35 +01:00
Anthony De Meulemeester
34a37ff51d
added filter payloads for spv client compliance ( #90 )
...
* added filter payloads for spv client compliance
* bumped version
2018-08-10 16:32:49 +02:00
Anthony De Meulemeester
b2021c126e
Tweaks for network and storage ( #66 )
...
* Made Encode/Decode message public.
* Added Redis storage driver and made some optimizations for the initialising the blockchain
* removed log lines in tcp_peer
* Added missing comments on exported methods.
* bumped version
2018-04-09 18:58:09 +02:00
Anthony De Meulemeester
94672cb9cc
Persistance ( #53 )
...
* added publish TX for backwards compat.
* lowered the prototick for faster block syncing
* print useragent on startup
* added createMultiRedeemScript for genesis block generation.
* building genesis block from scratch.
* implemented merkle tree.
* starting blockhain with generated genesis hash
* Fixed bug in unspent coin state.
* fixed broken tests after genesis block.
* removed log line.
* bumped version -> 0.34.0
2018-03-25 12:45:54 +02:00
Anthony De Meulemeester
aa4bc1b6e8
Node improvements ( #47 )
...
* block partial persist
* replaced refactored files with old one.
* removed gokit/log from deps
* Tweaks to not overburden remote nodes with getheaders/getblocks
* Changed Transporter interface to not take the server as argument due to a cause of race warning from the compiler
* started server test suite
* more test + return errors from message handlers
* removed --race from build
* Little improvements.
2018-03-14 10:36:59 +01:00
Anthony De Meulemeester
aa4bd34b6b
Node network improvements ( #45 )
...
* small improvements.
* Fixed datarace + cleanup node and peer
* bumped version.
* removed race flag to pass build
2018-03-10 13:04:06 +01:00
Anthony De Meulemeester
4023661cf1
Refactor of the Go node ( #44 )
...
* added headersOp for safely processing headers
* Better handling of protocol messages.
* housekeeping + cleanup tests
* Added more blockchain logic + unit tests
* fixed unreachable error.
* added structured logging for all (node) components.
* added relay flag + bumped version
2018-03-09 16:55:25 +01:00
Steven Jack
e09c870f7f
Fix bug where channel for peers events is called after it's closed ( #34 )
...
* Disconnect once go routines signal so
* Send msg if cmd is other than cmdUnknown
* Remove typo
* Fix lock file
* Updates README
* Comment typo
* Fix issue
* Revert old changes
* Handle error
2018-03-03 08:16:05 +01:00
Anthony De Meulemeester
f7d57e4e49
VM draft + cli setup ( #20 )
...
* updated readme
* added basic cmd.
* added seperate folders for cmd packages.
* Fix netmodes in test + reverse bigint bytes
* glide get deps
2018-02-09 17:08:50 +01:00
Anthony De Meulemeester
628656483a
bug fixes (TCP + uint256) and started core part ( #14 )
...
* Fixed TCP read + Uint256 reversed array + started on some core pieces
* Disabled some debug output + muted test
* 0.5.0
2018-02-04 20:54:51 +01:00
Charlie Revett
dd94086a22
CircleCI 2 & Releases ( #9 )
2018-02-01 10:54:23 -08:00
anthdm
0c9d2dd04e
Block message + handle the length of the user agent better.
2018-01-31 09:27:08 +01:00
anthdm
e9f9354b86
added core block type
2018-01-30 11:56:36 +01:00
anthdm
6f08d967ba
added basic checksum test. + fix travis build
2018-01-29 08:42:49 +01:00
anthdm
3cc2a6381b
handle inventory message.
2018-01-28 18:42:22 +01:00
anthdm
5799cdb3ea
handle address list message.
2018-01-28 17:59:06 +01:00
anthdm
8bbe1435fb
huge message and payload refactor.
2018-01-28 16:06:41 +01:00
anthdm
1eab73d560
port byte order to big endian
2018-01-28 11:20:42 +01:00
anthdm
9c152bae79
unmarshal addressList
2018-01-28 11:12:05 +01:00
anthdm
f28d8f9ab6
uint256 + inventoryType
2018-01-28 08:03:18 +01:00
anthdm
4f6090cebf
added inventory message types
2018-01-27 17:40:06 +01:00
anthdm
d7826a4d43
wip implement inv command
2018-01-27 16:47:43 +01:00
anthdm
754a473488
wip refact 2
2018-01-27 16:00:28 +01:00
anthdm
d76b86febd
wip
2018-01-27 08:37:07 +01:00
anthdm
b94c9b4b57
Implemented NetMode type.
2018-01-26 21:39:34 +01:00
anthdm
536a499236
initial commit.
2018-01-26 19:04:13 +01:00