#include <nng/nng.h>
int nng_dialer_start(nng_dialer d, int flags);
This documentation is for the TIP (development tree) of NNG and may represent unreleased changes or functionality that is experimental, and is subject to change before release. The latest released version is v1.8.0. See the documentation for v1.8.0 for the most up-to-date information. |
nng_dialer_start(3)
NAME
nng_dialer_start - start dialer
SYNOPSIS
DESCRIPTION
The nng_dialer_start()
function starts the dialer d.
This causes the dialer to start connecting to the address with which it was created.
When a connection is established, it results in a pipe being created, which will be attached to the dialer’s socket.
Normally, the first attempt to connect to the dialer’s address is done synchronously, including any necessary name resolution. As a result, a failure, such as if the connection is refused, will be returned immediately, and no further action will be taken.
However, if the special value NNG_FLAG_NONBLOCK
is
supplied in flags, then the connection attempt is made asynchronously.
Furthermore, if the connection was closed for a synchronously dialed connection, the dialer will still attempt to redial asynchronously.
While NNG_FLAG_NONBLOCK can help an application be more resilient,
it also generally makes diagnosing failures somewhat more difficult.
|
Once a dialer has started, it is generally not possible to change its configuration.
RETURN VALUES
This function returns 0 on success, and non-zero otherwise.
ERRORS
NNG_EADDRINVAL
|
An invalid url was specified. |
NNG_ECLOSED
|
The socket s is not open. |
NNG_ECONNREFUSED
|
The remote peer refused the connection. |
NNG_ECONNRESET
|
The remote peer reset the connection. |
NNG_EINVAL
|
An invalid set of flags was specified. |
NNG_ENOMEM
|
Insufficient memory is available. |
NNG_EPEERAUTH
|
Authentication or authorization failure. |
NNG_EPROTO
|
A protocol error occurred. |
NNG_ESTATE
|
The dialer d is already started. |
NNG_EUNREACHABLE
|
The remote address is not reachable. |