2
0
mirror of https://github.com/boostorg/asio.git synced 2026-02-22 01:32:08 +00:00
Commit Graph

2046 Commits

Author SHA1 Message Date
Christopher Kohlhoff
f07f0c74b7 Fix doc generation for is_async_operation. 2023-04-05 21:43:14 +10:00
Christopher Kohlhoff
2b237955b4 Add immediate completion to the overview. 2023-04-05 21:08:23 +10:00
Christopher Kohlhoff
cedcfbec14 Add a link to the asio-debugger-extensions repository. 2023-04-05 21:08:23 +10:00
Christopher Kohlhoff
67ad756f4e Add buffer literals to the documentation. 2023-04-05 21:08:23 +10:00
Christopher Kohlhoff
aba42faf19 Add co_composed to the overview. 2023-04-05 21:00:23 +10:00
Christopher Kohlhoff
e5abd8544c Add any_completion_handler to the overview. 2023-04-05 21:00:23 +10:00
Christopher Kohlhoff
80c7f5224b Add immediate completion to asynchronous operation requirements. 2023-04-05 21:00:23 +10:00
Christopher Kohlhoff
767d6ce8ca Add missing sub macro. 2023-04-05 21:00:23 +10:00
Christopher Kohlhoff
0d4342efa0 Add new macro to doxygen configuration. 2023-04-05 19:34:42 +10:00
Christopher Kohlhoff
680c7e5c7a Use cached offset when seeking a file with seek_cur on Windows. 2023-04-04 20:20:47 +10:00
Christopher Kohlhoff
abe32d5986 Fix clean up of internal I/O object structures when using io_uring. 2023-04-04 20:20:47 +10:00
Christopher Kohlhoff
3c33f03c38 Minor coro fixes for ones with custom allocators. 2023-04-04 20:20:47 +10:00
Christopher Kohlhoff
a4b0f59b37 Fix incorrect reuse of moved-from result in experimental::promise. 2023-04-04 20:20:47 +10:00
Christopher Kohlhoff
9c851335d4 Fix variadic template emulation for is_async_operation and completion_signature_of. 2023-04-04 20:20:47 +10:00
Christopher Kohlhoff
31db19028e Fix interpretation of tuple-based results in experimental::coro. 2023-04-04 20:20:47 +10:00
Christopher Kohlhoff
ca0f1f9b23 Fix completion signature forwarding in use_coro implementation. 2023-04-04 20:20:47 +10:00
Christopher Kohlhoff
7bab8d55dc Ensure this_coro helper structs have explicit 1-arg constructors.
To prevent implicit conversion in co_await expressions.
2023-04-04 20:20:47 +10:00
Christopher Kohlhoff
a33370cbe0 Allow exceptions to escape from work_finished_on_block_exit destructor. 2023-04-04 20:20:47 +10:00
Christopher Kohlhoff
b57d962907 Fix redirect_error compatibility with new completion tokens. 2023-04-04 20:20:47 +10:00
Christopher Kohlhoff
19cff007b0 Fix as_tuple compatibility with legacy completion tokens. 2023-04-04 20:20:47 +10:00
Christopher Kohlhoff
1dd140aa69 Fix detection macro used in use_future's compatibility traits. 2023-04-04 20:20:47 +10:00
Christopher Kohlhoff
91a3159ffa Avoid evaluating concept when Executor1 is not an executor. 2023-04-04 20:20:47 +10:00
Christopher Kohlhoff
caa5341f18 Fix another shadowed variable. 2023-04-04 20:20:47 +10:00
Christopher Kohlhoff
dcfb06da53 Ensure ip::address_v4::to_ulong is marked as deprecated in the documentation. 2023-04-04 20:20:47 +10:00
Christopher Kohlhoff
3b33978e7e Fix compatibility between buffered stream wrappers and move-constructible streams. 2023-04-04 20:20:47 +10:00
Christopher Kohlhoff
c331b57fa8 Disable runtime Windows version test unless targeting older Windows versions. 2023-04-04 20:20:47 +10:00
Christopher Kohlhoff
e93db8e7fa Prevent buffer types from matching contiguous iterator overloads.
Fixes a bug where passing the deprecated const_buffers_1 and
mutable_buffers_1 types to asio::buffer() would result in the contiguous
iterator overloads being incorrectly chosen.
2023-04-04 20:20:47 +10:00
Christopher Kohlhoff
003174d8c9 Fix BOOST_ASIO_ASSUME definition on older compilers.
1. gcc 4.4 does not support __builtin_unreachable, which makes the
  __GNUC__ branch definition to fail.

2. clang 3.5 doesn't support __builtin_assume and uses the last fallback
  option. There, BOOST_ASIO_ASSUME is defined without arguments, meaning it
  expands to incorrect code like `(void)0(base != 0)`. This also affects
  any other compilers that are not handled by prior branches.
2023-04-04 20:20:33 +10:00
Christopher Kohlhoff
7b4ae6d066 Add missing handler tracking source location in co_composed. 2023-04-04 20:14:13 +10:00
Christopher Kohlhoff
82e53bc9f8 Fix handler tracking source location for awaitable's await_transform. 2023-04-04 20:13:59 +10:00
Christopher Kohlhoff
1fa30958e5 Version bump. 2023-03-08 22:22:42 +11:00
Christopher Kohlhoff
c538b13f94 Revision history. 2023-03-08 22:22:21 +11:00
Christopher Kohlhoff
b7b052304d Regenerate documentation. 2023-03-08 22:11:09 +11:00
Christopher Kohlhoff
08fe58def6 Add more signal_set_base::flags_t constants
This commit only adds useful POSIX constants that don't conflict with
asio's signal handling strategy (e.g. SA_SIGINFO would break asio
interface, so it's avoided). Non-POSIX constants specific to certain
operating systems (e.g. Linux's SA_UNSUPPORTED) are ignored.
2023-03-08 21:06:12 +11:00
Christopher Kohlhoff
f90a0249f1 Fix shadowed variable name. 2023-03-08 21:06:02 +11:00
Christopher Kohlhoff
d6a4d3b898 Add interoperability between channels and associated_immediate_executor. 2023-03-08 21:05:44 +11:00
Christopher Kohlhoff
9291f3d121 Remove spurious comment. 2023-03-08 21:05:25 +11:00
Christopher Kohlhoff
76fbcb2f45 Fix channels to support C++14 and (partially) C++11.
C++11 support is limited to channels with a single completion signature,
or channels with a void() signature (plus the error signature added by
the channel traits).
2023-03-08 21:05:14 +11:00
Christopher Kohlhoff
076089ec77 Fix deferred interoperability with multiple completion signatures. 2023-03-08 21:04:56 +11:00
Christopher Kohlhoff
23e7730379 Fix doc generation for literal operators. 2023-03-07 08:20:23 +11:00
Christopher Kohlhoff
256d56ca01 Regenerate documentation. 2023-03-07 00:10:10 +11:00
Christopher Kohlhoff
e33be4b6b9 Fix execution context overloads of get_associated_executor and get_associated_immediate_executor. 2023-03-07 00:04:56 +11:00
Christopher Kohlhoff
adfeed2b5d Add any_completion_handler to the documentation. 2023-03-07 00:04:56 +11:00
Christopher Kohlhoff
4b16652320 Reset timer_thread_ in win_iocp_io_context::shutdown().
Resets timer_thread in shutdown for the case when shutdown is called
more than once.
2023-03-07 00:04:56 +11:00
Christopher Kohlhoff
d6cad8835e Expose sigaction() flags via optional argument to signal_set::add.
When registering a signal, it is now possible to pass flags that specify
the behaviour associated with the signal. These flags are specified as
an enum type in a new class, signal_set_base, and are passed to the
underlying sigaction() call. For example:

  asio::signal_set sigs(my_io_context);
  sigs.add(SIGINT, asio::signal_set::flags::restart);

Specifying flags other than flags::dont_care will fail unless
sigaction() is supported by the target operating system. Since signal
registration is global, conflicting flags (multiple registrations that
pass differing flags other than flags::dont_care) will also result in
an error.
2023-03-07 00:04:56 +11:00
Christopher Kohlhoff
c1269d1c82 Use uint64_t for OpenSSL options. 2023-03-06 23:38:59 +11:00
Christopher Kohlhoff
db1af40f2b Fix spurious operator precedence warning with MSVC. 2023-03-06 23:38:46 +11:00
Christopher Kohlhoff
5f39737f5a Suppress spurious 'potential null dereference' warnings. 2023-03-06 23:38:31 +11:00
Christopher Kohlhoff
7f2743e0d1 Prevent accidental copying of any_completion_handler. 2023-03-06 23:38:10 +11:00
Christopher Kohlhoff
d8e52891d4 Fix any_completion_handler assignment operator. 2023-03-06 23:37:56 +11:00