<p>I am using zmq <code>PUSH</code> and <code>PULL</code> sockets. And recently started observing SIGABRT crash, in <code>zmq_poll()</code> operation.</p>
<p>The error/exit log is &quot;<em>Permission denied (src/tcp_connecter.cpp:361)</em>&quot;</p>
<pre><code>(gdb) bt
#0 0x00007ffff76d053f in raise () from /lib64/libc.so.6
#1 0x00007ffff76ba895 in abort () from /lib64/libc.so.6
#2 0x00007ffff7f59ace in zmq::zmq_abort(char const*) () from /lib64/libzmq.so.5
#3 0x00007ffff7f9ef36 in zmq::tcp_connecter_t::connect() () from /lib64/libzmq.so.5
#4 0x00007ffff7f9f060 in zmq::tcp_connecter_t::out_event() () from /lib64/libzmq.so.5
#5 0x00007ffff7f6bc2c in zmq::epoll_t::loop() () from /lib64/libzmq.so.5
#6 0x00007ffff7f9ffba in thread_routine () from /lib64/libzmq.so.5
#7 0x00007ffff75d058e in start_thread () from /lib64/libpthread.so.0
#8 0x00007ffff77956a3 in clone () from /lib64/libc.so.6
</code></pre>
<p>Could anyone help me here ??</p>
<p>Process is a part of a container running in Kubernates. And this issue started occuring suddenly. And couldn't be able to recover.</p>
<p>Thanks,</p>

Nithin Sen
<p>Meanwhile, I resolved the issue.</p>
<p>The zmq interface in host A was trying to connect to Host B. And above error is observed in Host A.</p>
<p>And this issue started occuring once after restarting HostB. And I could notice, there is an ip6table rule got added in HostB as part of its restart. This rule was doing &quot;reject with admin prohibited&quot; in INPUT and forward chain in HostB. (I have to search my notes for exact rule.)</p>
<p>As part of this, zmq client in HostA was ending up in above mentioned crash. I believe crash (SIGABRT) should not be solution for hitting such rule in peer end. Since SIGABRT exception is unable to handle in code.</p>
