Commit Graph

142 Commits (a4bd7806b3ee51b64315287da60b235a83decbf0)

Author SHA1 Message Date
dr7ana 7421d59009 libquic vbump 5 months ago
dr7ana a5b7a7e35b Deprecate pending_msg_que in favor of libquic internal stream buffers 5 months ago
dr7ana e331f0b31f No fetch only throw 6 months ago
dr7ana 5469c9beb0 HAPPY NEW YEAR 6 months ago
dr7ana 4c336c9ea1 do not gossip client RCs! 6 months ago
dr7ana 0d8017d61d okay now lets try clients 6 months ago
dr7ana 3fb9ba57e5 gossip new RC's on bfetch 6 months ago
dr7ana 4437d0b373 re-abstraction for client connections
- pending_conns removed in favor of direct creation of link::Connection objects in link::Endpoint::{service,client}_conn containers
- conn lookup maps removed, they were pointless
6 months ago
dr7ana 3451a30d0e ALPN verification
- laying the groundwork for functional client->service node connections. this requires ALPNs verification as a secondary method of identification to the remote key
- refactored btreq stream creation to use improved stream creation logic in libquic
6 months ago
dr7ana 9e31300d0f gossip storage, logs 6 months ago
dr7ana 47be3cefe1 lets see which gets rejected 6 months ago
Jason Rhinelander 7417c59286
Get rid of IterDir
It's a gross implementation, and even if it wasn't, using it takes more
code than not using it.
6 months ago
dr7ana f41bcd00c6 loop call 6 months ago
dr7ana 2a090b6e42 btreq destructor
- try closing the connection via link::Endpoint like we probably should be doing..
- testing out dropping stream constructor, godspeed
6 months ago
dr7ana 87ae0686d0 rc parsing
- new btdc method used to ensure no junk at the end of our bt data
- DRYed out the RC code
- check inbound bootstraps against all registered routers, not just whitelist
- libquic vbump
6 months ago
dr7ana 49794295b1 booyakasha 6 months ago
dr7ana c71e767511 full mesh proto implementation 6 months ago
dr7ana 42aa92ab95 gossip fetch and response handling implemented 6 months ago
dr7ana ef1897c25a Added connection keepalive
- implemented ngtcp2 ping to keep connections alive
- fixed weird lambda captures
- fetch logic
- lets see what happens
6 months ago
dr7ana 575494c3da actually have rid in command registration 6 months ago
dr7ana 08c2c26c29 bootstrap tweaking 6 months ago
dr7ana d6e5aca572 libquic vbump 6 months ago
dr7ana fd21eb3a00 Big fix!
- pending conns container stops them from being counted towards active conns in the interim
- un-abstracted pendingmessages vs pendingdatamessages vs pendingcontrolmessages (gross)
- fixed bootstrap fetching and storage!
6 months ago
dr7ana d016951d2f Fixed pending message queue weirdness 6 months ago
dr7ana ea614ed141 better! 6 months ago
dr7ana 49dbdf1062 doofus 6 months ago
dr7ana 63c9bd6e63 update seeds before returning no 6 months ago
dr7ana eb971265c7 wrap dat 6 months ago
dr7ana 6cb2f57abd whatever 6 months ago
dr7ana b69f754599 come on already work already 6 months ago
dr7ana 7544436f6a who cares 6 months ago
Jason Rhinelander cece742cf3
Bump libquic for message move/copy fixes 6 months ago
dr7ana daa3a6fd94 shoot 6 months ago
Jason Rhinelander 4c1f6112a7
REVERT ME: debug incoming dict data 6 months ago
dr7ana f725c07f2d dont bomb with bootstrap reqs 6 months ago
dr7ana e0c1069790 kiiiiiick 6 months ago
dr7ana efe5fd3b5b try queueing 6 months ago
dr7ana 0bf3a3323a kick 6 months ago
dr7ana 238cc3d0da kick 6 months ago
dr7ana 5f430a392b kick 6 months ago
dr7ana 63644d3d84 Bootstrap seed
- nodes now send their RC to the bootstrap seed on making a request
- allows the bootstrap seed to distribute RCs
6 months ago
dr7ana f2feea74ee Crit logging
- TODO: discuss authentication for nodes connecting to bootstrap seed
- crit log num connected/RC's, conn open/closed, etc
6 months ago
Jason Rhinelander 412ce44139 Update libquic 6 months ago
Jason Rhinelander daeff3ee7e Remove duplicate connection closing method
`deregister_peer` does the exact same thing as `close_connection` so
just remove it.

Also removes an unnecessary loop dispatch call (because we *have* to be
in the logic thread already to be able to touch the variables we are
touching before the dispatch).
6 months ago
dr7ana 9084d39e5a Squashed misc testnet fixes 6 months ago
dr7ana 8af38d3d44 TELL ME WHEN IT WORKS 6 months ago
dr7ana cef2ff7782 Local router mode
- Up and running locally, no connections yet
- Next: flip testnet and do the gosh dang thing
6 months ago
dr7ana ed6bd28a35 testnet prep
- redoing link_manager functions again to implement previously ignored review comments on several PRs
- conceptually merging "whitelist_routers" and new "known_{rids,rcs}", s.t. we can completely eliminate white/red/gray/green/etc lists in favor of something that isn't dumb
6 months ago
dr7ana 62c37825b0 testnet prep
- disable reachability testing with config option; required to be done on testnet
- reachability testing pipeline through link_manager executes pings similar to storage server. connection established hook reports successful reachability, while connection closed callback (with non-default error code) reports unsuccessful testing
6 months ago
dr7ana 70e9c1ae25 trust model fetch fails
- bootstrap cooldown implemented with 1min timer in case all bootstraps fail
- set comparison implemented in non-initial and non-bootstrap rc fetching; set comparison in rid fetching is done every fetch
- nodedb get_random functions refactored into conditional/non-conditional methods. Conditional search implements reservoir sampling for one-pass accumulation of n random rcs
6 months ago