Commit Graph

8258 Commits (5469c9beb08a7adab8174015299b0ac5474d0305)
 

Author SHA1 Message Date
dr7ana 5469c9beb0 HAPPY NEW YEAR 9 months ago
dr7ana 4c336c9ea1 do not gossip client RCs! 9 months ago
dr7ana eaa853d04f client testing 9 months ago
dr7ana 0d8017d61d okay now lets try clients 9 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.
9 months ago
dr7ana 3fb9ba57e5 gossip new RC's on bfetch 9 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
9 months ago
dr7ana 5be09563fa address parsing of deprecated opts 9 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
9 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
9 months ago
dr7ana ea3c3e30e0 libquic vbump (stream redux, reauth updates, alpns->ustring) 9 months ago
dr7ana 9e31300d0f gossip storage, logs 9 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.
9 months ago
dr7ana 47be3cefe1 lets see which gets rejected 9 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.
9 months ago
dr7ana f41bcd00c6 loop call 9 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
9 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
9 months ago
dr7ana b63733381f libquic/oxenc vbumps 9 months ago
dr7ana 49794295b1 booyakasha 9 months ago
Jason Rhinelander 5c13a0e7b4
Revert me: print out the failed bootstrap response 9 months ago
dr7ana c71e767511 full mesh proto implementation 9 months ago
dr7ana 42aa92ab95 gossip fetch and response handling implemented 9 months ago
dr7ana ef1897c25a Added connection keepalive
- implemented ngtcp2 ping to keep connections alive
- fixed weird lambda captures
- fetch logic
- lets see what happens
9 months ago
dr7ana 13305f703f libquic vbump 9 months ago
dr7ana 575494c3da actually have rid in command registration 9 months ago
dr7ana 2c3763b61c libquic vbump 9 months ago
dr7ana 08c2c26c29 bootstrap tweaking 9 months ago
dr7ana d6e5aca572 libquic vbump 9 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!
9 months ago
dr7ana d016951d2f Fixed pending message queue weirdness 9 months ago
dr7ana fbc71847ef libquic vbump 9 months ago
dr7ana ea614ed141 better! 9 months ago
dr7ana 49dbdf1062 doofus 9 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.
9 months ago
dr7ana 63c9bd6e63 update seeds before returning no 9 months ago
dr7ana eb971265c7 wrap dat 9 months ago
Jason Rhinelander b0d6d0cc2b
Bump libquic for register_command fix 9 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.
9 months ago
dr7ana 6cb2f57abd whatever 9 months ago
dr7ana b69f754599 come on already work already 9 months ago
dr7ana 94f307283f libquic vbump 9 months ago
dr7ana 7544436f6a who cares 10 months ago
Jason Rhinelander cece742cf3
Bump libquic for message move/copy fixes 10 months ago
Jason Rhinelander 6c58f07a41
Bump libquic 10 months ago
Jason Rhinelander a6da88cbbe
DRY duplicated code in RCRemote 10 months ago
dr7ana 88b9d9f976 print but better 10 months ago
dr7ana f812d5471b send localrc, receive as remoterc 10 months ago
dr7ana 3c521c4923 log 10 months ago
Jason Rhinelander 3509693c49
Revert me: fix double-hex in debug output 10 months ago