Commit Graph

1691 Commits

Author SHA1 Message Date
Christopher Kohlhoff
ac3ed64d38 Assume that any descriptors or sockets added using assign() may have
been dup()-ed, and so require explicit deregistration from the reactor.
2011-02-15 16:17:34 +11:00
Christopher Kohlhoff
a579c9b4c4 Add ComposedConnectHandler type requirements. Update and regenerate
documentation.
2011-02-15 16:17:33 +11:00
Christopher Kohlhoff
fd2ce8220d Add new io_service::stopped() function that can be used to determine
whether the io_service has stopped (i.e. a reset() call is needed
prior to any further calls to run(), run_one(), poll() or poll_one().
2011-02-15 16:17:33 +11:00
Christopher Kohlhoff
82ef1d3cf4 Updated requirements to use get_io_service() rather than the now removed
io_service() member function.
2011-02-15 16:17:33 +11:00
Christopher Kohlhoff
99279af951 Constrain the connect() and async_connect() function templates to
working with basic_socket<> instances.
2011-02-15 16:17:33 +11:00
Christopher Kohlhoff
d47a33dc65 Document SeqPacketSocketService type requirements. 2011-02-15 16:17:33 +11:00
Christopher Kohlhoff
ed62d29a67 Add support for sequenced packet sockets (SOCK_SEQPACKET). 2011-02-15 16:17:33 +11:00
Christopher Kohlhoff
39b6482b6b Fix tests to use get_io_service() rather than deprecated function name
io_service().
2011-02-15 16:17:33 +11:00
Christopher Kohlhoff
661936baae Be vague about the arguments to sendfile(), since it varies from
platform to platform.
2011-02-15 16:17:33 +11:00
Christopher Kohlhoff
bb59cbc8ad Fix g++ -Wshadow warnings. 2011-02-15 16:17:33 +11:00
Christopher Kohlhoff
fa0d94ba5b Fix warning due to insufficient braces. 2011-02-15 16:17:33 +11:00
Christopher Kohlhoff
7a17ac1483 Add new non_blocking() and native_non_blocking() functions for managing
the non-blocking behaviour of sockets and descriptors. The io_control
commands named non_blocking_io are now deprecated.
2011-02-15 16:17:33 +11:00
Christopher Kohlhoff
f7635a5461 Add release() member function to posix descriptors. 2011-02-15 16:17:33 +11:00
Christopher Kohlhoff
f916c5d43b For consistency with the C++0x standard library, deprecated the
native_type typedefs in favour of native_handle_type, and the
native() member functions in favour of native_handle().
2011-02-15 16:17:32 +11:00
Christopher Kohlhoff
7afff4618f Fix comment. 2011-02-15 16:17:32 +11:00
Christopher Kohlhoff
31c7b406bd Add io_control() member function to acceptor. 2011-02-15 16:17:32 +11:00
Christopher Kohlhoff
4e8129d660 Add test stubs for basic_raw_socket and raw_socket_service. 2011-02-15 16:17:32 +11:00
Christopher Kohlhoff
22ecfe77a3 Merge missing part of basic_deadline_timer::cancel_one() change to fix windows build. 2011-02-08 20:06:09 +11:00
Christopher Kohlhoff
25ae08ddba Reset function isn't there. 2011-02-08 20:05:17 +11:00
Christopher Kohlhoff
96b0b6eb11 Don't use auto_ptr in win_thread. 2011-02-08 20:02:24 +11:00
Christopher Kohlhoff
145a36e061 Add new non-throwing overloads of read, read_at, write and write_at that
do not require a completion_condition argument.
2011-02-08 19:13:14 +11:00
Christopher Kohlhoff
37ed4c8c44 Extend the buffer_size() function so that it works for buffer sequences
in addition to individual buffers.

Add a new buffer_copy() function that can be used to copy the raw bytes
between individual buffers and buffer sequences.
2011-02-08 19:02:15 +11:00
Christopher Kohlhoff
548ce5c9a4 Use BOOST_ASSERT rather than assert. 2011-02-08 18:56:51 +11:00
Christopher Kohlhoff
9690ae5014 Explicitly cast FIONBIO constant to int to suppress compiler warning on
some platforms.
2011-02-08 18:52:58 +11:00
Christopher Kohlhoff
b3206af5f2 Provide friendlier compiler errors when the wrong handler signature is used. 2011-02-08 18:51:24 +11:00
Christopher Kohlhoff
066e739628 Add new free functions connect() and async_connect(). These try
each endpoint in a list until the socket is successfully connected.
2011-02-08 18:28:12 +11:00
Christopher Kohlhoff
f8d583bbb5 Minimise copying of handler function objects. Use move construction when
available.
2011-02-08 18:09:58 +11:00
Christopher Kohlhoff
f57386e3bb Add new iostream-based http_client to the list of examples. 2011-02-08 18:02:04 +11:00
Christopher Kohlhoff
b041fd21a1 Fix variable name that was botched due to search/replace. 2011-02-08 17:54:09 +11:00
Christopher Kohlhoff
1594ecd957 Add new transfer_exactly completion condition. 2011-02-08 17:40:49 +11:00
Christopher Kohlhoff
f7ee283052 More changes to eliminate dependency on OS-provided IP address
constants.
2011-02-08 17:00:21 +11:00
Christopher Kohlhoff
cad28ccb9e Don't need to use a (large) sockaddr_storage object when all we're
dealing with are IPv4 and IPv6 endpoints.
2011-02-08 16:57:26 +11:00
Christopher Kohlhoff
739a99f8a6 Remove deprecated member functions named io_service().
The get_io_service() member functions should be used instead.
2011-02-08 16:47:37 +11:00
Christopher Kohlhoff
b76b58b01d Add new basic_deadline_timer::cancel_one() function. This function lets
you cancel a single waiting handler on a timer. Timers are cancelled in
FIFO order.
2011-02-08 16:36:15 +11:00
Christopher Kohlhoff
5dc9c9f451 Test the ip::address class's interface. 2011-02-08 16:06:36 +11:00
Christopher Kohlhoff
9f6117c5bf Add support for timeouts on socket iostreams. 2011-02-08 15:55:43 +11:00
Christopher Kohlhoff
b353d3eca2 Make the is_loopback(), is_unspecified() and is_multicast() functions
consistent across all of the IP address classes.

Remove dependency on OS-provided macros for the well-known IPv4 and IPv6
addresses. This should eliminate the annoying "missing braces around
initializer" warnings.
2011-02-08 15:40:26 +11:00
Christopher Kohlhoff
855b96769c Remove borland build support. 2011-02-08 15:31:53 +11:00
Christopher Kohlhoff
11a649368f Remove deprecated resolver typedefs. 2011-02-08 15:26:33 +11:00
Christopher Kohlhoff
7ad19f5693 Make thread constructors consistent across platforms. 2011-02-08 15:23:00 +11:00
Christopher Kohlhoff
a4e6078e88 Some gcc versions don't like these anonymous enums. 2011-02-08 15:13:19 +11:00
Christopher Kohlhoff
46e00e0479 Add support for using std::error_code when it's available. 2011-02-08 15:09:22 +11:00
Christopher Kohlhoff
c95c7e0e97 Fix autogen.sh so that it no longer depends on CVS. 2011-02-08 14:59:55 +11:00
Christopher Kohlhoff
55e9065371 Update copyright notices. 2011-02-08 13:13:20 +11:00
Christopher Kohlhoff
2f0c34246a Use correct interrupt method when timerfd is not available. 2011-02-08 13:09:37 +11:00
Christopher Kohlhoff
0554900ad4 Fix out-of-bounds address_v4::broadcast() return value on 64-bit systems. 2011-02-08 13:07:40 +11:00
Christopher Kohlhoff
6f783835d4 Merge from asio-1-4-branch as of asio-1-4-7. 2011-02-08 13:06:20 +11:00
Christopher Kohlhoff
001d6e8d4d Remove .cvsignore files. 2011-02-08 12:14:21 +11:00
Christopher Kohlhoff
834b57de83 Convert .cvsignore files to .gitignore files. 2011-02-08 12:13:58 +11:00
chris_kohlhoff
f390f8143e asio version 1.4.0 released 2009-02-01 11:25:19 +00:00