Christopher Kohlhoff
45add4d11e
Add a workaround for MSVC secure iterator problem where allowing the
...
destruction of an iterator to an already-destroyed string object results in
a program crash. Revert previous change to destroy buffers prior to
invoking the handler since it didn't fix the problem and wasn't cleaning
up all copies of the buffers anyway.
[SVN r41059]
2007-11-13 12:50:27 +00:00
Christopher Kohlhoff
970375748c
Cannot perform concurrent operations on the /dev/poll descriptor where
...
the sockets descriptors involved may already be being waited on. Changed
the dev_poll_reactor class to keep a vector of pending event changes and
interrupt the /dev/poll ioctl() wait to apply it.
[SVN r41028]
2007-11-12 12:07:39 +00:00
Christopher Kohlhoff
7de155b732
Fix timer stalls.
...
[SVN r40924]
2007-11-08 07:52:49 +00:00
Christopher Kohlhoff
1086746c7d
Eliminate the need for an extra thread to perform timer dispatching.
...
[SVN r40919]
2007-11-08 04:10:14 +00:00
Christopher Kohlhoff
556cbac864
Don't set errno when building for Windows targets. Should fix WinCE build.
...
[SVN r40779]
2007-11-05 11:52:52 +00:00
Christopher Kohlhoff
6e1a010a72
Some changes to enable support for WinCE.
...
[SVN r40759]
2007-11-04 21:25:49 +00:00
Christopher Kohlhoff
9db4bb6bc0
Fix memory leak when an io_service is allowed to destruct with unfinished
...
async_wait operations.
[SVN r40670]
2007-11-01 22:42:26 +00:00
Christopher Kohlhoff
d306f9dafe
Use GetModuleHandleA rather than GetModuleHandle to avoid being broken by
...
UNICODE #defines.
[SVN r40548]
2007-10-29 13:07:08 +00:00
Christopher Kohlhoff
3787272722
Ensure the task handler is put back on the queue after polling.
...
[SVN r40547]
2007-10-29 13:06:39 +00:00
Christopher Kohlhoff
644ed0fa71
Mac OS X 10.5 (Leopard) gives a compile error if you try to perform an
...
operation on a const fd_set pointer.
[SVN r40546]
2007-10-29 13:06:12 +00:00
Christopher Kohlhoff
72198ee954
Fixes for HP-UX test failures.
...
[SVN r40413]
2007-10-24 13:23:59 +00:00
Christopher Kohlhoff
cca0c50ca1
Documentation fixes.
...
[SVN r40345]
2007-10-23 08:09:46 +00:00
Christopher Kohlhoff
4915994d7c
Only use pselect() when compiling with aCC.
...
[SVN r40344]
2007-10-23 08:09:21 +00:00
Christopher Kohlhoff
1122c04976
Fix address_v6::operator<.
...
[SVN r40263]
2007-10-21 08:13:21 +00:00
Christopher Kohlhoff
46191ad216
Use an unsigned char for the enable_loopback socket option on HP-UX.
...
[SVN r40261]
2007-10-21 07:30:04 +00:00
Christopher Kohlhoff
9df40d565a
On HP-UX use pselect() rather than select() to avoid weirdness where
...
different select() prototypes are declared depending on the order the
system headers are included.
[SVN r40259]
2007-10-21 07:09:19 +00:00
Christopher Kohlhoff
a694fc7ba7
Documentation fixes.
...
[SVN r40256]
2007-10-21 05:46:47 +00:00
Christopher Kohlhoff
827c767b80
HP-UX fails to declare if_nametoindex and if_indextoname as extern "C".
...
Added declarations for them with correct linkage to avoid linker errors.
[SVN r40255]
2007-10-21 05:46:15 +00:00
Christopher Kohlhoff
9f6bab9893
Ensure the buffers and completion condition objects are destroyed before
...
the completion handler is invoked.
[SVN r40241]
2007-10-21 01:48:03 +00:00
Christopher Kohlhoff
811d967f52
Add get_io_service() synonym for io_service() to match TR2 proposal.
...
[SVN r40176]
2007-10-19 08:09:55 +00:00
Christopher Kohlhoff
b4384805aa
Assume that Tru64 also needs SIGPIPE to be blocked.
...
[SVN r40149]
2007-10-18 08:34:03 +00:00
Christopher Kohlhoff
14d49a688a
Add dummy enum for ssl errors. Change to static const references to error
...
category objects to be consistent with boost.system.
[SVN r40119]
2007-10-17 14:04:42 +00:00
Christopher Kohlhoff
5af39ab4ef
Make Windows XP the default target Windows version as the latest Windows
...
SDK doesn't support IPv6 for Windows 2000 targets.
[SVN r40108]
2007-10-17 07:58:38 +00:00
Christopher Kohlhoff
bd35039449
Throw an exception if unable to create a pipe for the pipe_select_interrupter.
...
[SVN r40107]
2007-10-17 07:25:03 +00:00
Christopher Kohlhoff
87cfb10267
Borland C++ wants friendship for the task_cleanup nested class.
...
[SVN r40106]
2007-10-17 05:22:26 +00:00
Christopher Kohlhoff
2865a15b93
Revert HP-UX/aCC change to select() wrapper as it breaks more than it fixes.
...
[SVN r40104]
2007-10-17 04:44:38 +00:00
Christopher Kohlhoff
9fc86e1351
Add a /dev/poll reactor implementation for Solaris.
...
[SVN r39913]
2007-10-10 23:12:06 +00:00
Christopher Kohlhoff
96a6faa937
HP-UX with aCC uses a variant of select() that takes int* arguments rather
...
than fd_set*.
[SVN r39864]
2007-10-09 21:47:40 +00:00
Christopher Kohlhoff
4fa7155b45
Assume that HP-UX and AIX both need to have SIGPIPE blocked.
...
[SVN r39863]
2007-10-09 21:47:07 +00:00
Christopher Kohlhoff
ddbb696058
The epoll_wait function can produce EPOLLHUP events for a descriptor even
...
if not specifically requested, resulting in a tight loop of calls to
epoll_wait. Delete a descriptor from epoll if an EPOLLHUP event is
received and there are no registered operations for the descriptor.
[SVN r39752]
2007-10-07 00:11:25 +00:00
Christopher Kohlhoff
27ad77577b
Try using an unsigned char for the multicast::enable_loopback socket option
...
when compiling for Tru64.
[SVN r39665]
2007-10-03 01:43:08 +00:00
Christopher Kohlhoff
e52d0569e1
Add missing #include needed for MinGW.
...
[SVN r39664]
2007-10-03 01:40:55 +00:00
Christopher Kohlhoff
fe53d29503
Fix warning on AIX about omitted 'private' keyword when deriving from noncopyable.
...
[SVN r39507]
2007-09-24 13:29:12 +00:00
Christopher Kohlhoff
331beee1a6
Check whether exceptions are enabled on the output iostream and throw or not
...
throw errors accordingly.
[SVN r39504]
2007-09-24 13:21:03 +00:00
Christopher Kohlhoff
e5c82d221a
Try making the ip::multicast::enable_loopback socket option an unsigned char on AIX.
...
[SVN r39503]
2007-09-24 13:19:31 +00:00
Christopher Kohlhoff
cad9b88130
Strict compilers don't like it when you pass a function with C linkage
...
as an argument when the parameter type has C++ linkage. Try using the type
of the msghdr::msg_namelen field as an alternative way of deducing the
socklen_t-equivalent type.
[SVN r39443]
2007-09-21 12:34:19 +00:00
Christopher Kohlhoff
1837283e91
Eliminate use of types and structure members that may not be present when
...
build for non-XOPEN targets.
[SVN r39432]
2007-09-20 22:33:29 +00:00
Christopher Kohlhoff
7e67ec6336
Some compilers require namespace-scope declarations of use_service,
...
has_service and add_service.
[SVN r39431]
2007-09-20 22:30:54 +00:00
Christopher Kohlhoff
ae79df6318
Move handler queue management to a separate class.
...
[SVN r39430]
2007-09-20 22:26:55 +00:00
Christopher Kohlhoff
d61cf1e0b8
Larger storage size needed for Windows x64.
...
[SVN r39429]
2007-09-20 22:20:57 +00:00
Christopher Kohlhoff
50e479d4ab
Fix unused argument warning.
...
[SVN r39364]
2007-09-18 13:13:40 +00:00
Christopher Kohlhoff
520f11ff1b
AIX seems to have the socket address family as an unsigned char rather than unsigned short.
...
[SVN r39211]
2007-09-12 12:24:21 +00:00
Christopher Kohlhoff
3e05da91c1
Use enum-based error code constants.
...
[SVN r39189]
2007-09-11 11:17:56 +00:00
Christopher Kohlhoff
a79f4c70ea
Fix problem where a thread can go idle even if there are handlers that are
...
ready to be dispatched.
Remove need to have a mutex per idle thread.
Remove need to have a mutex per idle thread.
[SVN r39098]
2007-09-01 06:41:15 +00:00
Christopher Kohlhoff
2a61b8a501
Add #include needed for IOV_MAX.
...
[SVN r39097]
2007-09-01 06:33:44 +00:00
Christopher Kohlhoff
817fe44ac4
Ensure that a strand is kept alive as long as there are wrapped handlers
...
for it.
[SVN r39096]
2007-09-01 06:28:40 +00:00
Christopher Kohlhoff
992d80498d
Add AIX-specific compile time test for whether sockaddr_storage's family
...
field is called ss_family or __ss_family.
[SVN r39095]
2007-09-01 06:25:55 +00:00
Christopher Kohlhoff
71d9f010a8
Enable buffer() overload workaround for Sun C++.
...
[SVN r39094]
2007-09-01 06:20:19 +00:00
Christopher Kohlhoff
9df7f38577
Fix unused argument warnings.
...
[SVN r38791]
2007-08-20 14:32:05 +00:00
Christopher Kohlhoff
78d7795fba
Increase number of buffers that may be sent or received in a single operation.
...
Clean up win_iocp_socket_service's close-on-destruction handling to ensure
non-blocking socket destructors.
[SVN r38788]
2007-08-20 14:17:15 +00:00