Commit Graph

8262 Commits (quic-wip)
 

Author SHA1 Message Date
dr7ana a4bd7806b3
Merge pull request #2228 from dr7ana/trust-model
Trust model
4 months ago
dr7ana 7421d59009 libquic vbump 4 months ago
dr7ana a5b7a7e35b Deprecate pending_msg_que in favor of libquic internal stream buffers 4 months ago
dr7ana e331f0b31f No fetch only throw 5 months ago
dr7ana 5469c9beb0 HAPPY NEW YEAR 5 months ago
dr7ana 4c336c9ea1 do not gossip client RCs! 5 months ago
dr7ana eaa853d04f client testing 5 months ago
dr7ana 0d8017d61d okay now lets try clients 5 months ago
Jason Rhinelander f6a660ae1e
Fix SETCAP disabling
If you start without -DWITH_SETCAP=OFF, but then later re-run cmake,
SETCAP is still set (and so still gets tried).  This fixes it.
5 months ago
dr7ana 3fb9ba57e5 gossip new RC's on bfetch 5 months ago
dr7ana 30f62d2689 zero cost exception handling my ass
- rework bootstrap loading to move all logic into BootstrapList object
- ability to parse lists and dicts of bootstraps implemented
- netid parsing refers to the correct fallback
- cross your fingers boys here we go
5 months ago
dr7ana 5be09563fa address parsing of deprecated opts 5 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
5 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
5 months ago
dr7ana ea3c3e30e0 libquic vbump (stream redux, reauth updates, alpns->ustring) 5 months ago
dr7ana 9e31300d0f gossip storage, logs 5 months ago
Jason Rhinelander 6fdfb4cef6
Add `exact` argument to get_n_random_rcs
If given and true then return nullopt if we don't find the requested
number; otherwise return them even if there aren't as many as we
requested.
5 months ago
dr7ana 47be3cefe1 lets see which gets rejected 5 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.
5 months ago
dr7ana f41bcd00c6 loop call 5 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
5 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
5 months ago
dr7ana b63733381f libquic/oxenc vbumps 5 months ago
dr7ana 49794295b1 booyakasha 5 months ago
Jason Rhinelander 5c13a0e7b4
Revert me: print out the failed bootstrap response 5 months ago
dr7ana c71e767511 full mesh proto implementation 5 months ago
dr7ana 42aa92ab95 gossip fetch and response handling implemented 5 months ago
dr7ana ef1897c25a Added connection keepalive
- implemented ngtcp2 ping to keep connections alive
- fixed weird lambda captures
- fetch logic
- lets see what happens
5 months ago
dr7ana 13305f703f libquic vbump 5 months ago
dr7ana 575494c3da actually have rid in command registration 5 months ago
dr7ana 2c3763b61c libquic vbump 5 months ago
dr7ana 08c2c26c29 bootstrap tweaking 5 months ago
dr7ana d6e5aca572 libquic vbump 5 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!
5 months ago
dr7ana d016951d2f Fixed pending message queue weirdness 5 months ago
dr7ana fbc71847ef libquic vbump 5 months ago
dr7ana ea614ed141 better! 5 months ago
dr7ana 49dbdf1062 doofus 5 months ago
Jason Rhinelander 2f1917040c
Fix std::set move semantics
This is, apparently, the only way to move an element out of a std::set.
5 months ago
dr7ana 63c9bd6e63 update seeds before returning no 5 months ago
dr7ana eb971265c7 wrap dat 5 months ago
Jason Rhinelander b0d6d0cc2b
Bump libquic for register_command fix 5 months ago
Jason Rhinelander 4c7f9d080f
Replace GetBestNetIF with quic::Address version
It is now called get_best_public_address, and takes (bool, port)
argument to return an optional quic::Address to make life easier: the
caller now can just give the default port to set, and we keep the C
sockaddr* more constrained.
5 months ago
dr7ana 6cb2f57abd whatever 5 months ago
dr7ana b69f754599 come on already work already 5 months ago
dr7ana 94f307283f libquic vbump 5 months ago
dr7ana 7544436f6a who cares 5 months ago
Jason Rhinelander cece742cf3
Bump libquic for message move/copy fixes 5 months ago
Jason Rhinelander 6c58f07a41
Bump libquic 5 months ago
Jason Rhinelander a6da88cbbe
DRY duplicated code in RCRemote 5 months ago