Commit Graph

1421 Commits

Author SHA1 Message Date
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
chris_kohlhoff
4e7efa0a29 Regenerate documentation. 2009-02-01 10:56:39 +00:00
chris_kohlhoff
ab98b8e9a5 Add more documentation for asio::streambuf. 2009-02-01 10:52:43 +00:00
chris_kohlhoff
863363a95e Fix scoped_ptr usage to work on Sun Studio 11. 2008-10-29 12:55:41 +00:00
chris_kohlhoff
9dc8e9b296 Fix reference link. 2008-10-29 12:35:30 +00:00
chris_kohlhoff
eafc4262dc Fix problem in read_until's match_condition handling when the delimiter
lies at the end of the data.
2008-10-29 12:23:51 +00:00
chris_kohlhoff
f74b229a41 Fix typo. 2008-10-29 12:20:48 +00:00
chris_kohlhoff
d48c916ff0 Add a new POSIX-specific chat client showing how to use the
posix::stream_descriptor class.
2008-10-29 12:19:37 +00:00
chris_kohlhoff
5d79ded555 asio version 1.3.1 released 2008-10-13 21:52:05 +00:00
chris_kohlhoff
1e74cffa06 Apply patch for latest codegear compiler. 2008-10-09 05:57:24 +00:00
chris_kohlhoff
fc35b181da Add example showing use of local::stream_protocol::iostream. 2008-10-08 12:05:51 +00:00
chris_kohlhoff
db281d4c0f Fix basic_socket_streambuf to work with Protocol objects that don't
provide a resolver.
2008-10-08 12:02:59 +00:00
chris_kohlhoff
28797cec09 Make the service_registry's usage of typeid work when the default gcc
linker visibility is set to hidden.
2008-10-08 10:19:13 +00:00
chris_kohlhoff
9155ef673f Add missing #include. 2008-10-08 10:11:06 +00:00
chris_kohlhoff
fde3b260c5 Fix compile errors in the two-lock implementation of the task_io_service. 2008-10-08 09:58:07 +00:00
chris_kohlhoff
920e45e967 Include windows example in boostification. 2008-10-08 09:52:06 +00:00
chris_kohlhoff
f10ab03183 Ensure the streambuf's egptr() is kept in sync the pptr(). Use std::memmove
rather than std::rotate to minimise data copying. Avoid unnecessary resizes
of the underlying vector.
2008-10-08 09:49:11 +00:00
chris_kohlhoff
60a099a934 Remove thread::purpose flags since they are no longer required. 2008-10-08 09:44:49 +00:00
chris_kohlhoff
19312f9d81 Only use TerminateThread when explicitly requested by the user by calling
asio::detail:🧵:set_terminate_threads(true). This fixes a memory leak
that may occur with internally created threads.
2008-10-08 09:20:22 +00:00
chris_kohlhoff
0dcf7c711f Perform lazy initialisation of the reactor task to reduce memory usage when
an io_service is used only as a message queue.
2008-09-23 23:45:04 +00:00
chris_kohlhoff
a3fec3a669 Add bounds checks as specified in TR2 proposal. 2008-09-11 23:42:00 +00:00