NOTE: This documentation is for version 0.6-beta of nanomsg, but the latest released version is 1.0.0. Please see the documentation for 1.0.0 for the most up-to-date information.
nn_shutdown(3)

SYNOPSIS

#include <nanomsg/nn.h>

int nn_shutdown (int s, int how);

DESCRIPTION

Removes an endpoint from socket s. how parameter specifies the ID of the endpoint to remove as returned by prior call to nn_bind(3) or nn_connect(3). nn_shutdown() call will return immediately, however, the library will try to deliver any outstanding outbound messages to the endpoint for the time specified by NN_LINGER socket option.

RETURN VALUE

If the function succeeds zero is returned. Otherwise, -1 is returned and errno is set to to one of the values defined below.

ERRORS

EBADF

The provided socket is invalid.

EINVAL

The how parameter doesn’t correspond to an active endpoint.

EINTR

Operation was interrupted by a signal. The endpoint is not fully closed yet. Operation can be re-started by calling nn_shutdown() again.

ETERM

The library is terminating.

EXAMPLE

s = nn_socket (AF_SP, NN_PUB);
eid = nn_bind (s, "inproc://test");
nn_shutdown (s, eid);

SEE ALSO

AUTHORS

Martin Sustrik <sustrik@250bpm.com>