asio version 1.5.1 released
diff --git a/asio/README b/asio/README
index baad5c1..d2ecb3a 100644
--- a/asio/README
+++ b/asio/README
@@ -1,4 +1,4 @@
-asio version 1.5.0
-Released Wednesday, 09 February 2011.
+asio version 1.5.1
+Released Sunday, 20 February 2011.
 
 See doc/index.html for API documentation and a tutorial.
diff --git a/asio/asio.manifest b/asio/asio.manifest
index fd4fe38..2e72ae6 100644
--- a/asio/asio.manifest
+++ b/asio/asio.manifest
@@ -621,6 +621,36 @@
 /doc/asio/reference/basic_serial_port/write_some.html
 /doc/asio/reference/basic_serial_port/write_some/overload1.html
 /doc/asio/reference/basic_serial_port/write_some/overload2.html
+/doc/asio/reference/basic_signal_set/
+/doc/asio/reference/basic_signal_set/add/
+/doc/asio/reference/basic_signal_set/add.html
+/doc/asio/reference/basic_signal_set/add/overload1.html
+/doc/asio/reference/basic_signal_set/add/overload2.html
+/doc/asio/reference/basic_signal_set/async_wait.html
+/doc/asio/reference/basic_signal_set/basic_signal_set/
+/doc/asio/reference/basic_signal_set/basic_signal_set.html
+/doc/asio/reference/basic_signal_set/basic_signal_set/overload1.html
+/doc/asio/reference/basic_signal_set/basic_signal_set/overload2.html
+/doc/asio/reference/basic_signal_set/basic_signal_set/overload3.html
+/doc/asio/reference/basic_signal_set/basic_signal_set/overload4.html
+/doc/asio/reference/basic_signal_set/cancel/
+/doc/asio/reference/basic_signal_set/cancel.html
+/doc/asio/reference/basic_signal_set/cancel/overload1.html
+/doc/asio/reference/basic_signal_set/cancel/overload2.html
+/doc/asio/reference/basic_signal_set/clear/
+/doc/asio/reference/basic_signal_set/clear.html
+/doc/asio/reference/basic_signal_set/clear/overload1.html
+/doc/asio/reference/basic_signal_set/clear/overload2.html
+/doc/asio/reference/basic_signal_set/get_io_service.html
+/doc/asio/reference/basic_signal_set.html
+/doc/asio/reference/basic_signal_set/implementation.html
+/doc/asio/reference/basic_signal_set/implementation_type.html
+/doc/asio/reference/basic_signal_set/remove/
+/doc/asio/reference/basic_signal_set/remove.html
+/doc/asio/reference/basic_signal_set/remove/overload1.html
+/doc/asio/reference/basic_signal_set/remove/overload2.html
+/doc/asio/reference/basic_signal_set/service.html
+/doc/asio/reference/basic_signal_set/service_type.html
 /doc/asio/reference/basic_socket/
 /doc/asio/reference/basic_socket_acceptor/
 /doc/asio/reference/basic_socket_acceptor/accept/
@@ -1331,8 +1361,10 @@
 /doc/asio/reference/buffers_iterator/
 /doc/asio/reference/buffers_iterator/begin.html
 /doc/asio/reference/buffers_iterator/buffers_iterator.html
+/doc/asio/reference/buffers_iterator/difference_type.html
 /doc/asio/reference/buffers_iterator/end.html
 /doc/asio/reference/buffers_iterator.html
+/doc/asio/reference/buffers_iterator/iterator_category.html
 /doc/asio/reference/buffers_iterator/operator_arrow_.html
 /doc/asio/reference/buffers_iterator/operator_eq__eq_.html
 /doc/asio/reference/buffers_iterator/operator_gt__eq_.html
@@ -1360,6 +1392,9 @@
 /doc/asio/reference/buffers_iterator/operator_plus__plus_/overload1.html
 /doc/asio/reference/buffers_iterator/operator_plus__plus_/overload2.html
 /doc/asio/reference/buffers_iterator/operator__star_.html
+/doc/asio/reference/buffers_iterator/pointer.html
+/doc/asio/reference/buffers_iterator/reference.html
+/doc/asio/reference/buffers_iterator/value_type.html
 /doc/asio/reference/buffer_size/
 /doc/asio/reference/buffer_size.html
 /doc/asio/reference/buffer_size/overload1.html
@@ -1788,8 +1823,10 @@
 /doc/asio/reference/ip__basic_resolver_iterator/create.html
 /doc/asio/reference/ip__basic_resolver_iterator/create/overload1.html
 /doc/asio/reference/ip__basic_resolver_iterator/create/overload2.html
+/doc/asio/reference/ip__basic_resolver_iterator/difference_type.html
 /doc/asio/reference/ip__basic_resolver_iterator.html
 /doc/asio/reference/ip__basic_resolver/iterator.html
+/doc/asio/reference/ip__basic_resolver_iterator/iterator_category.html
 /doc/asio/reference/ip__basic_resolver_iterator/operator_arrow_.html
 /doc/asio/reference/ip__basic_resolver_iterator/operator_eq__eq_.html
 /doc/asio/reference/ip__basic_resolver_iterator/operator_not__eq_.html
@@ -1798,6 +1835,9 @@
 /doc/asio/reference/ip__basic_resolver_iterator/operator_plus__plus_/overload1.html
 /doc/asio/reference/ip__basic_resolver_iterator/operator_plus__plus_/overload2.html
 /doc/asio/reference/ip__basic_resolver_iterator/operator__star_.html
+/doc/asio/reference/ip__basic_resolver_iterator/pointer.html
+/doc/asio/reference/ip__basic_resolver_iterator/reference.html
+/doc/asio/reference/ip__basic_resolver_iterator/value_type.html
 /doc/asio/reference/ip__basic_resolver/protocol_type.html
 /doc/asio/reference/ip__basic_resolver_query/
 /doc/asio/reference/ip__basic_resolver_query/address_configured.html
@@ -2006,6 +2046,7 @@
 /doc/asio/reference/placeholders__bytes_transferred.html
 /doc/asio/reference/placeholders__error.html
 /doc/asio/reference/placeholders__iterator.html
+/doc/asio/reference/placeholders__signal_number.html
 /doc/asio/reference/posix__basic_descriptor/
 /doc/asio/reference/posix__basic_descriptor/assign/
 /doc/asio/reference/posix__basic_descriptor/assign.html
@@ -2350,6 +2391,23 @@
 /doc/asio/reference/Service.html
 /doc/asio/reference/SettableSerialPortOption.html
 /doc/asio/reference/SettableSocketOption.html
+/doc/asio/reference/SignalHandler.html
+/doc/asio/reference/signal_set.html
+/doc/asio/reference/signal_set_service/
+/doc/asio/reference/signal_set_service/add.html
+/doc/asio/reference/signal_set_service/async_wait.html
+/doc/asio/reference/signal_set_service/cancel.html
+/doc/asio/reference/signal_set_service/clear.html
+/doc/asio/reference/signal_set_service/construct.html
+/doc/asio/reference/signal_set_service/destroy.html
+/doc/asio/reference/signal_set_service/get_io_service.html
+/doc/asio/reference/signal_set_service.html
+/doc/asio/reference/SignalSetService.html
+/doc/asio/reference/signal_set_service/id.html
+/doc/asio/reference/signal_set_service/implementation_type.html
+/doc/asio/reference/signal_set_service/remove.html
+/doc/asio/reference/signal_set_service/shutdown_service.html
+/doc/asio/reference/signal_set_service/signal_set_service.html
 /doc/asio/reference/socket_acceptor_service/
 /doc/asio/reference/socket_acceptor_service/accept.html
 /doc/asio/reference/socket_acceptor_service/assign.html
@@ -2934,6 +2992,7 @@
 /include/asio/basic_raw_socket.hpp
 /include/asio/basic_seq_packet_socket.hpp
 /include/asio/basic_serial_port.hpp
+/include/asio/basic_signal_set.hpp
 /include/asio/basic_socket_acceptor.hpp
 /include/asio/basic_socket.hpp
 /include/asio/basic_socket_iostream.hpp
@@ -2983,6 +3042,7 @@
 /include/asio/detail/gcc_x86_fenced_block.hpp
 /include/asio/detail/handler_alloc_helpers.hpp
 /include/asio/detail/handler_invoke_helpers.hpp
+/include/asio/detail/handler_tracking.hpp
 /include/asio/detail/handler_type_requirements.hpp
 /include/asio/detail/hash_map.hpp
 /include/asio/detail/impl/
@@ -2992,6 +3052,7 @@
 /include/asio/detail/impl/epoll_reactor.hpp
 /include/asio/detail/impl/epoll_reactor.ipp
 /include/asio/detail/impl/eventfd_select_interrupter.ipp
+/include/asio/detail/impl/handler_tracking.ipp
 /include/asio/detail/impl/kqueue_reactor.hpp
 /include/asio/detail/impl/kqueue_reactor.ipp
 /include/asio/detail/impl/pipe_select_interrupter.ipp
@@ -3007,6 +3068,7 @@
 /include/asio/detail/impl/select_reactor.ipp
 /include/asio/detail/impl/service_registry.hpp
 /include/asio/detail/impl/service_registry.ipp
+/include/asio/detail/impl/signal_set_service.ipp
 /include/asio/detail/impl/socket_ops.ipp
 /include/asio/detail/impl/socket_select_interrupter.ipp
 /include/asio/detail/impl/strand_service.hpp
@@ -3024,6 +3086,7 @@
 /include/asio/detail/impl/win_iocp_socket_service_base.ipp
 /include/asio/detail/impl/win_mutex.ipp
 /include/asio/detail/impl/winsock_init.ipp
+/include/asio/detail/impl/win_static_mutex.ipp
 /include/asio/detail/impl/win_thread.ipp
 /include/asio/detail/impl/win_tss_ptr.ipp
 /include/asio/detail/io_control.hpp
@@ -3037,6 +3100,7 @@
 /include/asio/detail/null_fenced_block.hpp
 /include/asio/detail/null_mutex.hpp
 /include/asio/detail/null_signal_blocker.hpp
+/include/asio/detail/null_static_mutex.hpp
 /include/asio/detail/null_thread.hpp
 /include/asio/detail/null_tss_ptr.hpp
 /include/asio/detail/object_pool.hpp
@@ -3049,6 +3113,7 @@
 /include/asio/detail/posix_fd_set_adapter.hpp
 /include/asio/detail/posix_mutex.hpp
 /include/asio/detail/posix_signal_blocker.hpp
+/include/asio/detail/posix_static_mutex.hpp
 /include/asio/detail/posix_thread.hpp
 /include/asio/detail/posix_tss_ptr.hpp
 /include/asio/detail/push_options.hpp
@@ -3081,13 +3146,17 @@
 /include/asio/detail/service_registry.hpp
 /include/asio/detail/shared_ptr.hpp
 /include/asio/detail/signal_blocker.hpp
+/include/asio/detail/signal_handler.hpp
 /include/asio/detail/signal_init.hpp
+/include/asio/detail/signal_op.hpp
+/include/asio/detail/signal_set_service.hpp
 /include/asio/detail/socket_holder.hpp
 /include/asio/detail/socket_ops.hpp
 /include/asio/detail/socket_option.hpp
 /include/asio/detail/socket_select_interrupter.hpp
 /include/asio/detail/socket_types.hpp
 /include/asio/detail/solaris_fenced_block.hpp
+/include/asio/detail/static_mutex.hpp
 /include/asio/detail/strand_service.hpp
 /include/asio/detail/task_io_service_fwd.hpp
 /include/asio/detail/task_io_service.hpp
@@ -3127,6 +3196,7 @@
 /include/asio/detail/win_iocp_socket_service.hpp
 /include/asio/detail/win_mutex.hpp
 /include/asio/detail/winsock_init.hpp
+/include/asio/detail/win_static_mutex.hpp
 /include/asio/detail/win_thread.hpp
 /include/asio/detail/win_tss_ptr.hpp
 /include/asio/detail/wrapped_handler.hpp
@@ -3209,6 +3279,8 @@
 /include/asio/serial_port_base.hpp
 /include/asio/serial_port.hpp
 /include/asio/serial_port_service.hpp
+/include/asio/signal_set.hpp
+/include/asio/signal_set_service.hpp
 /include/asio/socket_acceptor_service.hpp
 /include/asio/socket_base.hpp
 /include/asio/ssl/
@@ -3288,9 +3360,9 @@
 /src/examples/http/server2/header.hpp
 /src/examples/http/server2/io_service_pool.cpp
 /src/examples/http/server2/io_service_pool.hpp
+/src/examples/http/server2/main.cpp
 /src/examples/http/server2/mime_types.cpp
 /src/examples/http/server2/mime_types.hpp
-/src/examples/http/server2/posix_main.cpp
 /src/examples/http/server2/reply.cpp
 /src/examples/http/server2/reply.hpp
 /src/examples/http/server2/request_handler.cpp
@@ -3300,14 +3372,13 @@
 /src/examples/http/server2/request_parser.hpp
 /src/examples/http/server2/server.cpp
 /src/examples/http/server2/server.hpp
-/src/examples/http/server2/win_main.cpp
 /src/examples/http/server3/
 /src/examples/http/server3/connection.cpp
 /src/examples/http/server3/connection.hpp
 /src/examples/http/server3/header.hpp
+/src/examples/http/server3/main.cpp
 /src/examples/http/server3/mime_types.cpp
 /src/examples/http/server3/mime_types.hpp
-/src/examples/http/server3/posix_main.cpp
 /src/examples/http/server3/reply.cpp
 /src/examples/http/server3/reply.hpp
 /src/examples/http/server3/request_handler.cpp
@@ -3317,15 +3388,14 @@
 /src/examples/http/server3/request_parser.hpp
 /src/examples/http/server3/server.cpp
 /src/examples/http/server3/server.hpp
-/src/examples/http/server3/win_main.cpp
 /src/examples/http/server4/
 /src/examples/http/server4/coroutine.hpp
 /src/examples/http/server4/file_handler.cpp
 /src/examples/http/server4/file_handler.hpp
 /src/examples/http/server4/header.hpp
+/src/examples/http/server4/main.cpp
 /src/examples/http/server4/mime_types.cpp
 /src/examples/http/server4/mime_types.hpp
-/src/examples/http/server4/posix_main.cpp
 /src/examples/http/server4/reply.cpp
 /src/examples/http/server4/reply.hpp
 /src/examples/http/server4/request.hpp
@@ -3334,16 +3404,15 @@
 /src/examples/http/server4/server.cpp
 /src/examples/http/server4/server.hpp
 /src/examples/http/server4/unyield.hpp
-/src/examples/http/server4/win_main.cpp
 /src/examples/http/server4/yield.hpp
 /src/examples/http/server/connection.cpp
 /src/examples/http/server/connection.hpp
 /src/examples/http/server/connection_manager.cpp
 /src/examples/http/server/connection_manager.hpp
 /src/examples/http/server/header.hpp
+/src/examples/http/server/main.cpp
 /src/examples/http/server/mime_types.cpp
 /src/examples/http/server/mime_types.hpp
-/src/examples/http/server/posix_main.cpp
 /src/examples/http/server/reply.cpp
 /src/examples/http/server/reply.hpp
 /src/examples/http/server/request_handler.cpp
@@ -3353,7 +3422,6 @@
 /src/examples/http/server/request_parser.hpp
 /src/examples/http/server/server.cpp
 /src/examples/http/server/server.hpp
-/src/examples/http/server/win_main.cpp
 /src/examples/icmp/
 /src/examples/icmp/icmp_header.hpp
 /src/examples/icmp/ipv4_header.hpp
@@ -3461,7 +3529,9 @@
 /src/tests/unit/basic_raw_socket.cpp
 /src/tests/unit/basic_seq_packet_socket.cpp
 /src/tests/unit/basic_serial_port.cpp
+/src/tests/unit/basic_signal_set.cpp
 /src/tests/unit/basic_socket_acceptor.cpp
+/src/tests/unit/basic_streambuf.cpp
 /src/tests/unit/basic_stream_socket.cpp
 /src/tests/unit/buffer.cpp
 /src/tests/unit/buffered_read_stream.cpp
@@ -3514,6 +3584,8 @@
 /src/tests/unit/serial_port_base.cpp
 /src/tests/unit/serial_port.cpp
 /src/tests/unit/serial_port_service.cpp
+/src/tests/unit/signal_set.cpp
+/src/tests/unit/signal_set_service.cpp
 /src/tests/unit/socket_acceptor_service.cpp
 /src/tests/unit/socket_base.cpp
 /src/tests/unit/ssl/
@@ -3525,6 +3597,7 @@
 /src/tests/unit/ssl/stream.cpp
 /src/tests/unit/ssl/stream_service.cpp
 /src/tests/unit/strand.cpp
+/src/tests/unit/streambuf.cpp
 /src/tests/unit/stream_socket_service.cpp
 /src/tests/unit/thread.cpp
 /src/tests/unit/time_traits.cpp
@@ -3541,3 +3614,5 @@
 /src/tests/unit/windows/stream_handle_service.cpp
 /src/tests/unit/write_at.cpp
 /src/tests/unit/write.cpp
+/src/tools/
+/src/tools/handlerviz.pl
diff --git a/asio/boost_asio.manifest b/asio/boost_asio.manifest
index 06d442a..a213dd0 100644
--- a/asio/boost_asio.manifest
+++ b/asio/boost_asio.manifest
@@ -7,6 +7,7 @@
 /boost/asio/basic_raw_socket.hpp
 /boost/asio/basic_seq_packet_socket.hpp
 /boost/asio/basic_serial_port.hpp
+/boost/asio/basic_signal_set.hpp
 /boost/asio/basic_socket_acceptor.hpp
 /boost/asio/basic_socket.hpp
 /boost/asio/basic_socket_iostream.hpp
@@ -56,6 +57,7 @@
 /boost/asio/detail/gcc_x86_fenced_block.hpp
 /boost/asio/detail/handler_alloc_helpers.hpp
 /boost/asio/detail/handler_invoke_helpers.hpp
+/boost/asio/detail/handler_tracking.hpp
 /boost/asio/detail/handler_type_requirements.hpp
 /boost/asio/detail/hash_map.hpp
 /boost/asio/detail/impl/
@@ -65,6 +67,7 @@
 /boost/asio/detail/impl/epoll_reactor.hpp
 /boost/asio/detail/impl/epoll_reactor.ipp
 /boost/asio/detail/impl/eventfd_select_interrupter.ipp
+/boost/asio/detail/impl/handler_tracking.ipp
 /boost/asio/detail/impl/kqueue_reactor.hpp
 /boost/asio/detail/impl/kqueue_reactor.ipp
 /boost/asio/detail/impl/pipe_select_interrupter.ipp
@@ -80,6 +83,7 @@
 /boost/asio/detail/impl/select_reactor.ipp
 /boost/asio/detail/impl/service_registry.hpp
 /boost/asio/detail/impl/service_registry.ipp
+/boost/asio/detail/impl/signal_set_service.ipp
 /boost/asio/detail/impl/socket_ops.ipp
 /boost/asio/detail/impl/socket_select_interrupter.ipp
 /boost/asio/detail/impl/strand_service.hpp
@@ -97,6 +101,7 @@
 /boost/asio/detail/impl/win_iocp_socket_service_base.ipp
 /boost/asio/detail/impl/win_mutex.ipp
 /boost/asio/detail/impl/winsock_init.ipp
+/boost/asio/detail/impl/win_static_mutex.ipp
 /boost/asio/detail/impl/win_thread.ipp
 /boost/asio/detail/impl/win_tss_ptr.ipp
 /boost/asio/detail/io_control.hpp
@@ -110,6 +115,7 @@
 /boost/asio/detail/null_fenced_block.hpp
 /boost/asio/detail/null_mutex.hpp
 /boost/asio/detail/null_signal_blocker.hpp
+/boost/asio/detail/null_static_mutex.hpp
 /boost/asio/detail/null_thread.hpp
 /boost/asio/detail/null_tss_ptr.hpp
 /boost/asio/detail/object_pool.hpp
@@ -122,6 +128,7 @@
 /boost/asio/detail/posix_fd_set_adapter.hpp
 /boost/asio/detail/posix_mutex.hpp
 /boost/asio/detail/posix_signal_blocker.hpp
+/boost/asio/detail/posix_static_mutex.hpp
 /boost/asio/detail/posix_thread.hpp
 /boost/asio/detail/posix_tss_ptr.hpp
 /boost/asio/detail/push_options.hpp
@@ -154,13 +161,17 @@
 /boost/asio/detail/service_registry.hpp
 /boost/asio/detail/shared_ptr.hpp
 /boost/asio/detail/signal_blocker.hpp
+/boost/asio/detail/signal_handler.hpp
 /boost/asio/detail/signal_init.hpp
+/boost/asio/detail/signal_op.hpp
+/boost/asio/detail/signal_set_service.hpp
 /boost/asio/detail/socket_holder.hpp
 /boost/asio/detail/socket_ops.hpp
 /boost/asio/detail/socket_option.hpp
 /boost/asio/detail/socket_select_interrupter.hpp
 /boost/asio/detail/socket_types.hpp
 /boost/asio/detail/solaris_fenced_block.hpp
+/boost/asio/detail/static_mutex.hpp
 /boost/asio/detail/strand_service.hpp
 /boost/asio/detail/task_io_service_fwd.hpp
 /boost/asio/detail/task_io_service.hpp
@@ -200,6 +211,7 @@
 /boost/asio/detail/win_iocp_socket_service.hpp
 /boost/asio/detail/win_mutex.hpp
 /boost/asio/detail/winsock_init.hpp
+/boost/asio/detail/win_static_mutex.hpp
 /boost/asio/detail/win_thread.hpp
 /boost/asio/detail/win_tss_ptr.hpp
 /boost/asio/detail/wrapped_handler.hpp
@@ -280,6 +292,8 @@
 /boost/asio/serial_port_base.hpp
 /boost/asio/serial_port.hpp
 /boost/asio/serial_port_service.hpp
+/boost/asio/signal_set.hpp
+/boost/asio/signal_set_service.hpp
 /boost/asio/socket_acceptor_service.hpp
 /boost/asio/socket_base.hpp
 /boost/asio/ssl/
@@ -361,9 +375,9 @@
 /doc/html/boost_asio/example/http/server2/header.hpp
 /doc/html/boost_asio/example/http/server2/io_service_pool.cpp
 /doc/html/boost_asio/example/http/server2/io_service_pool.hpp
+/doc/html/boost_asio/example/http/server2/main.cpp
 /doc/html/boost_asio/example/http/server2/mime_types.cpp
 /doc/html/boost_asio/example/http/server2/mime_types.hpp
-/doc/html/boost_asio/example/http/server2/posix_main.cpp
 /doc/html/boost_asio/example/http/server2/reply.cpp
 /doc/html/boost_asio/example/http/server2/reply.hpp
 /doc/html/boost_asio/example/http/server2/request_handler.cpp
@@ -373,14 +387,13 @@
 /doc/html/boost_asio/example/http/server2/request_parser.hpp
 /doc/html/boost_asio/example/http/server2/server.cpp
 /doc/html/boost_asio/example/http/server2/server.hpp
-/doc/html/boost_asio/example/http/server2/win_main.cpp
 /doc/html/boost_asio/example/http/server3/
 /doc/html/boost_asio/example/http/server3/connection.cpp
 /doc/html/boost_asio/example/http/server3/connection.hpp
 /doc/html/boost_asio/example/http/server3/header.hpp
+/doc/html/boost_asio/example/http/server3/main.cpp
 /doc/html/boost_asio/example/http/server3/mime_types.cpp
 /doc/html/boost_asio/example/http/server3/mime_types.hpp
-/doc/html/boost_asio/example/http/server3/posix_main.cpp
 /doc/html/boost_asio/example/http/server3/reply.cpp
 /doc/html/boost_asio/example/http/server3/reply.hpp
 /doc/html/boost_asio/example/http/server3/request_handler.cpp
@@ -390,15 +403,14 @@
 /doc/html/boost_asio/example/http/server3/request_parser.hpp
 /doc/html/boost_asio/example/http/server3/server.cpp
 /doc/html/boost_asio/example/http/server3/server.hpp
-/doc/html/boost_asio/example/http/server3/win_main.cpp
 /doc/html/boost_asio/example/http/server4/
 /doc/html/boost_asio/example/http/server4/coroutine.hpp
 /doc/html/boost_asio/example/http/server4/file_handler.cpp
 /doc/html/boost_asio/example/http/server4/file_handler.hpp
 /doc/html/boost_asio/example/http/server4/header.hpp
+/doc/html/boost_asio/example/http/server4/main.cpp
 /doc/html/boost_asio/example/http/server4/mime_types.cpp
 /doc/html/boost_asio/example/http/server4/mime_types.hpp
-/doc/html/boost_asio/example/http/server4/posix_main.cpp
 /doc/html/boost_asio/example/http/server4/reply.cpp
 /doc/html/boost_asio/example/http/server4/reply.hpp
 /doc/html/boost_asio/example/http/server4/request.hpp
@@ -407,16 +419,15 @@
 /doc/html/boost_asio/example/http/server4/server.cpp
 /doc/html/boost_asio/example/http/server4/server.hpp
 /doc/html/boost_asio/example/http/server4/unyield.hpp
-/doc/html/boost_asio/example/http/server4/win_main.cpp
 /doc/html/boost_asio/example/http/server4/yield.hpp
 /doc/html/boost_asio/example/http/server/connection.cpp
 /doc/html/boost_asio/example/http/server/connection.hpp
 /doc/html/boost_asio/example/http/server/connection_manager.cpp
 /doc/html/boost_asio/example/http/server/connection_manager.hpp
 /doc/html/boost_asio/example/http/server/header.hpp
+/doc/html/boost_asio/example/http/server/main.cpp
 /doc/html/boost_asio/example/http/server/mime_types.cpp
 /doc/html/boost_asio/example/http/server/mime_types.hpp
-/doc/html/boost_asio/example/http/server/posix_main.cpp
 /doc/html/boost_asio/example/http/server/reply.cpp
 /doc/html/boost_asio/example/http/server/reply.hpp
 /doc/html/boost_asio/example/http/server/request_handler.cpp
@@ -426,7 +437,6 @@
 /doc/html/boost_asio/example/http/server/request_parser.hpp
 /doc/html/boost_asio/example/http/server/server.cpp
 /doc/html/boost_asio/example/http/server/server.hpp
-/doc/html/boost_asio/example/http/server/win_main.cpp
 /doc/html/boost_asio/example/icmp/
 /doc/html/boost_asio/example/icmp/icmp_header.hpp
 /doc/html/boost_asio/example/icmp/ipv4_header.hpp
@@ -1092,6 +1102,36 @@
 /doc/html/boost_asio/reference/basic_serial_port/write_some.html
 /doc/html/boost_asio/reference/basic_serial_port/write_some/overload1.html
 /doc/html/boost_asio/reference/basic_serial_port/write_some/overload2.html
+/doc/html/boost_asio/reference/basic_signal_set/
+/doc/html/boost_asio/reference/basic_signal_set/add/
+/doc/html/boost_asio/reference/basic_signal_set/add.html
+/doc/html/boost_asio/reference/basic_signal_set/add/overload1.html
+/doc/html/boost_asio/reference/basic_signal_set/add/overload2.html
+/doc/html/boost_asio/reference/basic_signal_set/async_wait.html
+/doc/html/boost_asio/reference/basic_signal_set/basic_signal_set/
+/doc/html/boost_asio/reference/basic_signal_set/basic_signal_set.html
+/doc/html/boost_asio/reference/basic_signal_set/basic_signal_set/overload1.html
+/doc/html/boost_asio/reference/basic_signal_set/basic_signal_set/overload2.html
+/doc/html/boost_asio/reference/basic_signal_set/basic_signal_set/overload3.html
+/doc/html/boost_asio/reference/basic_signal_set/basic_signal_set/overload4.html
+/doc/html/boost_asio/reference/basic_signal_set/cancel/
+/doc/html/boost_asio/reference/basic_signal_set/cancel.html
+/doc/html/boost_asio/reference/basic_signal_set/cancel/overload1.html
+/doc/html/boost_asio/reference/basic_signal_set/cancel/overload2.html
+/doc/html/boost_asio/reference/basic_signal_set/clear/
+/doc/html/boost_asio/reference/basic_signal_set/clear.html
+/doc/html/boost_asio/reference/basic_signal_set/clear/overload1.html
+/doc/html/boost_asio/reference/basic_signal_set/clear/overload2.html
+/doc/html/boost_asio/reference/basic_signal_set/get_io_service.html
+/doc/html/boost_asio/reference/basic_signal_set.html
+/doc/html/boost_asio/reference/basic_signal_set/implementation.html
+/doc/html/boost_asio/reference/basic_signal_set/implementation_type.html
+/doc/html/boost_asio/reference/basic_signal_set/remove/
+/doc/html/boost_asio/reference/basic_signal_set/remove.html
+/doc/html/boost_asio/reference/basic_signal_set/remove/overload1.html
+/doc/html/boost_asio/reference/basic_signal_set/remove/overload2.html
+/doc/html/boost_asio/reference/basic_signal_set/service.html
+/doc/html/boost_asio/reference/basic_signal_set/service_type.html
 /doc/html/boost_asio/reference/basic_socket/
 /doc/html/boost_asio/reference/basic_socket_acceptor/
 /doc/html/boost_asio/reference/basic_socket_acceptor/accept/
@@ -1802,8 +1842,10 @@
 /doc/html/boost_asio/reference/buffers_iterator/
 /doc/html/boost_asio/reference/buffers_iterator/begin.html
 /doc/html/boost_asio/reference/buffers_iterator/buffers_iterator.html
+/doc/html/boost_asio/reference/buffers_iterator/difference_type.html
 /doc/html/boost_asio/reference/buffers_iterator/end.html
 /doc/html/boost_asio/reference/buffers_iterator.html
+/doc/html/boost_asio/reference/buffers_iterator/iterator_category.html
 /doc/html/boost_asio/reference/buffers_iterator/operator_arrow_.html
 /doc/html/boost_asio/reference/buffers_iterator/operator_eq__eq_.html
 /doc/html/boost_asio/reference/buffers_iterator/operator_gt__eq_.html
@@ -1831,6 +1873,9 @@
 /doc/html/boost_asio/reference/buffers_iterator/operator_plus__plus_/overload1.html
 /doc/html/boost_asio/reference/buffers_iterator/operator_plus__plus_/overload2.html
 /doc/html/boost_asio/reference/buffers_iterator/operator__star_.html
+/doc/html/boost_asio/reference/buffers_iterator/pointer.html
+/doc/html/boost_asio/reference/buffers_iterator/reference.html
+/doc/html/boost_asio/reference/buffers_iterator/value_type.html
 /doc/html/boost_asio/reference/buffer_size/
 /doc/html/boost_asio/reference/buffer_size.html
 /doc/html/boost_asio/reference/buffer_size/overload1.html
@@ -2235,8 +2280,10 @@
 /doc/html/boost_asio/reference/ip__basic_resolver_iterator/create.html
 /doc/html/boost_asio/reference/ip__basic_resolver_iterator/create/overload1.html
 /doc/html/boost_asio/reference/ip__basic_resolver_iterator/create/overload2.html
+/doc/html/boost_asio/reference/ip__basic_resolver_iterator/difference_type.html
 /doc/html/boost_asio/reference/ip__basic_resolver_iterator.html
 /doc/html/boost_asio/reference/ip__basic_resolver/iterator.html
+/doc/html/boost_asio/reference/ip__basic_resolver_iterator/iterator_category.html
 /doc/html/boost_asio/reference/ip__basic_resolver_iterator/operator_arrow_.html
 /doc/html/boost_asio/reference/ip__basic_resolver_iterator/operator_eq__eq_.html
 /doc/html/boost_asio/reference/ip__basic_resolver_iterator/operator_not__eq_.html
@@ -2245,6 +2292,9 @@
 /doc/html/boost_asio/reference/ip__basic_resolver_iterator/operator_plus__plus_/overload1.html
 /doc/html/boost_asio/reference/ip__basic_resolver_iterator/operator_plus__plus_/overload2.html
 /doc/html/boost_asio/reference/ip__basic_resolver_iterator/operator__star_.html
+/doc/html/boost_asio/reference/ip__basic_resolver_iterator/pointer.html
+/doc/html/boost_asio/reference/ip__basic_resolver_iterator/reference.html
+/doc/html/boost_asio/reference/ip__basic_resolver_iterator/value_type.html
 /doc/html/boost_asio/reference/ip__basic_resolver/protocol_type.html
 /doc/html/boost_asio/reference/ip__basic_resolver_query/
 /doc/html/boost_asio/reference/ip__basic_resolver_query/address_configured.html
@@ -2467,6 +2517,7 @@
 /doc/html/boost_asio/reference/placeholders__bytes_transferred.html
 /doc/html/boost_asio/reference/placeholders__error.html
 /doc/html/boost_asio/reference/placeholders__iterator.html
+/doc/html/boost_asio/reference/placeholders__signal_number.html
 /doc/html/boost_asio/reference/posix__basic_descriptor/
 /doc/html/boost_asio/reference/posix__basic_descriptor/assign/
 /doc/html/boost_asio/reference/posix__basic_descriptor/assign.html
@@ -2811,6 +2862,23 @@
 /doc/html/boost_asio/reference/Service.html
 /doc/html/boost_asio/reference/SettableSerialPortOption.html
 /doc/html/boost_asio/reference/SettableSocketOption.html
+/doc/html/boost_asio/reference/SignalHandler.html
+/doc/html/boost_asio/reference/signal_set.html
+/doc/html/boost_asio/reference/signal_set_service/
+/doc/html/boost_asio/reference/signal_set_service/add.html
+/doc/html/boost_asio/reference/signal_set_service/async_wait.html
+/doc/html/boost_asio/reference/signal_set_service/cancel.html
+/doc/html/boost_asio/reference/signal_set_service/clear.html
+/doc/html/boost_asio/reference/signal_set_service/construct.html
+/doc/html/boost_asio/reference/signal_set_service/destroy.html
+/doc/html/boost_asio/reference/signal_set_service/get_io_service.html
+/doc/html/boost_asio/reference/signal_set_service.html
+/doc/html/boost_asio/reference/SignalSetService.html
+/doc/html/boost_asio/reference/signal_set_service/id.html
+/doc/html/boost_asio/reference/signal_set_service/implementation_type.html
+/doc/html/boost_asio/reference/signal_set_service/remove.html
+/doc/html/boost_asio/reference/signal_set_service/shutdown_service.html
+/doc/html/boost_asio/reference/signal_set_service/signal_set_service.html
 /doc/html/boost_asio/reference/socket_acceptor_service/
 /doc/html/boost_asio/reference/socket_acceptor_service/accept.html
 /doc/html/boost_asio/reference/socket_acceptor_service/assign.html
@@ -3428,6 +3496,8 @@
 /libs/asio/doc/requirements/Service.qbk
 /libs/asio/doc/requirements/SettableSerialPortOption.qbk
 /libs/asio/doc/requirements/SettableSocketOption.qbk
+/libs/asio/doc/requirements/SignalHandler.qbk
+/libs/asio/doc/requirements/SignalSetService.qbk
 /libs/asio/doc/requirements/SocketAcceptorService.qbk
 /libs/asio/doc/requirements/SocketService.qbk
 /libs/asio/doc/requirements/StreamDescriptorService.qbk
@@ -3491,9 +3561,9 @@
 /libs/asio/example/http/server2/io_service_pool.hpp
 /libs/asio/example/http/server2/Jamfile
 /libs/asio/example/http/server2/Jamfile.v2
+/libs/asio/example/http/server2/main.cpp
 /libs/asio/example/http/server2/mime_types.cpp
 /libs/asio/example/http/server2/mime_types.hpp
-/libs/asio/example/http/server2/posix_main.cpp
 /libs/asio/example/http/server2/reply.cpp
 /libs/asio/example/http/server2/reply.hpp
 /libs/asio/example/http/server2/request_handler.cpp
@@ -3503,16 +3573,15 @@
 /libs/asio/example/http/server2/request_parser.hpp
 /libs/asio/example/http/server2/server.cpp
 /libs/asio/example/http/server2/server.hpp
-/libs/asio/example/http/server2/win_main.cpp
 /libs/asio/example/http/server3/
 /libs/asio/example/http/server3/connection.cpp
 /libs/asio/example/http/server3/connection.hpp
 /libs/asio/example/http/server3/header.hpp
 /libs/asio/example/http/server3/Jamfile
 /libs/asio/example/http/server3/Jamfile.v2
+/libs/asio/example/http/server3/main.cpp
 /libs/asio/example/http/server3/mime_types.cpp
 /libs/asio/example/http/server3/mime_types.hpp
-/libs/asio/example/http/server3/posix_main.cpp
 /libs/asio/example/http/server3/reply.cpp
 /libs/asio/example/http/server3/reply.hpp
 /libs/asio/example/http/server3/request_handler.cpp
@@ -3522,7 +3591,6 @@
 /libs/asio/example/http/server3/request_parser.hpp
 /libs/asio/example/http/server3/server.cpp
 /libs/asio/example/http/server3/server.hpp
-/libs/asio/example/http/server3/win_main.cpp
 /libs/asio/example/http/server4/
 /libs/asio/example/http/server4/coroutine.hpp
 /libs/asio/example/http/server4/file_handler.cpp
@@ -3530,9 +3598,9 @@
 /libs/asio/example/http/server4/header.hpp
 /libs/asio/example/http/server4/Jamfile
 /libs/asio/example/http/server4/Jamfile.v2
+/libs/asio/example/http/server4/main.cpp
 /libs/asio/example/http/server4/mime_types.cpp
 /libs/asio/example/http/server4/mime_types.hpp
-/libs/asio/example/http/server4/posix_main.cpp
 /libs/asio/example/http/server4/reply.cpp
 /libs/asio/example/http/server4/reply.hpp
 /libs/asio/example/http/server4/request.hpp
@@ -3541,7 +3609,6 @@
 /libs/asio/example/http/server4/server.cpp
 /libs/asio/example/http/server4/server.hpp
 /libs/asio/example/http/server4/unyield.hpp
-/libs/asio/example/http/server4/win_main.cpp
 /libs/asio/example/http/server4/yield.hpp
 /libs/asio/example/http/server/connection.cpp
 /libs/asio/example/http/server/connection.hpp
@@ -3550,9 +3617,9 @@
 /libs/asio/example/http/server/header.hpp
 /libs/asio/example/http/server/Jamfile
 /libs/asio/example/http/server/Jamfile.v2
+/libs/asio/example/http/server/main.cpp
 /libs/asio/example/http/server/mime_types.cpp
 /libs/asio/example/http/server/mime_types.hpp
-/libs/asio/example/http/server/posix_main.cpp
 /libs/asio/example/http/server/reply.cpp
 /libs/asio/example/http/server/reply.hpp
 /libs/asio/example/http/server/request_handler.cpp
@@ -3562,7 +3629,6 @@
 /libs/asio/example/http/server/request_parser.hpp
 /libs/asio/example/http/server/server.cpp
 /libs/asio/example/http/server/server.hpp
-/libs/asio/example/http/server/win_main.cpp
 /libs/asio/example/icmp/
 /libs/asio/example/icmp/icmp_header.hpp
 /libs/asio/example/icmp/ipv4_header.hpp
@@ -3686,7 +3752,9 @@
 /libs/asio/test/basic_raw_socket.cpp
 /libs/asio/test/basic_seq_packet_socket.cpp
 /libs/asio/test/basic_serial_port.cpp
+/libs/asio/test/basic_signal_set.cpp
 /libs/asio/test/basic_socket_acceptor.cpp
+/libs/asio/test/basic_streambuf.cpp
 /libs/asio/test/basic_stream_socket.cpp
 /libs/asio/test/buffer.cpp
 /libs/asio/test/buffered_read_stream.cpp
@@ -3741,6 +3809,8 @@
 /libs/asio/test/serial_port_base.cpp
 /libs/asio/test/serial_port.cpp
 /libs/asio/test/serial_port_service.cpp
+/libs/asio/test/signal_set.cpp
+/libs/asio/test/signal_set_service.cpp
 /libs/asio/test/socket_acceptor_service.cpp
 /libs/asio/test/socket_base.cpp
 /libs/asio/test/ssl/
@@ -3754,6 +3824,7 @@
 /libs/asio/test/ssl/stream.cpp
 /libs/asio/test/ssl/stream_service.cpp
 /libs/asio/test/strand.cpp
+/libs/asio/test/streambuf.cpp
 /libs/asio/test/stream_socket_service.cpp
 /libs/asio/test/time_traits.cpp
 /libs/asio/test/unit_test.hpp
@@ -3768,6 +3839,8 @@
 /libs/asio/test/windows/stream_handle_service.cpp
 /libs/asio/test/write_at.cpp
 /libs/asio/test/write.cpp
+/libs/asio/tools/
+/libs/asio/tools/handlerviz.pl
 /libs/system/
 /libs/system/build/
 /libs/system/build/Jamfile
diff --git a/asio/configure.ac b/asio/configure.ac
index cbc2256..3ae99af 100644
--- a/asio/configure.ac
+++ b/asio/configure.ac
@@ -1,4 +1,4 @@
-AC_INIT(asio, [1.5.0])
+AC_INIT(asio, [1.5.1])
 AC_CONFIG_SRCDIR(include/asio.hpp)
 AM_MAINTAINER_MODE
 AM_INIT_AUTOMAKE([tar-ustar])
diff --git a/asio/include/asio/version.hpp b/asio/include/asio/version.hpp
index 5a0aef5..7756dcc 100644
--- a/asio/include/asio/version.hpp
+++ b/asio/include/asio/version.hpp
@@ -18,6 +18,6 @@
 // ASIO_VERSION % 100 is the sub-minor version
 // ASIO_VERSION / 100 % 1000 is the minor version
 // ASIO_VERSION / 100000 is the major version
-#define ASIO_VERSION 100500 // 1.5.0
+#define ASIO_VERSION 100501 // 1.5.1
 
 #endif // ASIO_VERSION_HPP