nn_errno − return most recent error (compatible API)
#include <nanomsg/nn.h>
int nn_errno(void);
The nn_errno() function returns the error number corresponding to the most recent failed operation by the calling thread.
Note
This function is provided for API compatibility with legacy libnanomsg. Consider using the relevant modern API instead.
Important
The error numbers returned from this function may include errors caused by system functions, which overlap the usual errno variable, and this function simply returns the value of errno. However, the values returned may include numeric values that are not defined by the system, but are unique to libnanomsg, such as EFSM.
This library implements the following error numbers, in addition to any others that might be set for errno by the underlying system:
This function returns the value of errno. If no operation has failed, then this will be zero.
EINTR
Operation interrupted.
ENOMEM
Insufficient memory.
EINVAL
Invalid argument.
EBUSY
Resource is busy.
ETIMEDOUT
Operation timed out.
ECONNREFUSED
Connection refused by peer.
EBADF
Invalid or closed socket.
EAGAIN
Operation would block.
ENOTSUP
Protocol or option not supported.
EADDRINUSE
Requested address is already in use.
EFSM
Protocol state incorrect.
EPROTO
Protocol error.
EHOSTUNREACH
Remote peer is unreachable.
EADDRNOTAVAIL
Requested address is not available.
EACCES
Permission denied.
EMSGSIZE
Message is too large.
ECONNABORTED
Connection attempt aborted.
ECONNRESET
Connection reset by peer.
EEXIST
Resource already exists.
EMFILE
Too many open files.
ENOSPC
Insufficient persistent storage.
nn_strerror(3compat), nng_compat(3compat), nng(7)