Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r72847 - in branches/release: boost/asio/detail boost/asio/ssl/detail/impl boost/asio/ssl/impl libs/asio/doc/overview
From: chris_at_[hidden]
Date: 2011-07-02 05:18:42


Author: chris_kohlhoff
Date: 2011-07-02 05:18:41 EDT (Sat, 02 Jul 2011)
New Revision: 72847
URL: http://svn.boost.org/trac/boost/changeset/72847

Log:
Merge fixes from trunk:

* Fix bullet list.

* Fix include guard.

* Zero-length reads and writes need to complete immediately.

* Fix for static mutex initialisation.

Authorized by Beman

Text files modified:
   branches/release/boost/asio/detail/win_static_mutex.hpp | 6 +++++-
   branches/release/boost/asio/ssl/detail/impl/engine.ipp | 12 ++++++++++++
   branches/release/boost/asio/ssl/impl/src.hpp | 6 +++---
   branches/release/libs/asio/doc/overview/ssl.qbk | 14 +++++++-------
   4 files changed, 27 insertions(+), 11 deletions(-)

Modified: branches/release/boost/asio/detail/win_static_mutex.hpp
==============================================================================
--- branches/release/boost/asio/detail/win_static_mutex.hpp (original)
+++ branches/release/boost/asio/detail/win_static_mutex.hpp 2011-07-02 05:18:41 EDT (Sat, 02 Jul 2011)
@@ -55,7 +55,11 @@
   ::CRITICAL_SECTION crit_section_;
 };
 
-#define BOOST_ASIO_WIN_STATIC_MUTEX_INIT { false, { 0, 0, 0, 0, 0, 0 } }
+#if defined(UNDER_CE)
+# define BOOST_ASIO_WIN_STATIC_MUTEX_INIT { false, { 0, 0, 0, 0, 0 } }
+#else // defined(UNDER_CE)
+# define BOOST_ASIO_WIN_STATIC_MUTEX_INIT { false, { 0, 0, 0, 0, 0, 0 } }
+#endif // defined(UNDER_CE)
 
 } // namespace detail
 } // namespace asio

Modified: branches/release/boost/asio/ssl/detail/impl/engine.ipp
==============================================================================
--- branches/release/boost/asio/ssl/detail/impl/engine.ipp (original)
+++ branches/release/boost/asio/ssl/detail/impl/engine.ipp 2011-07-02 05:18:41 EDT (Sat, 02 Jul 2011)
@@ -126,6 +126,12 @@
 engine::want engine::write(const boost::asio::const_buffer& data,
     boost::system::error_code& ec, std::size_t& bytes_transferred)
 {
+ if (boost::asio::buffer_size(data) == 0)
+ {
+ ec = boost::system::error_code();
+ return engine::want_nothing;
+ }
+
   return perform(&engine::do_write,
       const_cast<void*>(boost::asio::buffer_cast<const void*>(data)),
       boost::asio::buffer_size(data), ec, &bytes_transferred);
@@ -134,6 +140,12 @@
 engine::want engine::read(const boost::asio::mutable_buffer& data,
     boost::system::error_code& ec, std::size_t& bytes_transferred)
 {
+ if (boost::asio::buffer_size(data) == 0)
+ {
+ ec = boost::system::error_code();
+ return engine::want_nothing;
+ }
+
   return perform(&engine::do_read,
       boost::asio::buffer_cast<void*>(data),
       boost::asio::buffer_size(data), ec, &bytes_transferred);

Modified: branches/release/boost/asio/ssl/impl/src.hpp
==============================================================================
--- branches/release/boost/asio/ssl/impl/src.hpp (original)
+++ branches/release/boost/asio/ssl/impl/src.hpp 2011-07-02 05:18:41 EDT (Sat, 02 Jul 2011)
@@ -8,8 +8,8 @@
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 //
 
-#ifndef BOOST_ASIO_IMPL_SRC_HPP
-#define BOOST_ASIO_IMPL_SRC_HPP
+#ifndef BOOST_ASIO_SSL_IMPL_SRC_HPP
+#define BOOST_ASIO_SSL_IMPL_SRC_HPP
 
 #define BOOST_ASIO_SOURCE
 
@@ -25,4 +25,4 @@
 #include <boost/asio/ssl/detail/impl/openssl_init.ipp>
 #include <boost/asio/ssl/impl/rfc2818_verification.ipp>
 
-#endif // BOOST_ASIO_IMPL_SRC_HPP
+#endif // BOOST_ASIO_SSL_IMPL_SRC_HPP

Modified: branches/release/libs/asio/doc/overview/ssl.qbk
==============================================================================
--- branches/release/libs/asio/doc/overview/ssl.qbk (original)
+++ branches/release/libs/asio/doc/overview/ssl.qbk 2011-07-02 05:18:41 EDT (Sat, 02 Jul 2011)
@@ -56,18 +56,18 @@
 Boost.Asio provides various methods for configuring the way SSL certificates are
 verified:
 
- * [link boost_asio.reference.ssl__context.set_default_verify_paths ssl::context::set_default_verify_paths()]
- * [link boost_asio.reference.ssl__context.set_verify_mode ssl::context::set_verify_mode()]
- * [link boost_asio.reference.ssl__context.set_verify_callback ssl::context::set_verify_callback()]
- * [link boost_asio.reference.ssl__context.load_verify_file ssl::context::load_verify_file()]
- * [link boost_asio.reference.ssl__stream.set_verify_mode ssl::stream::set_verify_mode()]
- * [link boost_asio.reference.ssl__stream.set_verify_callback ssl::stream::set_verify_callback()]
+* [link boost_asio.reference.ssl__context.set_default_verify_paths ssl::context::set_default_verify_paths()]
+* [link boost_asio.reference.ssl__context.set_verify_mode ssl::context::set_verify_mode()]
+* [link boost_asio.reference.ssl__context.set_verify_callback ssl::context::set_verify_callback()]
+* [link boost_asio.reference.ssl__context.load_verify_file ssl::context::load_verify_file()]
+* [link boost_asio.reference.ssl__stream.set_verify_mode ssl::stream::set_verify_mode()]
+* [link boost_asio.reference.ssl__stream.set_verify_callback ssl::stream::set_verify_callback()]
 
 To simplify use cases where certificates are verified according to the rules in
 RFC 2818 (certificate verification for HTTPS), Boost.Asio provides a reusable
 verification callback as a function object:
 
- * [link boost_asio.reference.ssl__rfc2818_verification ssl::rfc2818_verification]
+* [link boost_asio.reference.ssl__rfc2818_verification ssl::rfc2818_verification]
 
 The following example shows verification of a remote host's certificate
 according to the rules used by HTTPS:


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk