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

SYNOPSIS

#include <nng/nng.h>

int nng_stream_listener_alloc(nng_stream_listener **lp, const char *addr);

int nng_stream_listener_alloc_url(nng_stream_listener **lp, const nng_url *url);

DESCRIPTION

These functions allocates a listener for byte streams. Listeners create nng_stream objects by accepting incoming connections, via the nng_stream_listener_accept() function.

The first form, nng_stream_listener_alloc(), connects to the address specified by addr, which should be a string representing a URL.

The second form, nng_stream_listener_alloc_url(), takes a pre-parsed or pre-constructed nng_url object to determine the remote address.

These functions may support different URL schemes, such as ipc://, tcp://, tls+tcp://, or ws://.

Both forms store the listener in the location referenced by lp.

RETURN VALUES

These functions return 0 on success, and non-zero otherwise.

ERRORS

NNG_ENOMEM

Insufficient free memory exists.

NNG_ENOTSUP

The URL scheme is not supported by the implementation.

NNG_EADDRINVAL

The URL requested is invalid.