lokinet/llarp/router
Jeff 74362149eb
refactor dns subsystem
we want to be able to have multiple locally bound dns sockets in lokinet so
i restructured most of the dns subsystem in order to make this easier.

specifically, we have a new structure to dns subsystem:

* dns::QueryJob_Base

base type for holding a dns query and response with virtual methods
in charge of sending a reply to whoever requested.

* dns::PacketSource_Base

base type for reading and writing dns messages to and from wherever they came from

* dns::Resolver_Base

base type for filtering and handling of dns messages asynchronously.

* dns::Server

contextualized per endpoint dns object, responsible for all dns related isms.

this change hides all impelementation details of all of the dns components.
adds some more helper functions for parsing dns and dealing with OwnedBuffer.

overall dns becomes less of a pain with this new structure. probably.
2022-09-08 14:23:52 -04:00
..
abstractrouter.hpp clean up build helper scripts: 2022-07-20 13:36:04 -04:00
i_gossiper.hpp add gossip info to systemd status 2022-05-27 13:21:08 -04:00
i_outbound_message_handler.hpp Triggered pumping 2021-11-15 13:35:57 -04:00
i_outbound_session_maker.hpp Replace logging with oxen-logger 2022-07-15 22:17:59 -03:00
i_rc_lookup_handler.hpp separate white/grey list for active/decommissioned nodes. 2021-06-07 10:57:33 -04:00
outbound_message_handler.cpp Replace logging with oxen-logger 2022-07-15 22:17:59 -03:00
outbound_message_handler.hpp convert priority queues 2022-05-02 15:27:08 -04:00
outbound_session_maker.cpp * add establish fail enum 2021-07-05 09:09:20 -04:00
outbound_session_maker.hpp Replace ::Hash nested structs with std::hash specializations 2021-03-10 11:19:52 -04:00
rc_gossiper.cpp add gossip info to systemd status 2022-05-27 13:21:08 -04:00
rc_gossiper.hpp add gossip info to systemd status 2022-05-27 13:21:08 -04:00
rc_lookup_handler.cpp Simplifications & C++17 2021-11-14 10:11:00 -04:00
rc_lookup_handler.hpp separate white/grey list for active/decommissioned nodes. 2021-06-07 10:57:33 -04:00
route_poker.cpp refactor dns subsystem 2022-09-08 14:23:52 -04:00
route_poker.hpp refactor dns subsystem 2022-09-08 14:23:52 -04:00
router.cpp refactor dns subsystem 2022-09-08 14:23:52 -04:00
router.hpp refactor dns subsystem 2022-09-08 14:23:52 -04:00