1. 30 Dec, 2016 1 commit
    • Luca Boccassi's avatar
      Problem: new DRAFT monitor events returned even without --enable-draft · c0e2bc4e
      Luca Boccassi authored
      Solution: wrap the event triggering in the DRAFT ifdef as well as the
      defines. This ensures that the event are returned only if the
      library was built with DRAFTs enabled.
      
      Also update the test case to expect the new events since it uses
      the catch-all mask. Although the sequence of event is different and
      this might be considered as an API breakage, using the catch-all
      ZMQ_EVENT_ALL mask implies that, well, all events are monitored so
      it's normal that new ones will be added.
      Users that don't want this kind of behaviour to change can simply
      monitor only the event that they care about.
      c0e2bc4e
  2. 01 May, 2016 1 commit
  3. 28 Jan, 2016 1 commit
  4. 28 Jul, 2015 1 commit
    • Brian Silverman's avatar
      Fix test flakiness. · e449d7bf
      Brian Silverman authored
      I'm pretty sure this is an issue with the test being too picky and not a
      bug, but the behavior in this situation is not well documented.
      e449d7bf
  5. 02 Jun, 2015 1 commit
  6. 22 Jan, 2015 1 commit
  7. 28 Apr, 2014 1 commit
    • Pieter Hintjens's avatar
      Problem: zmq_socket_monitor code is dirty · 9753de85
      Pieter Hintjens authored
      Specifically:
      
      * zmq_event_t should not be used internally in libzmq, it was
        meant to be an outward facing structure.
      
      * In 4.x, zmq_event_t does not correspond to monitor events, so
        I removed the structure entirely.
      
      * man page for zmq_socket_monitor is incomplete and the example
        code was particularly nasty.
      
      * test_monitor.cpp needed rewriting, it was not clean.
      9753de85
  8. 02 Jan, 2014 1 commit
  9. 06 Nov, 2013 1 commit
    • Pieter Hintjens's avatar
      Removed over-long pauses in tests · 5b60540e
      Pieter Hintjens authored
      - used msleep (10) in most places instead of zmq_sleep (1)
      - may cause failures on slower machines
      - to change, modify SETTLE_TIME in testutil.h
      - tested down to 1 msec on fast boxes
      5b60540e
  10. 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
  11. 17 Aug, 2013 2 commits
  12. 01 Jul, 2013 2 commits
  13. 22 Jun, 2013 2 commits
  14. 12 Mar, 2013 1 commit
  15. 08 Mar, 2013 2 commits
  16. 31 Jan, 2013 2 commits
  17. 21 Sep, 2012 1 commit
  18. 06 Sep, 2012 1 commit
    • Arthur O'Dwyer's avatar
      Add "#undef NDEBUG" to all tests. · cf20932d
      Arthur O'Dwyer authored
      This change makes sure that even if the tests are built in a
      "release" configuration (with optimizations and NDEBUG turned on),
      the assertions won't get compiled out of the tests themselves.
      
      The C standard guarantees that the most recent inclusion of
      <assert.h> is the one that counts, so it's important that the
      "#undef NDEBUG/#include <assert.h>" come as the last thing in
      the block of header files.
      
      "testutil.hpp" includes <assert.h>, so I've left <assert.h> out
      of any test that #includes "testutil.hpp", just for the sake of
      brevity.
      cf20932d
  19. 27 Aug, 2012 1 commit
    • Arthur O'Dwyer's avatar
      Verify the value of the "void *s" passed to the monitor function. · c29aef4d
      Arthur O'Dwyer authored
      This formerly unused parameter actually represents the socket
      on which the event was received. As such, we should check that
      its value makes sense: it must be either "rep" or "req", and in
      the case of some kinds of events, it must be specifically one
      or the other.
      
      After this change, "s" is no longer unused.
      c29aef4d
  20. 23 Aug, 2012 1 commit
    • Arthur O'Dwyer's avatar
      Fix a bug reported on the mailing list. · f718d2be
      Arthur O'Dwyer authored
      Both memcmp and strcmp return zero on equal, nonzero on nonequal;
      so all of these tests were backwards.
      
      The original committer fixed the failure by comparing 22 bytes instead
      of the correct 21, so that the assertions would trigger only if the
      22nd byte happened to match exactly --- which was rare.
      
      The correct fix is to compare the right number of bytes with the
      right sense.  (I think all of the ".addr" fields are null-terminated,
      in which case it's more appropriate to use strcmp throughout.)
      f718d2be
  21. 04 Aug, 2012 1 commit
  22. 05 Jun, 2012 1 commit
  23. 22 May, 2012 1 commit
  24. 21 May, 2012 1 commit
  25. 20 May, 2012 2 commits
  26. 13 May, 2012 1 commit
    • KennyTM~'s avatar
      Allow the ZMQ_MONITOR code compilable on gcc 4.7 on Linux. · c995de65
      KennyTM~ authored
      The current ZMQ_MONITOR code does not compile in gcc 4.7, as -pedantic
      and -Werror are enabled, and ISO C++ doesn't allow casting between
      normal pointers (void*) and function pointers, as pedantically their
      size could be different. This caused the library not compilable. This
      commit workaround the problem by introducing one more indirection, i.e.
      instead of calling
      
          (void *)listener
      
      which is an error, we have to use
      
          *(void **)&listener
      
      which is an undefined behavior :) but works on most platforms
      
      Also, `optval_ = monitor` will not set the parameter in getsockopt(),
      and the extra casting caused the LHS to be an rvalue which again makes
      the code not compilable. The proper way is to pass a pointer of function
      pointer and assign with indirection, i.e. `*optval_ = monitor`.
      
      Also, fixed an asciidoc error in zmq_getsockopt.txt because the `~~~~`
      is too long.
      c995de65
  27. 04 May, 2012 1 commit