nng_dialer_start − start dialer
#include <nng/nng.h>
int nng_dialer_start(nng_dialer d, int flags);
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.
Tip
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.
This function returns 0 on success, and non−zero otherwise.
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.
nng_dial(3), nng_dialer_create(3) nng_strerror(3), nng_dialer(5), nng(7)