Commit graph

24 commits

Author SHA1 Message Date
Alain Zscheile
faec74dc0c debug Distributor 2022-11-27 17:15:45 +01:00
Alain Zscheile
7bbf59625a add ability to supply arbitrary filters 2022-11-27 00:40:44 +01:00
Alain Zscheile
c48367ff09 send public key with every message
this is more efficient and solves key distribution concerns
2022-11-26 23:41:56 +01:00
Alain Zscheile
fab022df18 chore: run mix format 2022-11-26 16:04:44 +01:00
Alain Zscheile
bf46142dab decode XferInner only when appropriate
That is, make sure that the signature is valid before decoding
2022-11-26 13:00:53 +01:00
Alain Zscheile
025b4a826f make TTL hop-based
this avoid dozens of issues regarding time warps, and also solves the issue
of infinitely cycling packets when the system is under saturation, as now
packets expire after passing the set amount of hops
2022-11-26 12:55:48 +01:00
Alain Zscheile
ecf27c1f01 always discard already seen packets 2022-11-26 02:29:26 +01:00
Alain Zscheile
163979612d distr: fix superfluous requestpull due to bothed origin skip 2022-11-26 02:01:16 +01:00
Alain Zscheile
e4d71e0b88 put DistributorSeen into separate module to prevent indirection via Distributor 2022-11-26 00:23:53 +01:00
Alain Zscheile
ffc32e3036 distr: completely get rid of key handling 2022-11-26 00:04:11 +01:00
Alain Zscheile
4c5c0cb865 SessMgr/Distr: improve handling of session hand-over 2022-11-26 00:00:44 +01:00
Alain Zscheile
f4ae49db83 distr: fix wrong process linking 2022-11-25 23:49:07 +01:00
Alain Zscheile
19409b738b make session handling more robust
previously, a crashing client process would take the whole backlog
with it. now, the SessionManager manages the backlog if a session is setup
2022-11-25 17:16:44 +01:00
Alain Zscheile
3b9aa3f301 get rid of 'id' field in messages, use Blake2b hash instead 2022-11-24 23:11:09 +01:00
Alain Zscheile
825b65f9ee run 'mix format' 2022-11-24 20:01:34 +01:00
Alain Zscheile
6c3c295f43 distributor: use GenServer instead 2022-11-24 18:34:08 +01:00
Alain Zscheile
625afcbd55 first try at integration test 2022-11-24 16:30:14 +01:00
Alain Zscheile
8b7b4cc650 omit another double-decode of XferInner; explicit ACK for messages 2022-11-24 10:53:14 +01:00
Alain Zscheile
1e52915076 distr/sessmgr: run loop in Agent to share memory 2022-11-24 09:53:34 +01:00
Alain Zscheile
39c2930b52 cache get_xfer_id calls 2022-11-24 09:46:49 +01:00
Alain Zscheile
83ae614581 distr: fix remaining Enum access 2022-11-24 02:05:12 +01:00
Alain Zscheile
f0d84d7817 distrs/sessmgr: properly integrate sessions 2022-11-24 02:00:36 +01:00
Alain Zscheile
f03838ba6e make the boundary between XferBlob and XferInner more explicit 2022-11-23 10:54:26 +01:00
Alain Zscheile
a048ffb70a baseline stuff 2022-11-23 00:17:46 +01:00