1. 12 Oct, 2018 1 commit
  2. 02 Oct, 2018 1 commit
  3. 26 Sep, 2018 2 commits
  4. 24 Sep, 2018 1 commit
  5. 21 Sep, 2018 1 commit
  6. 20 Sep, 2018 2 commits
    • Dr. Matthias St. Pierre's avatar
      drbg_get_entropy: force a reseed before calling ssleay_rand_bytes() · f58001c3
      Dr. Matthias St. Pierre authored
      Fixes #7240
      
      In FIPS mode, the default FIPS DRBG uses the drbg_get_entropy()
      callback to reseed itself, which is provided by the wrapping
      libcrypto library. This callback in turn uses ssleay_rand_bytes()
      to generate random bytes.
      
      Now ssleay_rand_bytes() calls RAND_poll() once on first call to
      seed itself, but RAND_poll() is never called again (unless the
      application calls RAND_poll() explicitely). This implies that
      whenever the DRBG reseeds itself (which happens every 2^14
      generate requests) this happens without obtaining fresh random
      data from the operating system's entropy sources.
      
      This patch forces a reseed from system entropy sources on every
      call to drbg_get_entropy(). In contrary to the automatic reseeding
      of the DRBG in master, this reseeding does not break applications
      running in a chroot() environment (see c7504aeb
      
      ), because the
      SSLEAY PRNG does not maintain an error state. (It does not even
      check the return value of RAND_poll() on its instantiation.)
      
      In the worst case, if no random device is available for reseeding,
      no fresh entropy will be added to the SSLEAY PRNG but it will happily
      continue to generate random bytes as 'entropy' input for the DRBG's
      reseeding, which is just as good (or bad) as before this patch.
      
      To prevent ssleay_rand_bytes_from_system() (and hence RAND_poll())
      from being called twice during instantiation, a separate
      drbg_get_nonce() callback has been introduced, which is identical
      with the previous implementation of drbg_get_entropy().
      
      Reviewed-by: default avatarPaul Dale <paul.dale@oracle.com>
      Reviewed-by: default avatarBen Kaduk <kaduk@mit.edu>
      (Merged from https://github.com/openssl/openssl/pull/7259)
      f58001c3
    • Richard Levitte's avatar
      crypto/ui/ui_openssl.c: make sure to recognise ENXIO and EIO too · 79951b1d
      Richard Levitte authored
      
      
      These both indicate that the file descriptor we're trying to use as a
      terminal isn't, in fact, a terminal.
      
      Fixes #7271
      
      Reviewed-by: default avatarMatthias St. Pierre <Matthias.St.Pierre@ncp-e.com>
      (Merged from https://github.com/openssl/openssl/pull/7272)
      
      (cherry picked from commit 276bf862)
      (cherry picked from commit ad173035)
      79951b1d
  7. 11 Sep, 2018 2 commits
  8. 10 Sep, 2018 1 commit
  9. 04 Sep, 2018 5 commits
  10. 03 Sep, 2018 1 commit
  11. 02 Sep, 2018 1 commit
  12. 28 Aug, 2018 4 commits
  13. 27 Aug, 2018 1 commit
  14. 17 Aug, 2018 1 commit
  15. 14 Aug, 2018 7 commits
  16. 11 Aug, 2018 1 commit
  17. 10 Aug, 2018 3 commits
  18. 07 Aug, 2018 1 commit
  19. 01 Aug, 2018 4 commits