Update of /cvsroot/boost/boost/boost/asio/detail
In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv13776/detail

Modified Files:
        win_iocp_io_service.hpp win_iocp_socket_service.hpp 
Log Message:
Replace win_iocp_io_service::register_socket() with register_handle() to
allow it to be used with other Windows kernel objects.


Index: win_iocp_io_service.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/asio/detail/win_iocp_io_service.hpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- win_iocp_io_service.hpp     17 Nov 2006 11:40:48 -0000      1.6
+++ win_iocp_io_service.hpp     9 Dec 2006 22:31:44 -0000       1.7
@@ -94,11 +94,10 @@
     }
   }
 
-  // Register a socket with the IO completion port.
-  void register_socket(socket_type sock)
+  // Register a handle with the IO completion port.
+  void register_handle(HANDLE handle)
   {
-    HANDLE sock_as_handle = reinterpret_cast<HANDLE>(sock);
-    ::CreateIoCompletionPort(sock_as_handle, iocp_.handle, 0, 0);
+    ::CreateIoCompletionPort(handle, iocp_.handle, 0, 0);
   }
 
   // Run the event loop until interrupted or no more work.

Index: win_iocp_socket_service.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/asio/detail/win_iocp_socket_service.hpp,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- win_iocp_socket_service.hpp 17 Nov 2006 11:28:18 -0000      1.5
+++ win_iocp_socket_service.hpp 9 Dec 2006 22:31:44 -0000       1.6
@@ -92,6 +92,11 @@
       return socket_;
     }
 
+    HANDLE as_handle() const
+    {
+      return reinterpret_cast<HANDLE>(socket_);
+    }
+
     bool have_remote_endpoint() const
     {
       return have_remote_endpoint_;
@@ -262,7 +267,8 @@
     if (sock.get() == invalid_socket)
       return ec;
 
-    iocp_service_.register_socket(sock.get());
+    HANDLE sock_as_handle = reinterpret_cast<HANDLE>(sock.get());
+    iocp_service_.register_handle(sock_as_handle);
 
     impl.socket_ = sock.release();
     impl.cancel_token_.reset(static_cast<void*>(0), noop_deleter());
@@ -279,7 +285,7 @@
     boost::system::error_code ignored_ec;
     close(impl, ignored_ec);
 
-    iocp_service_.register_socket(native_socket);
+    iocp_service_.register_handle(native_socket.as_handle());
 
     impl.socket_ = native_socket;
     impl.cancel_token_.reset(static_cast<void*>(0), noop_deleter());
@@ -1862,7 +1868,7 @@
       impl.socket_ = socket_ops::socket(family, type, proto, ec);
       if (impl.socket_ == invalid_socket)
         return ec;
-      iocp_service_.register_socket(impl.socket_);
+      iocp_service_.register_handle(impl.socket_.as_handle());
     }
 
     // Perform the connect operation.
@@ -1987,7 +1993,7 @@
         io_service().post(bind_handler(handler, ec));
         return;
       }
-      iocp_service_.register_socket(impl.socket_);
+      iocp_service_.register_handle(impl.socket_.as_handle());
     }
 
     // Mark the socket as non-blocking so that the connection will take place


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Boost-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/boost-cvs

Reply via email to