NNG_STREAM_LISTENER_ALLOC(3str)

NAME
nng_stream_listener_alloc - allocate byte stream listener

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.

SEE ALSO

nng_strerror(3), nng_stream_listener_accept(3str) nng_stream_listener_close(3str) nng_stream_listener_free(3str) nng_stream_listener_get(3str) nng_stream_listener_listen(3str) nng_stream_listener_set(3str) nng_stream_listener(5)