Commit Graph

44 Commits

Author SHA1 Message Date
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
Merope Riddle 7e2b271865 add doccomments for consensus comments 2016-10-23 13:23:04 +00:00
Merope Riddle 9644fb6a73 Add apache 2.0 license header to all source files 2016-10-23 13:20:39 +00:00
Ignotus Peverell 81c32d4bab Merge pull request #2 from ChronosCrypto/patch-1
fix typo
2016-10-22 00:47:49 -04:00
Ignotus Peverell e5e908adde Merge pull request #1 from kanzure/trivial-typo-fixes
Fix some trivial typos
2016-10-22 00:47:20 -04:00
Ignotus Peverell d3e4ecc100 Corrected spelling of Cuckoo Cycle here and there and updated easiness to 50% following @tromp feedback. 2016-10-21 18:02:20 -04:00
Ignotus Peverell 396fd58626 Fixing the gitter link. 2016-10-21 16:24:42 -04:00
ChronosCrypto 60380c60c5 fix typo 2016-10-21 08:46:17 -07:00
Bryan Bishop 2fff216491 fix some trivial typos 2016-10-21 10:17:33 -05:00
Ignotus Peverell f73a308bf3 Initial import. 2016-10-20 20:06:12 -04:00