1. 23 Nov, 2019 3 commits
  2. 18 Nov, 2019 2 commits
  3. 07 Nov, 2019 1 commit
    • Witold Krecicki's avatar
      netmgr: libuv-based network manager · 70397f9d
      Witold Krecicki authored
      This is a replacement for the existing isc_socket and isc_socketmgr
      implementation. It uses libuv for asynchronous network communication;
      "networker" objects will be distributed across worker threads reading
      incoming packets and sending them for processing.
      
      UDP listener sockets automatically create an array of "child" sockets
      so each worker can listen separately.
      
      TCP sockets are shared amongst worker threads.
      
      A TCPDNS socket is a wrapper around a TCP socket, which handles the
      the two-byte length field at the beginning of DNS messages over TCP.
      
      (Other wrapper socket types can be implemented in the future to handle
      DNS over TLS, DNS over HTTPS, etc.)
      70397f9d