# nng_stream_dialer_dial(3str) Manual Page

## NAME

nng_stream_dialer_dial - initiate outgoing byte stream connection

## SYNOPSIS

    #include <nng/nng.h>

    void nng_stream_dialer_dial(nng_stream_dialer *d, nng_aio *aio);

## DESCRIPTION

The `nng_stream_dialer_dial()` attempts to establish a connection to the remote peer for the dialer d. The operation is completed asynchronously, using aio.

| The peer address is determined by the address specified using `nng_stream_dialer_alloc()` or `nng_stream_dialer_alloc_url()`.

If a connection is successfully established, the aio will have the resulting `nng_stream` object stored as its first output. (See `nng_aio_get_output()`.)

## RETURN VALUES

None.

## ERRORS

`NNG_EADDRINVAL` | The address specified is invalid.
`NNG_ECANCELED` | The operation was aborted.
`NNG_ECLOSED` | The dialer is closed.
`NNG_ECONNREFUSED` | The connection was refused by the server.
`NNG_ECONNRESET` | The connection was reset by the server.
`NNG_ENOMEM` | Insufficient free memory exists.

## SEE ALSO

nng_strerror(3), nng_stream_dialer_alloc(3str), nng_stream_dialer_close(3str), nng_stream_dialer_free(3str), nng_aio(5), nng_stream(5), nng_stream_dialer(5)