<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>basic_raw_socket</title>
<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="basic_io_object/_basic_io_object.html" title="basic_io_object::~basic_io_object">
<link rel="next" href="basic_raw_socket/assign.html" title="basic_raw_socket::assign">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
<td align="center"><a href="../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="basic_io_object/_basic_io_object.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../boost_asio.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="basic_raw_socket/assign.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="boost_asio.reference.basic_raw_socket"></a><a class="link" href="basic_raw_socket.html" title="basic_raw_socket">basic_raw_socket</a>
</h3></div></div></div>
<p>
        Provides raw-oriented socket functionality.
      </p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span>
    <span class="keyword">typename</span> <a class="link" href="Protocol.html" title="Protocol requirements">Protocol</a><span class="special">,</span>
    <span class="keyword">typename</span> <a class="link" href="RawSocketService.html" title="Raw socket service requirements">RawSocketService</a> <span class="special">=</span> <span class="identifier">raw_socket_service</span><span class="special">&lt;</span><span class="identifier">Protocol</span><span class="special">&gt;&gt;</span>
<span class="keyword">class</span> <span class="identifier">basic_raw_socket</span> <span class="special">:</span>
  <span class="keyword">public</span> <span class="identifier">basic_socket</span><span class="special">&lt;</span> <span class="identifier">Protocol</span><span class="special">,</span> <span class="identifier">RawSocketService</span> <span class="special">&gt;</span>
</pre>
<a name="boost_asio.reference.basic_raw_socket.types"></a><h5>
<a name="id938789"></a>
        <a class="link" href="basic_raw_socket.html#boost_asio.reference.basic_raw_socket.types">Types</a>
      </h5>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
                <p>
                  Name
                </p>
              </th>
<th>
                <p>
                  Description
                </p>
              </th>
</tr></thead>
<tbody>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/broadcast.html" title="basic_raw_socket::broadcast"><span class="bold"><strong>broadcast</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Socket option to permit sending of broadcast messages.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/bytes_readable.html" title="basic_raw_socket::bytes_readable"><span class="bold"><strong>bytes_readable</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  IO control command to get the amount of data that can be read without
                  blocking.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/debug.html" title="basic_raw_socket::debug"><span class="bold"><strong>debug</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Socket option to enable socket-level debugging.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/do_not_route.html" title="basic_raw_socket::do_not_route"><span class="bold"><strong>do_not_route</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Socket option to prevent routing, use local interfaces only.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/enable_connection_aborted.html" title="basic_raw_socket::enable_connection_aborted"><span class="bold"><strong>enable_connection_aborted</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Socket option to report aborted connections on accept.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/endpoint_type.html" title="basic_raw_socket::endpoint_type"><span class="bold"><strong>endpoint_type</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  The endpoint type.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/implementation_type.html" title="basic_raw_socket::implementation_type"><span class="bold"><strong>implementation_type</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  The underlying implementation type of I/O object.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/keep_alive.html" title="basic_raw_socket::keep_alive"><span class="bold"><strong>keep_alive</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Socket option to send keep-alives.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/linger.html" title="basic_raw_socket::linger"><span class="bold"><strong>linger</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Socket option to specify whether the socket lingers on close if
                  unsent data is present.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/lowest_layer_type.html" title="basic_raw_socket::lowest_layer_type"><span class="bold"><strong>lowest_layer_type</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  A basic_socket is always the lowest layer.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/message_flags.html" title="basic_raw_socket::message_flags"><span class="bold"><strong>message_flags</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Bitmask type for flags that can be passed to send and receive operations.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/native_type.html" title="basic_raw_socket::native_type"><span class="bold"><strong>native_type</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  The native representation of a socket.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/non_blocking_io.html" title="basic_raw_socket::non_blocking_io"><span class="bold"><strong>non_blocking_io</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  IO control command to set the blocking mode of the socket.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/protocol_type.html" title="basic_raw_socket::protocol_type"><span class="bold"><strong>protocol_type</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  The protocol type.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/receive_buffer_size.html" title="basic_raw_socket::receive_buffer_size"><span class="bold"><strong>receive_buffer_size</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Socket option for the receive buffer size of a socket.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/receive_low_watermark.html" title="basic_raw_socket::receive_low_watermark"><span class="bold"><strong>receive_low_watermark</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Socket option for the receive low watermark.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/reuse_address.html" title="basic_raw_socket::reuse_address"><span class="bold"><strong>reuse_address</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Socket option to allow the socket to be bound to an address that
                  is already in use.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/send_buffer_size.html" title="basic_raw_socket::send_buffer_size"><span class="bold"><strong>send_buffer_size</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Socket option for the send buffer size of a socket.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/send_low_watermark.html" title="basic_raw_socket::send_low_watermark"><span class="bold"><strong>send_low_watermark</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Socket option for the send low watermark.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/service_type.html" title="basic_raw_socket::service_type"><span class="bold"><strong>service_type</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  The type of the service that will be used to provide I/O operations.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/shutdown_type.html" title="basic_raw_socket::shutdown_type"><span class="bold"><strong>shutdown_type</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Different ways a socket may be shutdown.
                </p>
              </td>
</tr>
</tbody>
</table></div>
<a name="boost_asio.reference.basic_raw_socket.member_functions"></a><h5>
<a name="id939486"></a>
        <a class="link" href="basic_raw_socket.html#boost_asio.reference.basic_raw_socket.member_functions">Member
        Functions</a>
      </h5>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
                <p>
                  Name
                </p>
              </th>
<th>
                <p>
                  Description
                </p>
              </th>
</tr></thead>
<tbody>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/assign.html" title="basic_raw_socket::assign"><span class="bold"><strong>assign</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Assign an existing native socket to the socket.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/async_connect.html" title="basic_raw_socket::async_connect"><span class="bold"><strong>async_connect</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Start an asynchronous connect.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/async_receive.html" title="basic_raw_socket::async_receive"><span class="bold"><strong>async_receive</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Start an asynchronous receive on a connected socket.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/async_receive_from.html" title="basic_raw_socket::async_receive_from"><span class="bold"><strong>async_receive_from</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Start an asynchronous receive.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/async_send.html" title="basic_raw_socket::async_send"><span class="bold"><strong>async_send</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Start an asynchronous send on a connected socket.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/async_send_to.html" title="basic_raw_socket::async_send_to"><span class="bold"><strong>async_send_to</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Start an asynchronous send.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/at_mark.html" title="basic_raw_socket::at_mark"><span class="bold"><strong>at_mark</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Determine whether the socket is at the out-of-band data mark.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/available.html" title="basic_raw_socket::available"><span class="bold"><strong>available</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Determine the number of bytes available for reading.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/basic_raw_socket.html" title="basic_raw_socket::basic_raw_socket"><span class="bold"><strong>basic_raw_socket</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Construct a basic_raw_socket without opening it.
                </p>
                <p>
                  Construct and open a basic_raw_socket.
                </p>
                <p>
                  Construct a basic_raw_socket, opening it and binding it to the
                  given local endpoint.
                </p>
                <p>
                  Construct a basic_raw_socket on an existing native socket.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/bind.html" title="basic_raw_socket::bind"><span class="bold"><strong>bind</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Bind the socket to the given local endpoint.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/cancel.html" title="basic_raw_socket::cancel"><span class="bold"><strong>cancel</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Cancel all asynchronous operations associated with the socket.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/close.html" title="basic_raw_socket::close"><span class="bold"><strong>close</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Close the socket.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/connect.html" title="basic_raw_socket::connect"><span class="bold"><strong>connect</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Connect the socket to the specified endpoint.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/get_io_service.html" title="basic_raw_socket::get_io_service"><span class="bold"><strong>get_io_service</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Get the io_service associated with the object.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/get_option.html" title="basic_raw_socket::get_option"><span class="bold"><strong>get_option</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Get an option from the socket.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/io_control.html" title="basic_raw_socket::io_control"><span class="bold"><strong>io_control</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Perform an IO control command on the socket.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/io_service.html" title="basic_raw_socket::io_service"><span class="bold"><strong>io_service</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  (Deprecated: use get_io_service().) Get the io_service associated
                  with the object.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/is_open.html" title="basic_raw_socket::is_open"><span class="bold"><strong>is_open</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Determine whether the socket is open.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/local_endpoint.html" title="basic_raw_socket::local_endpoint"><span class="bold"><strong>local_endpoint</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Get the local endpoint of the socket.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/lowest_layer.html" title="basic_raw_socket::lowest_layer"><span class="bold"><strong>lowest_layer</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Get a reference to the lowest layer.
                </p>
                <p>
                  Get a const reference to the lowest layer.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/native.html" title="basic_raw_socket::native"><span class="bold"><strong>native</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Get the native socket representation.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/open.html" title="basic_raw_socket::open"><span class="bold"><strong>open</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Open the socket using the specified protocol.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/receive.html" title="basic_raw_socket::receive"><span class="bold"><strong>receive</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Receive some data on a connected socket.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/receive_from.html" title="basic_raw_socket::receive_from"><span class="bold"><strong>receive_from</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Receive raw data with the endpoint of the sender.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/remote_endpoint.html" title="basic_raw_socket::remote_endpoint"><span class="bold"><strong>remote_endpoint</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Get the remote endpoint of the socket.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/send.html" title="basic_raw_socket::send"><span class="bold"><strong>send</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Send some data on a connected socket.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/send_to.html" title="basic_raw_socket::send_to"><span class="bold"><strong>send_to</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Send raw data to the specified endpoint.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/set_option.html" title="basic_raw_socket::set_option"><span class="bold"><strong>set_option</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Set an option on the socket.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/shutdown.html" title="basic_raw_socket::shutdown"><span class="bold"><strong>shutdown</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Disable sends or receives on the socket.
                </p>
              </td>
</tr>
</tbody>
</table></div>
<a name="boost_asio.reference.basic_raw_socket.data_members"></a><h5>
<a name="id940430"></a>
        <a class="link" href="basic_raw_socket.html#boost_asio.reference.basic_raw_socket.data_members">Data Members</a>
      </h5>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
                <p>
                  Name
                </p>
              </th>
<th>
                <p>
                  Description
                </p>
              </th>
</tr></thead>
<tbody>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/max_connections.html" title="basic_raw_socket::max_connections"><span class="bold"><strong>max_connections</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  The maximum length of the queue of pending incoming connections.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/message_do_not_route.html" title="basic_raw_socket::message_do_not_route"><span class="bold"><strong>message_do_not_route</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Specify that the data should not be subject to routing.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/message_out_of_band.html" title="basic_raw_socket::message_out_of_band"><span class="bold"><strong>message_out_of_band</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Process out-of-band data.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/message_peek.html" title="basic_raw_socket::message_peek"><span class="bold"><strong>message_peek</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Peek at incoming data without removing it from the input queue.
                </p>
              </td>
</tr>
</tbody>
</table></div>
<a name="boost_asio.reference.basic_raw_socket.protected_data_members"></a><h5>
<a name="id940610"></a>
        <a class="link" href="basic_raw_socket.html#boost_asio.reference.basic_raw_socket.protected_data_members">Protected
        Data Members</a>
      </h5>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
                <p>
                  Name
                </p>
              </th>
<th>
                <p>
                  Description
                </p>
              </th>
</tr></thead>
<tbody>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/implementation.html" title="basic_raw_socket::implementation"><span class="bold"><strong>implementation</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  The underlying implementation of the I/O object.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="basic_raw_socket/service.html" title="basic_raw_socket::service"><span class="bold"><strong>service</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  The service associated with the I/O object.
                </p>
              </td>
</tr>
</tbody>
</table></div>
<p>
        The <a class="link" href="basic_raw_socket.html" title="basic_raw_socket"><code class="computeroutput"><span class="identifier">basic_raw_socket</span></code></a>
        class template provides asynchronous and blocking raw-oriented socket functionality.
      </p>
<a name="boost_asio.reference.basic_raw_socket.thread_safety"></a><h5>
<a name="id940748"></a>
        <a class="link" href="basic_raw_socket.html#boost_asio.reference.basic_raw_socket.thread_safety">Thread
        Safety</a>
      </h5>
<p>
        <span class="bold"><strong>Distinct</strong></span> <span class="bold"><strong>objects:</strong></span>
        Safe.
      </p>
<p>
        <span class="bold"><strong>Shared</strong></span> <span class="bold"><strong>objects:</strong></span>
        Unsafe.
      </p>
<a name="boost_asio.reference.basic_raw_socket.requirements"></a><h5>
<a name="id940801"></a>
        <a class="link" href="basic_raw_socket.html#boost_asio.reference.basic_raw_socket.requirements">Requirements</a>
      </h5>
<p>
        <span class="bold"><strong>Header: </strong></span><code class="literal">boost/asio/basic_raw_socket.hpp</code>
      </p>
<p>
        <span class="bold"><strong>Convenience header: </strong></span><code class="literal">boost/asio.hpp</code>
      </p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 - 2010 Christopher M. Kohlhoff<p>
        Distributed under the Boost Software License, Version 1.0. (See accompanying
        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
      </p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="basic_io_object/_basic_io_object.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../boost_asio.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="basic_raw_socket/assign.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
