1. 07 Feb, 2016 1 commit
  2. 06 Feb, 2016 1 commit
  3. 05 Feb, 2016 1 commit
  4. 28 Jan, 2016 1 commit
  5. 20 Nov, 2015 1 commit
  6. 11 Sep, 2015 2 commits
  7. 06 Sep, 2015 1 commit
  8. 21 Aug, 2015 2 commits
  9. 19 Aug, 2015 1 commit
    • Kapp Arnaud's avatar
      Problem: Identity frame from router has no metadata · 370b8c9b
      Kapp Arnaud authored
      The routing id (identity) frame return when reading from
      a router doesn't have the same metadata as the "real"
      message that follows.
      For example, The ZAP "User-Id" property is missing.
      
      This patch attach the "data message"'s metadata
      to the "identity message" when it is read from the router.
      370b8c9b
  10. 14 Aug, 2015 1 commit
  11. 02 Jun, 2015 1 commit
  12. 23 Jan, 2015 1 commit
    • Pieter Hintjens's avatar
      Problem: commit afb24b53 broke ZMQ_STREAM contract · 6ced7027
      Pieter Hintjens authored
      Symptom is that ZMQ_STREAM sockets in 4.1.0 and 4.1.1 generate zero
      sized messages on each new connection, unlike 4.0.x which did not do
      this.
      
      Person who made this commit also changed test cases so that contract
      breakage did not show. Same person was later banned for persistently
      poor form in CZMQ contributions.
      
      Solution: enable connect notifications on ZMQ_STREAM sockets using a
      new ZMQ_STREAM_NOTIFY setting. By default, socket does not deliver
      notifications, and behaves as in 4.0.x.
      
      Fixes #1316
      6ced7027
  13. 22 Jan, 2015 1 commit
  14. 20 Jan, 2015 1 commit
    • Topher Brown's avatar
      Close messages that failed to send · 866a0465
      Topher Brown authored
      pipe_t.write only takes control of the underlying message memory when it
      succeeds. When it returns failure, we must close the message ourselves to
      clean up that memory.
      
      This patch is sponsored by FarSounder, Inc (farsounder.com)
      866a0465
  15. 09 Jan, 2015 2 commits
  16. 08 Jan, 2015 1 commit
  17. 30 Apr, 2014 1 commit
  18. 21 Jan, 2014 1 commit
  19. 20 Jan, 2014 1 commit
  20. 19 Jan, 2014 3 commits
  21. 17 Jan, 2014 1 commit
    • Tim M's avatar
      Both STREAM and ROUTER sockets suffer from a naming problem on outbound… · 5d4860ea
      Tim M authored
      Both STREAM and ROUTER sockets suffer from a naming problem on outbound connections. While these connections can be created, they can't be immediately used. Traffic must be received before it can be sent. This prevents practical, minimal usage of STREAM or ROUTER as a true N fan in/out socket.
      
      This change simply provides the user with a socket option that sets a user defined name of the next outbound connection:
      
      zmq_setsockopt(routerSock,ZMQ_NEXT_IDENTITY,"myname",6);
      if(0 > zmq_connect(routerSock,"tcp://127.0.0.1:1234")) return 1;
      ret = zmq_send(routerSock,"myname",6,ZMQ_SNDMORE);
      zmq_send(routerSock,b.mem,b.used,0);
      
      In this example, the socket is immediately given the name "myname", and is capable of immediately sending traffic.
      
      This approach is more effective in three ways:
      1) It prevents all sorts of malicious peer naming attacks that can cause undefined behavior in existing ROUTER connections. (Two connections are made that both transmit the same name to the ROUTER, the ROUTER behavior is undefined)
      2) It allows immediate control of connections made to external parties for STREAM sockets. Something that is not possible right now. Before an outbound connection had no name for STREAM or ROUTER sockets because outbound connections cannot be sent to without first receiving traffic.
      3) It is simpler and more general than expecting two ROUTER sockets to handshake on assigned connection names. Plus it allows inline sending to new connections on ROUTER.
      5d4860ea
  22. 12 Jan, 2014 1 commit
  23. 02 Jan, 2014 1 commit
  24. 01 Jan, 2014 2 commits
  25. 01 Nov, 2013 1 commit
  26. 31 Oct, 2013 1 commit
  27. 28 Oct, 2013 1 commit
  28. 31 Aug, 2013 1 commit
    • Shawn J. Goff's avatar
      Change name of icanhasall to subscribe_to_all · 6a18f595
      Shawn J. Goff authored
      icanhasall is cute (for now), but the effect of the variable is clear
      only after tracking down its origin reading the commit. This change is
      intended to make it easier for people to have some intuition about its
      effect from its name.
      6a18f595
  29. 24 Aug, 2013 1 commit
    • Evan Burkitt's avatar
      get to clean compile under vs2012 · eaf227d4
      Evan Burkitt authored
      Added some missing (but existing in branch) files to libzmq11 project needed
      to compile as static library by VS2012 (at least), and fixed some warnings.
      One warning remains in raw_decoder.cpp, which I'm leaving for now because I'm
      not sure how project owners would like to fix it.
      eaf227d4
  30. 29 Jun, 2013 2 commits
  31. 27 Jun, 2013 1 commit
    • Pieter Hintjens's avatar
      Added ZMQ_STREAM socket type · ad779379
      Pieter Hintjens authored
      - designed for TCP clients and servers
      - added HTTP client / server example in tests/test_stream.cpp
      - same as ZMQ_ROUTER + ZMQ_ROUTER_RAW + ZMQ_ROUTER_MANDATORY
      - includes b893ce set ZMQ_IDENTITY on outgoing connect
      - deprecates ZMQ_ROUTER_RAW
      ad779379
  32. 23 Jun, 2013 1 commit
    • Gavin's avatar
      Store identity for raw socket · b893ce25
      Gavin authored
      Identity stored during connect procedure. Can be read using
      zmq_getsockopt and used as the identity frame when sending messages.
      This allows the implementation of a raw socket client.
      b893ce25
  33. 10 Jun, 2013 1 commit