1. 30 Jul, 2016 2 commits
  2. 09 Jun, 2016 1 commit
  3. 10 Apr, 2016 2 commits
  4. 14 Mar, 2016 1 commit
  5. 28 Feb, 2016 1 commit
  6. 18 Feb, 2016 1 commit
  7. 09 Feb, 2016 1 commit
  8. 08 Feb, 2016 1 commit
  9. 04 Feb, 2016 1 commit
  10. 28 Jan, 2016 1 commit
  11. 02 Jun, 2015 1 commit
  12. 22 Jan, 2015 1 commit
  13. 03 Jul, 2014 1 commit
  14. 02 Apr, 2014 1 commit
  15. 02 Jan, 2014 1 commit
  16. 20 Dec, 2013 1 commit
  17. 19 Dec, 2013 1 commit
  18. 06 Dec, 2013 1 commit
  19. 04 Dec, 2013 1 commit
    • Brandon Carpenter's avatar
      Intial IPC accept filter support. · 8662f44e
      Brandon Carpenter authored
      Adds sets of process (Linux only), user, and group IDs for filtering
      connections from peer processes over IPC transport.  If all of the
      filter sets are empty, every connection is accepted.  Otherwise,
      credentials for a connecting process are checked against the filter sets
      and the connection is only accepted if a match is found.
      
      This commit is part of LIBZMQ-568 and only adds the filter sets and
      implements the filter in the IPC accept method.  The interface for
      adding IDs to filter sets are included in a separate commit.
      
      IPC accept filtering is supported only on Linux and OS X.
      8662f44e
  20. 15 Jun, 2013 1 commit
  21. 17 May, 2013 1 commit
    • Pieter Hintjens's avatar
      plain_mechanism now uses options.as_server · f909b9c7
      Pieter Hintjens authored
      - we need to switch to PLAIN according to options.mechanism
      - we need to catch case when both peers are as-server (or neither is)
      - and to use username/password from options, for client
      f909b9c7
  22. 14 May, 2013 1 commit
    • Martin Hurton's avatar
      Implement ZMTP/3.0 PLAIN mechanism · 4eecda8a
      Martin Hurton authored
      This implements protocol handshake.
      We still need to design and implement 1) API changes so a user
      can set username and password, and 2) a mechanism for engine
      to authenticate users.
      4eecda8a
  23. 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
  24. 22 Jan, 2013 1 commit
  25. 21 Jan, 2013 1 commit
  26. 17 Nov, 2012 1 commit
  27. 30 Sep, 2012 1 commit
  28. 21 Sep, 2012 1 commit
  29. 04 Aug, 2012 1 commit
  30. 13 Jul, 2012 1 commit
  31. 11 Jul, 2012 1 commit
  32. 13 Jun, 2012 1 commit
  33. 12 Jun, 2012 2 commits
  34. 11 Jun, 2012 1 commit
  35. 05 Jun, 2012 1 commit
  36. 04 May, 2012 1 commit
  37. 21 Apr, 2012 1 commit
    • Sergey KHripchenko's avatar
      fixes for zmq_unbind() / zmq_disconnect() usage corner cases · 057fab09
      Sergey KHripchenko authored
      1. when we call zmq_bind()/zmq_connect() to create endpoint
      we send ourselfs(through launch_child()) command to process_own(endpoint)
      (and add it to own_t::owned)
      in the application thread we could call zmq_unbind() / zmq_disconnect() _BEFORE_
      we run process_own() in ZMQ thread and in this situation we will be unable to find it in
      own_t::owned. in other words own_t::owned.find(endpoint) will not be deleted but it will be deleted from
      socket_base_t::endpoints.
      
      2. when you zmq_unbind() the lisnening TCP/IPC socket was terminated only in destructor...
      so the whole ZMQ_LINGER time listening TCP/IPC socket was able to accept() new connections
      but unable to handle them.
      
      this all geting even worse since unfortunately zmq has a bug and '*_listener_t' object not terminated
      untill the socket's zmq_close().
      AT LEAST FOR PUSH SOCKETS.
      Everything is ok for SUB sockets.
      
      Easy to reproduce without my fix:
      
      zmq_socket(PUSH)
      zmq_bind(tcp);
      // connect to  it from PULL socket
      zmq_unbind(tcp);
      
      sleep(forever)
      
      // netstat -anp | grep 'tcp listening socket'
      
      With my fix you could see that after zmq_unbind(tcp) all previously connected tcp sessions
      will not be finished untill the zmq_close(socket) regardless of ZMQ_LINGER value.
      
      (*_listener_t terminates all owned session_base_t(connect=false) and they call pipe_t::terminate()
      which in turn should call session_base_t::terminated() but this never happens)
      057fab09