1. 04 Apr, 2017 1 commit
  2. 27 Mar, 2017 1 commit
  3. 26 Mar, 2017 1 commit
  4. 19 Jan, 2017 1 commit
  5. 15 Dec, 2016 1 commit
  6. 10 Dec, 2016 1 commit
  7. 21 Nov, 2016 1 commit
  8. 31 Oct, 2016 1 commit
  9. 04 Oct, 2016 1 commit
  10. 01 Oct, 2016 1 commit
  11. 29 Sep, 2016 3 commits
    • Min RK's avatar
      allow duplicate entries in zmq_poller_poll · fb5a04e2
      Min RK authored
      This should restore full compatibility with earlier zmq_poll behavior.
      
      It complicates things a little bit, as collisions must be detected, and when collisions are found:
      
      - event masks must be merged
      - pollitems, events arrays are no longer co-ordered
      
      Reverts the recent zmq_proxy patch to workaround the lack of repeat-item support in zmq_poll that is now fixed.
      fb5a04e2
    • Min RK's avatar
      zmq_poll returns 0 on timeout · 310dafbc
      Min RK authored
      not -1, ETIMEDOUT like zmq_poller
      310dafbc
    • Min RK's avatar
      socket_poller::wait returns only triggered events · 718608ce
      Min RK authored
      Return value is the number of events found. This also propagates to the return value of zmq_poller_wait_all.
      
      zmq_poller_wait was only returning events on the first-registered socket.
      718608ce
  12. 28 Sep, 2016 2 commits
  13. 27 Sep, 2016 3 commits
    • Min RK's avatar
      pass through poller events · ec750732
      Min RK authored
      instead of allocating a new, identical array and copying the data.
      
      This is only safe while zmq_poller_event_t and zmq::socket_poller_t::event_t are the same struct,
      which they presumably will remain.
      ec750732
    • Min RK's avatar
      add n_events argument to zmq_poller_wait_all · de7fc1fc
      Min RK authored
      avoids unnecessary heap allocations, races on the number of items
      de7fc1fc
    • Min RK's avatar
      Problem: zmq_poller only signals one event · 2bc97966
      Min RK authored
      Solution: zmq_poller_wait_all signals all events
      
      allows signaling multiple events with one call to zmq_poller_wait_all
      rather than emitting only one event.
      
      this prepares for zmq_poll being based on zmq_poller,
      which requires events for all sockets rather than just one.
      2bc97966
  14. 11 Jun, 2016 1 commit
    • Michael Lutz's avatar
      Problem: Windows performance is not optimal due to select(). · 7a6ff07a
      Michael Lutz authored
      Solution: Provide poll() for Windows as well. This is a build option that
      defaults to off as the resulting binary will only run on Windows Vista or
      newer.
      
      This is not tested with alternative Winsock service providers like VMCI,
      but the documentation for WSAPoll does not mention limitations.
      
      On my local machine, throughput improves by ~10 % (20 simultaneous
      remote_thr workes to one local_thr, 10 byte messages), while latency
      improves by ~30 % (measured with remote/local_lat).
      7a6ff07a
  15. 14 May, 2016 1 commit
  16. 12 May, 2016 1 commit
    • hitstergtd's avatar
      Problem: zmq_poller_destroy parameter checking · 477cc1cb
      hitstergtd authored
      Solution:
      - Add checks for **poller_p_ to ensure that we do not segfault when either it
        or the value within it are NULL
      - Add tests for the above and increase error state coverage
      477cc1cb
  17. 04 May, 2016 2 commits
  18. 01 May, 2016 1 commit
    • hitstergtd's avatar
      Problem: multiple issues with sendiov/recviov · e4539778
      hitstergtd authored
      Solution:
      - Add check for the [count] parameter in zmq_sendiov() and zmq_recviov()
      - Use and add test for zmq_sendiov() in tests/test_iov.cpp
      - Add error state tests for zmq_sendiov() in tests/test_iov.cpp
      - Add error state tests for zmq_recviov() in tests/test_iov.cpp
      - Cleanup tests/test_iov.cpp for style, consistency and clarity
      - Generally improve test coverage for both API methods
      
      Hat-tip:
      @somdoron, @bluca
      e4539778
  19. 26 Apr, 2016 1 commit
  20. 12 Apr, 2016 1 commit
  21. 21 Feb, 2016 2 commits
  22. 18 Feb, 2016 1 commit
  23. 11 Feb, 2016 1 commit
    • 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
  24. 09 Feb, 2016 1 commit
    • Pieter Hintjens's avatar
      Problem: test_large_msg kills my system temporarily · 62c66ae7
      Pieter Hintjens authored
      And I'm on a reasonably sized laptop. I think allocating INT_MAX
      memory is dangerous in a test case.
      
      Solution: expose this as a context option. I've used ZMQ_MAX_MSGSZ
      and documented it and implemented the API. However I don't know how
      to get the parent context for a socket, so the code in zmq.cpp is
      still unfinished.
      62c66ae7
  25. 06 Feb, 2016 1 commit
  26. 05 Feb, 2016 1 commit
  27. 29 Jan, 2016 1 commit
  28. 28 Jan, 2016 1 commit
  29. 27 Jan, 2016 1 commit
  30. 20 Jan, 2016 2 commits
  31. 29 Dec, 2015 1 commit
  32. 21 Dec, 2015 1 commit