Open
Description
inline size_t send (const void *buf_, size_t len_, int flags_ = 0)
{
int nbytes = zmq_send (ptr, buf_, len_, flags_);
if (nbytes >= 0)
return (size_t) nbytes;
if (zmq_errno () == EAGAIN)
return 0;
throw error_t ();
}
For nbytes == 0
(e.g. for parts with size zero), the return is zero, but it's success. Nonetheless, a zero return is being used to mean EAGAIN.