[zeromq-dev] zmq_unbind fails on inproc?
ph at imatix.com
Tue Feb 19 19:34:34 CET 2013
Thanks for making the test cases. What would be better, ENOENT or EINVAL?
On Tue, Feb 19, 2013 at 3:30 PM, Charles Remes <lists at chuckremes.com> wrote:
> Pieter, thank you for confirming the problem.
> I have opened an issue for this (LIBZMQ-507) and added code to reproduce the problem to the issues repository under the same issue number.
> While messing with this I also discovered two other minor problems. The zmq_unbind and zmq_disconnect functions do not set zmq_errno to EINVAL when given an unknown endpoint like the documentation suggests. Instead, they set zmq_errno to ENOENT. I have opened issues for each of these and provided repro code too. I am not sure these are library bugs or documentation bugs. :)
> On Feb 19, 2013, at 12:39 AM, Pieter Hintjens <ph at imatix.com> wrote:
>> I can confirm this fails on Linux in C. The sleep is irrelevant since
>> connect/bind on inproc happen immediately.
>> On Mon, Feb 18, 2013 at 11:57 PM, Charles Remes <lists at chuckremes.com> wrote:
>>> libzmq: 3.2.2
>>> OS: OSX 10.8.2
>>> I'd appreciate it if someone else could confirm that calling zmq_unbind on an inproc transport always fails (it works for tpc and ipc without fail). It doesn't matter what socket type is under test, nor does it matter if you "sleep" to give the io thread time to complete the zmq_bind call.
>>> rc = LibZMQ.zmq_bind(socket, "inproc://some_address");
>>> assert(rc == 0);
>>> rc = LibZMQ.zmq_unbind(@socket, "inproc://some_address");
>>> assert(rc == 0); // zmq_errno returns ENOENT on OSX
>>> If someone else can confirm this, I'll open a ticket. If I am doing some stupidly wrong, let me know that too. :)
>>> zeromq-dev mailing list
>>> zeromq-dev at lists.zeromq.org
>> zeromq-dev mailing list
>> zeromq-dev at lists.zeromq.org
> zeromq-dev mailing list
> zeromq-dev at lists.zeromq.org
More information about the zeromq-dev