1. 03 Feb, 2012 5 commits
    • skaller's avatar
      Set and arrange propagation of thread safe sockets flag. · 520ad3c2
      skaller authored
      We use a distinct context initialisation function to specify
      all sockets derived therefrom will be thread safe.
      
      However the inheritance is done exclusively in the C interface.
      This is not really correct, but it is chosen to minimise
      interference with the existing C++ code, including any
      construct or other calls within the C++ code base.
      Semantically the C++ code should be unchanged,
      physically some data structures and extra methods are
      provided by they're only used from the C binding.
      520ad3c2
    • skaller's avatar
      Thread Safe Sockets. · 988efbc7
      skaller authored
      1. Reorganise C API socket functions to eliminate bad practice
      of public functions calling other public functions. This should
      be done for msg's too but hasn't been in this patch.
      
      2. Reorganise code in C API socket functions so that the
      socket is cast on one line, the C++ function called on
      the next with the result retained, then the result is returned.
      
      This makes the code much simpler to read and also allows
      pre- and post- call hooks to be inserted easily.
      
      3. Insert pre- and post- call hooks which set and release
      a mutex iff the thread_safe flag is on.
      
      4. Add the thread_safe_flag to base_socket_t initialised to
      false to preserve existing semantics. Add an accessor for
      the flag, add a mutex, and add lock and unlock functions.
      
      Note: as yet no code to actually set the flag.
      988efbc7
    • skaller's avatar
      Add mission ; character · 4dd6ce06
      skaller authored
      4dd6ce06
    • Pieter Hintjens's avatar
      Merge pull request #233 from danielnorberg/master · dc50bf5d
      Pieter Hintjens authored
      LIBZMQ-300: free received subscription messages
      dc50bf5d
    • Daniel Norberg's avatar
      xpub: free received subscription messages · 79f753bf
      Daniel Norberg authored
      79f753bf
  2. 02 Feb, 2012 7 commits
  3. 30 Jan, 2012 3 commits
  4. 28 Jan, 2012 1 commit
  5. 27 Jan, 2012 10 commits
  6. 26 Jan, 2012 1 commit
  7. 19 Jan, 2012 1 commit
  8. 09 Jan, 2012 1 commit
  9. 04 Jan, 2012 1 commit
    • Martin Lucina's avatar
      Fix pgm_receiver.cpp: zmq_assert (pending_bytes == 0) (LIBZMQ-205) · c34a1443
      Martin Lucina authored
      This patch fixes the problem described in LIBZMQ-205. The assertion itself
      is probably caused by previously queued POLLIN events arriving after POLLIN
      has been disabled on the socket.
      
      The following additional bugs have been fixed as part of debugging this
      problem:
      
      - pgm_receiver_t does not flush messages written to the session in all
        cases which can lead to a stalled reader. Add calls to session->flush ()
        in the appropriate places.
      
      - ensure to restart polling when a pending message is flushed in
        activate_in ().
      Signed-off-by: 's avatarMartin Lucina <martin@lucina.net>
      c34a1443
  10. 03 Jan, 2012 2 commits
  11. 25 Dec, 2011 1 commit
  12. 21 Dec, 2011 1 commit
  13. 19 Dec, 2011 1 commit
  14. 18 Dec, 2011 5 commits