1. 21 Dec, 2017 2 commits
    • 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
    • Marek Vavruša's avatar
      lib/rplan: remember request context in each query · 26adb0b0
      Marek Vavruša authored
      This doesn't affect any of the objects lifetime, just provides a
      convenience for logging as some subsystems take only pointer of queries
      not the request object.
      26adb0b0
  2. 08 Dec, 2017 1 commit
    • Vitezslav Kriz's avatar
      use monotonic time · 0abbe1f4
      Vitezslav Kriz authored
      Monotonic time from libuv function uv_now (wrapped in kr_now) is
      used for query timeout, stats and RTT in reputation cache.
      
      Cache, DNSSEC Validation and Cookies use real time.
      0abbe1f4
  3. 07 Dec, 2017 1 commit
    • Petr Špaček's avatar
      rplan: fix kr_qflags_*() to work with more than 32 flags · 4f79b91d
      Petr Špaček authored
      Originally division around sizeof(uint32_t) caused silent truncation
      for struct kr_qflags with sizes not multiple of 4 bytes.
      
      Attempts to optimize using uint32_t blocks could lead to read/write
      beyond end of uint32_t so I'm not willing to risk it.
      
      Also, the code was refactored to avoid duplication between _set and _clear.
      Quick look into assembly produced by gcc 7.2.1 with -O2 on x86_64 confirms that
      all auxiliary functions got inlined so there are not extra function calls.
      
      Unit tests are attached. These fail on the previous version of _set() and
      _clear() and work now.
      4f79b91d
  4. 05 Dec, 2017 1 commit
  5. 11 Sep, 2017 1 commit
  6. 07 Sep, 2017 1 commit
  7. 01 Aug, 2017 5 commits
  8. 30 Jun, 2017 1 commit
  9. 01 Jun, 2017 2 commits
  10. 25 Jan, 2017 1 commit
  11. 11 Jan, 2017 1 commit
  12. 12 Dec, 2016 1 commit
  13. 24 Oct, 2016 1 commit
  14. 25 Aug, 2016 1 commit
  15. 11 Aug, 2016 5 commits
  16. 16 Jul, 2016 1 commit
  17. 12 Jul, 2016 1 commit
  18. 17 Dec, 2015 1 commit
  19. 10 Dec, 2015 1 commit
  20. 03 Dec, 2015 1 commit
  21. 25 Nov, 2015 1 commit
    • Marek Vavruša's avatar
      build: amalgamated build support with AMALG=1 · af4254d1
      Marek Vavruša authored
      amalgamated build concatenates all files into a single .c file to
      allow compiler see all symbols and produce possibly smaller code.
      for binary distributions this is what you want, as it's faster but
      may consume more memory during compilation.
      it however cannot do incremental builds.
      af4254d1
  22. 15 Oct, 2015 1 commit
  23. 13 Oct, 2015 1 commit
  24. 29 Sep, 2015 1 commit
  25. 22 Sep, 2015 1 commit
  26. 15 Sep, 2015 1 commit
  27. 03 Aug, 2015 1 commit
  28. 19 Jul, 2015 1 commit
  29. 30 Jun, 2015 1 commit
  30. 25 Jun, 2015 1 commit