Commit graph

2159 commits

Author SHA1 Message Date
Garrick Ollivander
956dd6b816
fix file headers: Developer -> Grin Developer 2016-11-13 12:47:09 +01:00
Ignotus Peverell
2b8faf8709
A few more consensus values. 2016-11-10 17:19:03 -08:00
Ignotus Peverell
d710301833
Missing consensus file. 2016-11-10 16:02:47 -08:00
Ignotus Peverell
d2110f5b46
Web IRC link to make it easier for newcomers to connect. 2016-11-10 16:02:33 -08:00
Ignotus Peverell
712cf78e8a Merge pull request #14 from ignopeverell/topic/fees-in-sig
Slight changes to transaction signature. The transaction fee gets signed (instead of the empty string) and the fee amount is attached to the transaction proof in blocks.
2016-11-10 15:55:49 -08:00
Ignotus Peverell
baeae7d1a5
Merged master. 2016-11-10 15:54:47 -08:00
Ignotus Peverell
4ade3ec1b8
Moved consensus related constants to their own core module. 2016-11-09 15:51:24 -08:00
Ignotus Peverell
6e2a232ca3
Cleaned up total fees from block header. Unnecessary now. 2016-11-09 13:25:40 -08:00
Ignotus Peverell
ba5479841e
Small doc adjustment to add IRC. 2016-11-09 11:17:58 -08:00
Ignotus Peverell
4e9aad639e
Formatting fixes. 2016-11-09 11:10:02 -08:00
Ignotus Peverell
8317854b70
Slight changes to transaction signature. The transaction fee gets signed (instead of the empty string) and the fee amount is attached to the transaction proof in blocks. This allows fee accounting and the tracking of fees within a block. 2016-11-09 11:05:44 -08:00
Ignotus Peverell
2e23c64448
Intro to pruning doc, just some facts and size data. 2016-11-08 09:50:13 -08:00
Ignotus Peverell
632e3af8ee
Test for sending tx from one peer to another. Common tests module. 2016-11-07 14:02:45 -08:00
Ignotus Peverell
a47006a75d Merge pull request #12 from merope07/merkle-doc
Add design document for Merkle tree structures
2016-11-07 11:19:54 -08:00
Merope Riddle
7b3095ac12 Add design document for Merkle tree structures 2016-11-07 17:58:54 +00:00
Ignotus Peverell
ea425dc614
Protocol cleanup. Tests cleanup. Additional test for transaction broadcast. 2016-11-05 16:31:45 -07:00
Ignotus Peverell
28f007240e
Usefuly read and write implementations to limit and count bytes. 2016-11-04 08:59:49 -07:00
Ignotus Peverell
098d17ee42
Added limited and counting readers for protocol to maintain its stats. Added primitive error count. Cleaned up protocol. 2016-11-02 14:19:40 -07:00
Ignotus Peverell
edc6c62577
Fixed message serialization following changes in core. Sending of block and transaction. 2016-11-01 10:42:33 -07:00
Ignotus Peverell
1008539048 Merge pull request #11 from merope07/option-t
core: Clean up serialization and hashing
2016-11-01 10:25:35 -07:00
Merope Riddle
33ccfe3b65 core: remove several unused imports 2016-11-01 13:19:38 +00:00
Merope Riddle
ca89dae7e1 core: unify Hashed and Writeable to simplify things and remove allocations 2016-11-01 13:19:28 +00:00
Merope Riddle
245f0a8b56 core/ser: add default implementations for most methods of Writer 2016-11-01 13:14:26 +00:00
Merope Riddle
565374bac7 p2p: fix for changes in core serialization API 2016-11-01 02:16:57 +00:00
Merope Riddle
630c4eb6fb core/ser: replace write_vec with write_bytes, drop a bunch of clones 2016-11-01 02:14:52 +00:00
Merope Riddle
bc38016385 core/ser: change serialization trait to use Result<(), Error> in place of Option<Error> 2016-11-01 02:14:52 +00:00
Ignotus Peverell
3ffc2f5d8c
Tests improvement. Protocol also measures bytes received (at least for pings). 2016-10-31 12:30:48 -07:00
Ignotus Peverell
d1bb114b18 Merge pull request #9 from GarrickOllivander/nicer_messagetype
Nicer message types const list.
2016-10-31 09:13:08 -07:00
Ignotus Peverell
4f55aab006 Merge pull request #8 from GarrickOllivander/intellij_ignore
ignore ItelliJ IDEA project files
2016-10-31 09:09:51 -07:00
Garrick Ollivander
d7dcd6d3ae
nicer processing of message types 2016-10-31 13:08:48 +01:00
Garrick Ollivander
ec3a5728dd
ignore ItelliJ IDEA project files 2016-10-31 12:54:22 +01:00
Ignotus Peverell
ee6fcab8db
Proper server and protocol event loop. Channels for shutdown and ping/pong trivial roundtrip. Working test. 2016-10-30 18:24:19 -07:00
Ignotus Peverell
2efa8ce706 Merge pull request #7 from GarrickOllivander/fix_merkle_tree_malleability
Fix Merkle tree malleability.
2016-10-30 18:18:40 -07:00
Ignotus Peverell
a23308dd9d
Added clean stop logic on server and peers. Broken unit test. 2016-10-30 08:24:19 -07:00
Ignotus Peverell
42769c373c
Re-implemented the whole interaction between server, peer and protocol to be more Rust-ish. Server maintains peer references and protocol is internally mutable. 2016-10-29 12:36:45 -07:00
Garrick Ollivander
4e11aab1ea
added comment to avoid this vulnarability sneaking back 2016-10-29 18:18:32 +02:00
Garrick Ollivander
ab3ffafdcd
fix merkle tree malleability 2016-10-29 17:55:47 +02:00
Ignotus Peverell
fdaf2ba6af
First working test with related fixes demonstrating a full peer handshake. 2016-10-27 14:28:02 -07:00
Ignotus Peverell
a9dc8a05ac
Preliminary impl of p2p package compiles now. Next step: basic handshake integration test. 2016-10-26 11:21:45 -07:00
Ignotus Peverell
b1762cb5f4
p2p module getting close to first integration test allowing 2 peers to connect. Fleshed out handshake and protocol use. Fixed most errors, just need to make the borrow checker happy. 2016-10-25 22:06:13 -07:00
Ignotus Peverell
4657b09c4e
WIP: more p2p code, mostly interaction between peer, protocol and server as well as ser/deser for first message types. 2016-10-24 21:35:10 -07:00
Ignotus Peverell
9f780f6865
Converse of deser macro to make serialization of structs less verbose. 2016-10-24 20:41:28 -07:00
Ignotus Peverell
b50e1ab038
Simple macro to remove some of the verbosity in deserialization. 2016-10-24 17:43:14 -07:00
Ignotus Peverell
c8aa8d7c18
Getting started on the p2p networking code. 2016-10-23 17:02:02 -04:00
Ignotus Peverell
0855d7b41e Merge pull request #4 from merope07/cleanup-oct2016
Modularize several data structures in core
2016-10-23 15:58:56 -04:00
Merope Riddle
4b51610d9a core: move remaining contents of core/ser.rs into ser.rs 2016-10-23 19:50:58 +00:00
Merope Riddle
82adc54971 core: separate Transaction into its own module 2016-10-23 19:49:35 +00:00
Ignotus Peverell
c1cb57f3a9
Fixed wrong re-export. 2016-10-23 15:43:05 -04:00
Merope Riddle
2ea58d4478 core: move Block and BlockHeader into their own module 2016-10-23 13:53:29 +00:00
Merope Riddle
88b07791fa core: move Hash into its own module 2016-10-23 13:23:04 +00:00