1. 09 Feb, 2018 1 commit
  2. 02 Feb, 2018 1 commit
  3. 16 Nov, 2017 1 commit
  4. 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
  5. 27 Mar, 2017 2 commits
  6. 23 Mar, 2017 1 commit
  7. 16 Mar, 2017 1 commit
  8. 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
  9. 19 May, 2016 2 commits
  10. 14 May, 2016 1 commit
  11. 25 Apr, 2016 1 commit
  12. 30 Mar, 2016 1 commit
  13. 18 Feb, 2016 1 commit
  14. 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
  15. 01 Feb, 2016 1 commit
  16. 28 Jan, 2016 1 commit
  17. 21 Aug, 2015 1 commit
  18. 16 Aug, 2015 1 commit
  19. 02 Jun, 2015 1 commit
  20. 22 Apr, 2015 1 commit
  21. 22 Jan, 2015 1 commit
  22. 23 Dec, 2014 2 commits
  23. 13 Aug, 2014 1 commit
  24. 01 May, 2014 1 commit
  25. 18 Jan, 2014 1 commit
  26. 02 Jan, 2014 1 commit
  27. 04 Nov, 2013 2 commits
  28. 29 Sep, 2013 2 commits
  29. 15 Sep, 2013 1 commit
    • Pieter Hintjens's avatar
      Added z85 codec to ZMQ API · 576e3ca5
      Pieter Hintjens authored
      * Removed redundant Z85 code and include files from project
      * Simplified use of headers in test cases (now they all just use testutil.hpp)
      * Export zmq_z85_encode() and zmq_z85_decode() in API
      * Added man pages for these two functions
      576e3ca5
  30. 17 Aug, 2013 2 commits
  31. 12 Mar, 2013 1 commit
    • Pieter Hintjens's avatar
      Removed corporate advertisements from source file headers · f0f16505
      Pieter Hintjens authored
      Copyrights had become ads for Sustrik's corporate sponsors, going against the original
      agreement to share copyrights with the community (that agreement was: one line stating
      iMatix copyright + one reference to AUTHORS file). The proliferation of corporate ads
      is also unfair to the many individual authors. I've removed ALL corporate title from
      the source files so the copyright statements can now be centralized in AUTHORS and
      source files can be properly updated on an annual basis.
      f0f16505
  32. 01 Nov, 2011 1 commit
  33. 31 Oct, 2011 1 commit