Savinda Senevirathne
3988828ac7
Remove connection whitelisting on user connect. ( #306 )
2021-05-12 13:49:10 +05:30
Ravin Perera
033b5fa7bc
User inputs round limit. ( #240 )
2021-02-14 20:19:53 +05:30
Ravin Perera
610b67cec0
Contract execute config flag. ( #226 )
...
* Added contract execute flag. Made bin_path optional.
* Updated docker cluster default config.
* Renamed contract config to hp config.
2021-01-22 14:33:07 +05:30
Savinda Senevirathne
e835e18d18
New config file structure. ( #201 )
2020-12-23 18:52:58 +05:30
Savinda Senevirathne
f3055822ed
Introduce pubkey/unl tracking to Peer sessions. ( #181 )
...
* Adding pubkey in binary to comm sessions and is_unl flag to peer sessions.
* Removing display_name overloads and populating pubkey in user session.
* Changing peer session lookup key from uniqueid to pubkey (binary).
2020-12-02 13:05:06 +05:30
Savinda Senevirathne
9160b2ee15
Improve corebill and graylisting. ( #154 )
2020-11-19 08:40:15 +05:30
Chalith Desaman
f475dcb1fb
Dynamic peer list implementation. ( #152 )
2020-11-18 12:58:58 +05:30
Ravin Perera
3ea0299964
Comm session re-architecture and self comm channel. ( #145 )
...
* Introduced self comm channel instead of loopback websocket.
* Introduced comm_session and comm_server inheritance hierarchy.
* Separated peer session and user session classes.
2020-11-08 22:14:08 +05:30
Ravin Perera
ba0cae019d
Refactored consensus into 3 rounds. ( #144 )
...
* Refactored consensus into 3 stages and removed stage 0.
* Consensus threshold calculation improvements.
* Refactored candidate user input processing.
* Renamed proposal sent timestamp field.
* Introduced comm_session display name.
2020-11-07 15:01:01 +05:30
priyadharsun
91122474a1
Replaced Boost log with Plog. ( #124 )
2020-09-23 06:06:42 +05:30
Ravin Perera
d2f45daf4c
Implemented multi-threaded inbound network message processing. ( #115 )
...
Used per-session thread to offload messages from network and a single thread for processing collected messages.
2020-09-10 15:40:08 +05:30
Ravin Perera
96f23cb0ff
Added bson support for user message protocol. ( #99 )
2020-07-02 21:40:55 +05:30
Ravidu Lashan
ef8ec0f51d
Added challenge issue and verification for peer connections ( #93 )
...
Implemented flatbuffer peer challenge issue and verification messages.
Replaced session flags with challenge status enum.
2020-04-20 05:55:42 +05:30
Amila Ariyarathna
7a7dd8698d
Minor typo fixes ( #91 )
2020-04-15 08:01:25 +05:30
Ravin Perera
920be03ade
Websocket re-architecture with websocketd and websocat ( #89 )
...
- Replaced beast with websocketd and websocat. #79 #83 #84
- Implemented inbound/outbound peer connection merging.
- Added graceful shutdown of hpcore with sigint. #87
2020-04-05 08:12:55 +05:30
ravinsp
ef46666fd2
Added peer and user connection limits.
2019-11-10 14:55:55 +05:30
ravinsp
7815390b25
Implemented basic corebill tracking.
2019-11-08 13:20:34 +05:30
Ravin
8d31075b7b
Code improvements.
2019-11-07 17:21:21 +05:30
Ravin Perera
d16b43406b
Added bad and duplicate message counters to socket_session ( #55 )
2019-11-07 06:57:34 +05:30
Ravin Perera
83189556de
Refactored user I/O with signed inputs and NUPs. ( #53 )
2019-11-03 22:45:23 +05:30
Ravin Perera
cb364cc420
Compilation time improvements. ( #52 )
...
* Precompiled header for all common library headers (with cmake 3.16rc3).
* Divided cmake build into shared libraries.
* Added gold linker support.
* Separated websockets lambda expressions to an independent file.
2019-11-02 14:46:21 +05:30
Ravin Perera
b8ffb83869
User restructuring fixes.
2019-10-31 14:30:33 +05:30
Ravin Perera
a51ec4a030
Restructured user message handling.
2019-10-31 14:23:01 +05:30
Ravin Perera
2e96ca009f
Restructured user message handling.
2019-10-31 12:44:06 +05:30
Ravin Perera
5ea2bef62a
Improved user inputs handling in consensus ( #46 )
...
Updated flatbuffer proposal raw_inputs, raw_outputs data structure.
Improved user inputs handling in consensus.
2019-10-28 00:17:35 +05:30
Asanka Indrajith
d6acee4e09
Basic consensus implementation ( #45 )
...
Consensus for user connections, user inputs, contract outputs and time.
2019-10-26 11:46:32 -04:00
Ravidu Lashan
40358890af
Added initial TLS support for socket communication ( #41 )
...
* Added initial commit
* Added tls to web sockets which require key file and cert file
* Added meaningful comments
2019-10-24 14:54:33 +05:30
Ravin Perera
61b38bb0a0
Implemented socket message templates. ( #40 )
...
Implemented socket message templates to support broadcast (shared_ptr) and to achieve buffer zero-copy.
2019-10-23 13:04:57 +05:30
Ravin Perera
2d5d8960c0
Boost log integration. ( #37 )
2019-10-20 21:45:59 +05:30
Ravin Perera
0fb9ebf79f
Changed base64 to hex encoding.
2019-10-17 00:17:15 +05:30
Ravin Perera
8a22748c8d
Implemented sending contract output back to the user.
2019-10-16 19:23:19 +05:30
Ravin Perera
8b003aeaa2
Switched to binary pubkeys from base64 for internal user data ( #29 )
...
* String copy optmisations.
* User pubkey binary.
2019-10-16 06:45:49 +05:30
Ravin Perera
db99d94902
vmsplice and other optmizations for user pipes I/O ( #28 )
2019-10-15 23:26:22 +05:30
Ravin Perera
dac43e857a
Optimized user pipes life time. ( #26 )
...
Optimized user-contract I/O pipes.
2019-10-14 23:48:15 +05:30
Ravidu Lashan
9ec9c9575d
Refactored socket send method and message recieved method ( #25 )
...
* Enhanced sockets
* Removed unnecessary copy operations
* Enhanced sock session send method to recieve rref
* Enhanced on_read with rvalue reference
* Added string_view
* Added comments
2019-10-14 18:26:34 +05:30
Ravin Perera
56c3e3ee93
Optimized string passing with string_view.
2019-10-14 17:03:11 +05:30
Ravin Perera
ebf13209e1
Code consistency improvements ( #21 )
...
Fully-qualified namespace accessors
Updated function out param order
reinterpret_cast
2019-10-11 20:08:53 +05:30
Ravin Perera
f64cdc6ad0
Implemented user connection challenge handshake ( #20 )
...
Implemented user connection challenge handshake.
Optimized user challenge message processing.
2019-10-11 17:29:45 +05:30