[zeromq-dev] Router drops empty first frame on inproc://

Ian Barber ian.barber at gmail.com
Tue Feb 4 23:41:58 CET 2014


Not sure that codes the root cause there, though it may be swallowing the
part its been around for a while. Suspicious its the changes to allow
connect before bind on inproc playing badly with something, Worth a look to
see if its the recv_identity type options not being picked up properly in
ctx:connect_inproc_sockets.

Ian


On 4 February 2014 20:13, Pieter Hintjens <ph at imatix.com> wrote:

> Hi all,
>
> Issue https://github.com/zeromq/libzmq/issues/872 causes message
> corruption over inproc and dealer-router.
>
> Test case is at:
>
> https://github.com/zeromq/issues/commit/58bd49421e8b2d06761eda838cbe311b754d7f62
>
> The fault is IMO in router.cpp, around line 414:
>
>         if (msg.size () == 0) {
>             //  Fall back on the auto-generation
>             unsigned char buf [5];
>             buf [0] = 0;
>             put_uint32 (buf + 1, next_rid++);
>             identity = blob_t (buf, sizeof buf);
>             msg.close ();
>         }
>
> which replaces an empty initial message with an ID frame. If the first
> message isn't empty, the ID frame isn't generated at all.
>
> Anyone have an idea?
>
> -Pieter
> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev at lists.zeromq.org
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20140204/02f6c34e/attachment.htm>


More information about the zeromq-dev mailing list