1. 06 Feb, 2020 4 commits
  2. 06 Jan, 2020 1 commit
    • ale's avatar
      Let the configuration override connection and max request timeouts · c165311f
      ale authored
      Add the 'connect_timeout' and 'request_max_timeout' configuration
      fields, to control respectively the initial connection timeout, and
      the maximum time for each individual request. This allows fine-tuning
      of the expected performance of specific backends, for example to let
      optional backends fail fast.
      c165311f
  3. 17 Aug, 2019 1 commit
    • ale's avatar
      Add packages to generate and send emails · 370ffd97
      ale authored
      We're using language-specific Markdown templates to allow simultaneous
      generation of text and HTML for fancy multipart/alternative
      emails. The package also supports PGP/MIME for signatures (no
      encryption yet).
      370ffd97
  4. 15 Aug, 2019 1 commit
  5. 30 Jun, 2019 1 commit
    • ale's avatar
      Prevent premature cancellation of the HTTP request context · 54f0ac4c
      ale authored
      The Context in the http.Request is bound to the one we give it when
      calling balancedBackend.do(), so we were accessing it out of scope
      when calling the final json.Decode on the response body.
      
      This was not a problem for most *small* requests, as the response Body
      already contains all the data due to having read it along with the
      headers. However, larger response bodies would cause json.Decode to
      call a Read with what at that point is a canceled Context, so the Call
      function would return a mysterious "context canceled" error.
      
      (Note that this change introduces a minor, probably less annoying,
      issue, where we can't reset "resp" between successive calls so we may
      be invoking json.Decode on a non-pristine object if the first call
      fails in some circumstances).
      54f0ac4c
  6. 03 Apr, 2019 2 commits
  7. 27 Mar, 2019 1 commit
  8. 21 Mar, 2019 2 commits
  9. 17 Feb, 2019 1 commit
  10. 29 Jan, 2019 1 commit
  11. 25 Nov, 2018 2 commits
  12. 23 Nov, 2018 1 commit
  13. 22 Nov, 2018 2 commits
  14. 18 Nov, 2018 2 commits
  15. 16 Nov, 2018 1 commit
  16. 29 Oct, 2018 5 commits
  17. 26 Oct, 2018 1 commit
  18. 28 Aug, 2018 1 commit
  19. 17 Aug, 2018 2 commits
  20. 16 Aug, 2018 1 commit
    • ale's avatar
      Refactor the clientutil package · 193e29e6
      ale authored
      Implement a simpler API for the Backend interface, removing most old
      public methods and replacing them with a single Call() method, making
      the package look a bit more like an actual rpc package (so, hopefully,
      easier to replace in the future).
      193e29e6
  21. 15 Aug, 2018 1 commit
  22. 28 Jun, 2018 1 commit
    • ale's avatar
      Add package to manage user encryption keys · 9c87d6c3
      ale authored
      Encryption keys are stored themselves encrypted using a
      password (kdf+aes-siv construction).
      
      This package was moved over from git.autistici.org/id/keystore and
      completely refactored.
      9c87d6c3
  23. 27 Jun, 2018 1 commit
    • ale's avatar
      Nicer API for pwhash, and a benchmarking tool · 3a206d00
      ale authored
      The API makes it easier to set custom parameters on hashers. Default
      Argon2 parameters were also set to defaults more suited for a
      high-traffic authentication service.
      3a206d00
  24. 24 May, 2018 1 commit
  25. 01 Apr, 2018 1 commit
    • ale's avatar
      Minor http server improvements · c1ef74c7
      ale authored
      Fixes include:
      * only notify systemd after the network socket has been opened
      * add net/http/pprof debug handlers
      * add /health endpoint for Prometheus blackbox prober
      c1ef74c7
  26. 19 Mar, 2018 2 commits