1. 10 Jul, 2019 1 commit
  2. 13 Jun, 2019 2 commits
  3. 12 Mar, 2019 1 commit
  4. 26 Nov, 2018 2 commits
    • Vladimír Čunát's avatar
      QRVERBOSE: move more code into a function, add docs · c5a90fd1
      Vladimír Čunát authored
      There's only very little that makes sense to "inline".
      My understanding that it makes sense to have such heavier
      optimization only for the case when no verbose logging is done.
      This might actually help due to decreasing code size.
      c5a90fd1
    • Vladimír Čunát's avatar
      QRVERBOSE: avoid a -Wpedantic warning · 934b5f59
      Vladimír Čunát authored
      It's about a hundred of them.  The price is making two printf calls
      instead of one.  That seems acceptable; these warning tools can help us
      in future, and the likelihood of mixing outputs from different processes
      seems relatively small.
      934b5f59
  5. 21 Nov, 2018 1 commit
  6. 12 Nov, 2018 1 commit
  7. 12 Oct, 2018 2 commits
  8. 23 Apr, 2018 1 commit
    • Marek Vavruša's avatar
      add bindings for the checkout layer · 98c8d353
      Marek Vavruša authored
      This one was missing from the current bindings. The checkout layer
      runs when the worker attempts to send a DNS query to given upstream
      when the address is already determined. The layer can add EDNS options
      or update outbound query, or block particular addresses / protocol.
      98c8d353
  9. 21 Dec, 2017 1 commit
    • Marek Vavruša's avatar
      lib: added support for trace_log for verbose messages · 393b738a
      Marek Vavruša authored
      The `QRVERBOSE` macro uses the `query` pointer to find out whether the
      request has trace log enabled. If it does, it uses trace log to log verbose messages using that callback (regardless of whether verbose mode is set or not).
      
      This required changing of structure printing functions to formatting functions returning textual representation of the objects (dname, rrset, pkt).
      This is potentially slower as creates heap objects, but it doesn't happen
      in the hotpath so it doesn't really matter for verbose logs.
      393b738a
  10. 17 May, 2017 1 commit
  11. 25 Jan, 2017 1 commit
  12. 13 Jan, 2017 2 commits
  13. 12 Dec, 2016 1 commit
  14. 07 Dec, 2016 2 commits
  15. 08 Nov, 2016 2 commits
    • Vladimír Čunát's avatar
      layer: refactor and better describe the API · cc47973e
      Vladimír Čunát authored
      - The API and ABI for modules changes slightly (details below).
        KR_MODULE_API is bumped to avoid loading incompatible code.
        We have bumped libkres ABIVER since the last release 1.1.1,
        so leaving that one intact.
      
      - Make KR_STATE_YIELD not reuse 0 value anymore.
        It's easy to e.g. return kr_ok() by mistake.
      - struct kr_layer_t:
        * ::mm was unused, uninitialized, etc.
        * Make ::state an int, as it was everywhere else.
        * void *data was ugly and always containing struct kr_request *
      - struct kr_layer_api:
        * Drop the void* parameter from ::begin, as it was only used
          for the request which is available as ctx->req anyway
          (formerly ctx->data).
        * Drop ::fail.  It wasn't even called.  Modules can watch for
          KR_STATE_FAIL in ::finish.
      - Document the apparent meaning of the layer interface, deduced mainly
        from the way it's used in the code.  Caveats:
        * enum knot_layer_state handling seems to assume that it holds exactly
          one of the possibilities at a time.  The cookie module does NOT
          follow that (intentionally), apparently depending on the exact
          implementation of the handling at that moment.  It feels fragile.
        * I was unable to deduce a plausible description of when ::reset is
          called.  It's practically unused in modules, too.
      cc47973e
    • Vladimír Čunát's avatar
      layer: rename knot_ identifiers that are private now · 4ad98bff
      Vladimír Čunát authored
      It causes lots of line changes, but it would be confusing to keep the
      current state over long term.
      4ad98bff
  16. 16 Jul, 2016 1 commit
  17. 12 Jul, 2016 1 commit
  18. 10 Dec, 2015 1 commit
  19. 14 Oct, 2015 1 commit
  20. 13 Oct, 2015 1 commit
  21. 15 Sep, 2015 1 commit
  22. 03 Aug, 2015 1 commit
  23. 05 May, 2015 1 commit
  24. 22 Apr, 2015 2 commits
  25. 18 Apr, 2015 1 commit
  26. 10 Apr, 2015 1 commit
  27. 27 Mar, 2015 1 commit
  28. 21 Mar, 2015 1 commit
  29. 19 Mar, 2015 1 commit
  30. 18 Mar, 2015 1 commit
  31. 15 Feb, 2015 1 commit
  32. 30 Dec, 2014 1 commit
  33. 29 Dec, 2014 1 commit
    • Marek Vavruša's avatar
      reworked query resolution · 1093ce48
      Marek Vavruša authored
      - cache is now fully optional, resolution works without cache as well
      - proper mempool per each request, not mixed
      - zone cut resolution doesn't need any per-context memory
      - now it's possible to do qname minimization
      - rplan keeps tabs on resolved queries
      - added documentation etc.
      1093ce48