##### basic_socket_acceptor::accept (2 of 12 overloads)

Accept a new connection.

    template<
        typename Protocol1>
    void accept(
        basic_socket< Protocol1 > & peer,
        asio::error_code & ec,
        typename enable_if< is_convertible< Protocol, Protocol1 >::value >::type *  = 0);

This function is used to accept a new connection from a peer into the given socket. The function call will block until a new connection has been accepted successfully or an error occurs.

###### Parameters

peer

  The socket into which the new connection will be accepted.

ec

  Set to indicate what error occurred, if any.

###### Example

    asio::ip::tcp::acceptor acceptor(io_context);
    ...
    asio::ip::tcp::socket socket(io_context);
    asio::error_code ec;
    acceptor.accept(socket, ec);
    if (ec)
    {
      // An error occurred.
    }