This documentation is for version v1.7.3 of NNG, but the latest released version is v1.8.0. see the documentation for v1.8.0 for the most up-to-date information.

nn_errno(3compat)

NAME

nn_errno - return most recent error (compatible API)

SYNOPSIS

#include <nanomsg/nn.h>

int nn_errno(void);

DESCRIPTION

The nn_errno() function returns the error number corresponding to the most recent failed operation by the calling thread.

This function is provided for API compatibility with legacy libnanomsg. Consider using the relevant modern API instead.
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:

RETURN VALUES

This function returns the value of errno. If no operation has failed, then this will be zero.

ERRORS

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.

SEE ALSO