1. 27 Jan, 2020 2 commits
  2. 17 Feb, 2019 1 commit
  3. 26 May, 2018 2 commits
  4. 18 May, 2018 1 commit
  5. 09 Feb, 2018 1 commit
  6. 02 Feb, 2018 1 commit
  7. 16 Nov, 2017 1 commit
  8. 28 Jul, 2017 1 commit
    • Luca Boccassi's avatar
      Problem: fd leak in tweetnacl with one ctx per thread · e015a0f8
      Luca Boccassi authored
      Solution: add a crypto [de-]initialiser, refcounted and serialised
      through critical sections.
      This is necessary as utility APIs such as zmq_curve_keypair also
      call into the sodium/tweetnacl libraries and need the initialisation
      outside of the zmq context.
      Also the libsodium documentation explicitly says that sodium_init
      must not be called concurrently from multiple threads, which could
      have happened until now. Also the randombytes_close function does
      not appear to be thread safe either.
      This change guarantees that the library is initialised only once at
      any given time across the whole program.
      Fixes #2632
      e015a0f8
  9. 27 Mar, 2017 2 commits
  10. 23 Mar, 2017 1 commit
  11. 16 Mar, 2017 1 commit
  12. 25 Jan, 2017 1 commit
    • sigiesec's avatar
      Problem: zmq_z85_decode does not validate its input (#2322) · c6c21cf1
      sigiesec authored
      * Problem: zmq_z85_decode does not validate its input
      Solution: added checks for invalid characters and overflows
      
      * Added tests, added further check for range overflow, removed (multiple) calls to strlen
      
      * Problem: gcc fails to build
      Solution: added missing include directive
      
      * Added VS2015 test_utils_z85 project
      
      * Fixed indentation and copyright notice
      
      * Resolved garbage from merge
      
      * Revert "Added VS2015 test_utils_z85 project"
      
      This reverts commit c58b3c664c144326e77135aa1184b6f0dee11143.
      
      * Problem: test calls zmq_z85_decode with a NULL dest
      Solution: call zmq_z85_decode with a properly sized buffer
      
      * Problem: tests for zmq_z85_* scattered over two files
      Solution: merged files
      
      * Removed reference to removed test file from CMakeLists.txt
      
      * Problem: Missing include directive to stdint.h
      Solution: Added include directive
      
      * Define __STDC_LIMIT_MACROS before including stdint.h
      
      * Problem: Wrong variable is checked for invalid character marker
      Solution: Use correct variable
      c6c21cf1
  13. 19 May, 2016 2 commits
  14. 14 May, 2016 1 commit
  15. 25 Apr, 2016 1 commit
  16. 30 Mar, 2016 1 commit
  17. 18 Feb, 2016 1 commit
  18. 11 Feb, 2016 2 commits
    • Pieter Hintjens's avatar
      Problem: tweetnacl sources are a mess · f8ed793f
      Pieter Hintjens authored
      - they have no copyright / license statement
      - they are in some randomish directory structure
      - they are a mix of postable and non-portable files
      - they do not conform to conditional compile environment
      
      Overall, it makes it rather more work than needed, in build scripts.
      
      Solution: clean up tweetnacl sauce.
      
      - merged code into single tweetnacl.c and .h
      - standard copyright header, DJB to AUTHORS
      - moved into src/ along with all other source files
      - all system and conditional compilation hidden in these files
      - thus, they can be compiled and packaged in all cases
      - ZMQ_USE_TWEETNACL is set when we're using built-in tweetnacl
      - HAVE_LIBSODIUM is set when we're using external libsodium
      f8ed793f
    • Pieter Hintjens's avatar
      Problem: use of libsodium vs. tweetnacl is confused · b49a6041
      Pieter Hintjens authored
      It's unclear which we need and in the source code, conditional code
      treats tweetnacl as a subclass of libsodium, which is inaccurate.
      
      Solution: redesign the configure/cmake API for this:
      
      * tweetnacl is present by default and cannot be enabled
      * libsodium can be enabled using --with-libsodium, which replaces
        the built-in tweetnacl
      * CURVE encryption can be disabled entirely using --enable-curve=no
      
      The macros we define in platform.hpp are:
      
          ZMQ_HAVE_CURVE    1        //  When CURVE is enabled
          HAVE_LIBSODIUM    1        //  When we are using libsodium
          HAVE_TWEETNACL    1        //  When we're using tweetnacl (default)
      
      As of this patch, the default build of libzmq always has CURVE
      security, and always uses tweetnacl.
      b49a6041
  19. 01 Feb, 2016 1 commit
  20. 28 Jan, 2016 1 commit
  21. 21 Aug, 2015 1 commit
  22. 16 Aug, 2015 1 commit
  23. 02 Jun, 2015 1 commit
  24. 22 Apr, 2015 1 commit
  25. 22 Jan, 2015 1 commit
  26. 23 Dec, 2014 2 commits
  27. 13 Aug, 2014 1 commit
  28. 01 May, 2014 1 commit
  29. 18 Jan, 2014 1 commit
  30. 02 Jan, 2014 1 commit
  31. 04 Nov, 2013 2 commits
  32. 29 Sep, 2013 2 commits