23 Commits (19c1cdb649919db0a79ad613b8aaedf83547b307)

Author SHA1 Message Date
trivernis 19c1cdb649
Fix event redirect handling
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis e62e841d47
Add copyright to source files
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis d017e8e250
Rewrite server to be asynchronous
Rewrite of the vented server that uses async-std and async tcp
streams. The Protocol itself is unchanged but the api for implementations
needs to be adapted.

Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis e59e26c72f
Fix blocked receiver thread
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 7fb2b5d647
Change read and write behaviour
Read and write is now done in separate threads. Each connections
starts up a read and write thread that lock until a value is retrieved.
Events are handled by one thread in the server. Data is synchronized
via mpmc channels.

Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 9137eeb673
Add error and success callback to AsyncValue
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis d3d6d0baaf
Change emit to return an async value
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis a2bed2074a
Change thread pool to executor pools
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 401bd11821
Remove request_node_list fn
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 52f9cc1cd1
Change emit to be synchronous to avoid too many threads
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 9a556309e4
Add check if node is known for redirect events
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 6a2f24945d
Change update to not add self to node list
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 833dd1a47b
Expose fields of node list item
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis a8900d5246
Expose node list event
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis eec5e698d3
Change event handling to return multiple events
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 0ee8d691c7
Add support for node list synchronization
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 12d17f09c9
Add event redirection via proxy nodes
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 32f15a2c89
Refactor connection function
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 34a1fd2cf0
Add version comparison on connect
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 6f6142982b
Change auth to two-sided encrypted authentication
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis ce423d5c3d
Add key based authentication
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis bf72aeeeb8
Rewrite server to use custom encryption
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 46c2b6266d
Add response event generation to event handler
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago