$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r62419 - in sandbox/SOC/2010/process: boost/process boost/process/detail libs/process/example
From: boris_at_[hidden]
Date: 2010-06-03 18:40:47
Author: bschaeling
Date: 2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
New Revision: 62419
URL: http://svn.boost.org/trac/boost/changeset/62419
Log:
First quick review (updated copyright notes and reformatted some parts of the source code) 
Text files modified: 
   sandbox/SOC/2010/process/boost/process/child.hpp                         |    34 +++-------                              
   sandbox/SOC/2010/process/boost/process/config.hpp                        |     1                                         
   sandbox/SOC/2010/process/boost/process/context.hpp                       |    25 ++-----                                 
   sandbox/SOC/2010/process/boost/process/detail/file_handle.hpp            |    90 +++++++---------------------            
   sandbox/SOC/2010/process/boost/process/detail/helper_functions.hpp       |    21 +-----                                  
   sandbox/SOC/2010/process/boost/process/detail/pipe.hpp                   |    60 +++++--------------                     
   sandbox/SOC/2010/process/boost/process/detail/posix_helpers.hpp          |    56 +++++------------                       
   sandbox/SOC/2010/process/boost/process/detail/stream_detail.hpp          |    32 ++--------                              
   sandbox/SOC/2010/process/boost/process/detail/systembuf.hpp              |    24 ++-----                                 
   sandbox/SOC/2010/process/boost/process/detail/win32_helpers.hpp          |    53 ++++------------                        
   sandbox/SOC/2010/process/boost/process/environment.hpp                   |     7 -                                       
   sandbox/SOC/2010/process/boost/process/operations.hpp                    |   125 +++++++++------------------------------ 
   sandbox/SOC/2010/process/boost/process/pistream.hpp                      |     7 -                                       
   sandbox/SOC/2010/process/boost/process/posix_child.hpp                   |     7 -                                       
   sandbox/SOC/2010/process/boost/process/postream.hpp                      |     7 -                                       
   sandbox/SOC/2010/process/boost/process/process.hpp                       |    63 +++++--------------                     
   sandbox/SOC/2010/process/boost/process/self.hpp                          |    66 ++++++++-------------                   
   sandbox/SOC/2010/process/boost/process/status.hpp                        |    10 +-                                      
   sandbox/SOC/2010/process/boost/process/stream_behavior.hpp               |     7 -                                       
   sandbox/SOC/2010/process/libs/process/example/child_stdin.cpp            |    26 +++++--                                 
   sandbox/SOC/2010/process/libs/process/example/child_stdout.cpp           |    27 +++++---                                
   sandbox/SOC/2010/process/libs/process/example/create_process.cpp         |    55 ++++++++--------                        
   sandbox/SOC/2010/process/libs/process/example/process_factory.cpp        |    19 ++++-                                   
   sandbox/SOC/2010/process/libs/process/example/read_async_from_child.cpp  |    45 +++++++------                           
   sandbox/SOC/2010/process/libs/process/example/read_async_from_parent.cpp |    29 +++++----                               
   sandbox/SOC/2010/process/libs/process/example/read_from_child.cpp        |    21 ++++-                                   
   sandbox/SOC/2010/process/libs/process/example/read_from_parent.cpp       |    19 ++++-                                   
   sandbox/SOC/2010/process/libs/process/example/read_info_from_process.cpp |    28 +++++---                                
   sandbox/SOC/2010/process/libs/process/example/terminate_child.cpp        |    20 ++++-                                   
   sandbox/SOC/2010/process/libs/process/example/wait_async_child.cpp       |    40 +++++++-----                            
   sandbox/SOC/2010/process/libs/process/example/wait_async_process.cpp     |    32 ++++++----                              
   sandbox/SOC/2010/process/libs/process/example/wait_child.cpp             |    23 +++++--                                 
   sandbox/SOC/2010/process/libs/process/example/wait_process.cpp           |    25 +++++--                                 
   sandbox/SOC/2010/process/libs/process/example/write_async_to_child.cpp   |    33 +++++----                               
   sandbox/SOC/2010/process/libs/process/example/write_async_to_parent.cpp  |    23 ++++--                                  
   sandbox/SOC/2010/process/libs/process/example/write_info_to_child.cpp    |    30 +++++----                               
   sandbox/SOC/2010/process/libs/process/example/write_info_to_self.cpp     |    19 ++++-                                   
   sandbox/SOC/2010/process/libs/process/example/write_to_child.cpp         |    27 +++++---                                
   sandbox/SOC/2010/process/libs/process/example/write_to_parent.cpp        |    19 ++++-                                   
   39 files changed, 546 insertions(+), 709 deletions(-)
Modified: sandbox/SOC/2010/process/boost/process/child.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/child.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/child.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,6 +4,7 @@
 //
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
 // Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -17,38 +18,32 @@
 
 #ifndef BOOST_PROCESS_CHILD_HPP
 #define BOOST_PROCESS_CHILD_HPP
-#include <iostream>
+
 #include <boost/process/config.hpp>
 
 #if defined(BOOST_POSIX_API)
-#include <sys/types.h>
-#include <sys/wait.h>
-#include <cerrno>
-
+#  include <sys/types.h>
+#  include <sys/wait.h>
+#  include <cerrno>
 #elif defined(BOOST_WINDOWS_API)
-#include <windows.h>
-
+#  include <windows.h>
 #else
-#error "Unsupported platform." 
+#  error "Unsupported platform." 
 #endif
 
 #include <boost/process/process.hpp>
-
-
 #include <boost/process/pistream.hpp>
 #include <boost/process/postream.hpp>
 #include <boost/process/detail/file_handle.hpp>
-
 #include <boost/system/system_error.hpp>
 #include <boost/throw_exception.hpp>
 #include <boost/shared_ptr.hpp>
 #include <boost/assert.hpp>
+#include <iostream>
 #include <vector>
 
-namespace boost
-{
-namespace process
-{
+namespace boost {
+namespace process {
 
 /**
  * Generic implementation of the Child concept.
@@ -95,8 +90,6 @@
         return *stderr_;
     }
 
-
-
     /**
      * Creates a new child object that represents the just spawned child
      * process \a id.
@@ -116,7 +109,6 @@
             fhprocess = detail::file_handle())
         : process(id)
     {
-
 #if defined(BOOST_WINDOWS_API)
         process_handle_ =  boost::shared_ptr<void>(fhprocess.release(),
                 ::CloseHandle);
@@ -130,8 +122,6 @@
             stderr_.reset(new pistream(fhstderr));
     }
 
-
-
 private:
     /**
      * The standard input stream attached to the child process.
@@ -163,7 +153,6 @@
      */
     boost::shared_ptr<pistream> stderr_;
 
-
     /**
      * Collection of child objects.
      *
@@ -171,8 +160,9 @@
      * by a vector.
      */
     typedef std::vector<child> children;
+};
 
-} ;
 }
 }
+
 #endif
Modified: sandbox/SOC/2010/process/boost/process/config.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/config.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/config.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,6 +4,7 @@
 //
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
 // Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
Modified: sandbox/SOC/2010/process/boost/process/context.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/context.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/context.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,7 +4,7 @@
 //
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
 // Copyright (c) 2008, 2009 Boris Schaeling
-// Copyright (c) 2010 Boris Schaeling, Felipe Tanus
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -18,19 +18,17 @@
  */
 
 #include <boost/process/config.hpp>
-#include <map>
 #include <boost/process/stream_behavior.hpp>
 #include <boost/process/environment.hpp>
 #include <boost/process/self.hpp>
-
+#include <map>
+#include <string>
 
 #ifndef BOOST_PROCESS_CONTEXT_HPP
 #define BOOST_PROCESS_CONTEXT_HPP
-namespace boost
-{
-namespace process
-{
 
+namespace boost {
+namespace process {
 
 /*
  * This is the declaration of context struct.
@@ -50,13 +48,9 @@
  */
 struct context
 {
-
-    environment_t environment; //default: empty
-
-    std::string process_name; //default: empty
-    //io_service *ioservice; //default: NULL
+    environment_t environment;
+    std::string process_name;
     std::string work_dir;
-
     stream_behavior stdin_behavior;
     stream_behavior stdout_behavior;
     stream_behavior stderr_behavior;
@@ -68,9 +62,7 @@
         stderr_behavior = inherit;
         work_dir = self::get_work_dir();
         environment = self::get_environment();
-
     }
-
 };
 
 /*
@@ -78,12 +70,9 @@
  * It represents a context with default values that will be
  * assign to a process if no context is passed by parameter.
  */
-
 static struct context DEFAULT_CONTEXT;
 
-
 }
 }
 
-
 #endif
Modified: sandbox/SOC/2010/process/boost/process/detail/file_handle.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/detail/file_handle.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/detail/file_handle.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,6 +4,7 @@
 //
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
 // Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -22,12 +23,12 @@
 #include <boost/process/config.hpp>
 
 #if defined(BOOST_POSIX_API)
-#include <cerrno>
-#include <unistd.h>
+#  include <cerrno>
+#  include <unistd.h>
 #elif defined(BOOST_WINDOWS_API)
-#include <windows.h>
+#  include <windows.h>
 #else
-#error "Unsupported platform." 
+#  error "Unsupported platform." 
 #endif
 
 #include <boost/assert.hpp>
@@ -35,12 +36,9 @@
 #include <boost/throw_exception.hpp>
 #include <stdio.h>
 
-namespace boost
-{
-namespace process
-{
-namespace detail
-{
+namespace boost {
+namespace process {
+namespace detail {
 
 /**
  * Simple RAII model for system file handles.
@@ -179,7 +177,6 @@
         return handle_ != invalid_value();
     }
 
-
     /**
      * Reclaims ownership of the native file handle.
      *
@@ -219,7 +216,6 @@
     }
 
 #if defined(BOOST_POSIX_API) || defined(BOOST_PROCESS_DOXYGEN)
-
     /**
      * Closes the file handle.
      *
@@ -258,34 +254,18 @@
      */
     void posix_remap(handle_type &h)
     {
-
         BOOST_ASSERT(valid());
 
         if (::dup2(handle_, h) == -1)
-            boost::throw_exception(boost::system::system_error(
-                        boost::system::error_code(errno, 
-                            boost::system::get_system_category()),
-                        "boost::process::detail::file_handle::posix_remap: \
-                        dup2(2) failed"));
+            boost::throw_exception(boost::system::system_error(boost::system::error_code(errno, boost::system::get_system_category()), "boost::process::detail::file_handle::posix_remap: dup2(2) failed"));
 
-        if (::close(handle_) == -1){
+        if (::close(handle_) == -1)
             ::close(h);
-            boost::throw_exception(boost::system::system_error(
-                        boost::system::error_code(errno, 
-                            boost::system::get_system_category()),
-                        "boost::process::detail::file_handle::posix_remap:\
-                        close(2) failed"));
-        } 
-
-        if( ::dup2(handle_,h) == -1 )
-        {
-            boost::throw_exception(boost::system::system_error(
-                        boost::system::error_code(errno, 
-                            boost::system::get_system_category()), 
-                        "boost::process::detail::file_handle::posix_remap:\
-                        dup2(2) failed"));
+            boost::throw_exception(boost::system::system_error(boost::system::error_code(errno, boost::system::get_system_category()), "boost::process::detail::file_handle::posix_remap: close(2) failed"));
+
+        if(::dup2(handle_,h) == -1)
+            boost::throw_exception(boost::system::system_error(boost::system::error_code(errno, boost::system::get_system_category()), "boost::process::detail::file_handle::posix_remap: dup2(2) failed"));
 
-        }
         handle_ = h;
     }
 
@@ -309,17 +289,13 @@
     static file_handle duplicate(int h1, int h2)
     {
         if (::dup2(h1, h2) == -1)
-            boost::throw_exception(boost::system::system_error(
-                        boost::system::error_code(errno, 
-                            boost::system::get_system_category()), 
-                        "boost::process::detail::file_handle::posix_dup:\ 
-                        dup2(2) failed"));
+            boost::throw_exception(boost::system::system_error(boost::system::error_code(errno, boost::system::get_system_category()), "boost::process::detail::file_handle::posix_dup: dup2(2) failed"));
 
         return file_handle(h2);
     }
 #endif
-#if defined(BOOST_WINDOWS_API) || defined(BOOST_PROCESS_DOXYGEN)
 
+#if defined(BOOST_WINDOWS_API) || defined(BOOST_PROCESS_DOXYGEN)
     /**
      * Closes the file handle.
      *
@@ -354,15 +330,8 @@
     {
         HANDLE h2;
 
-        if (::DuplicateHandle(::GetCurrentProcess(), h,
-                 ::GetCurrentProcess(), &h2, 0,
-                 inheritable ? TRUE : FALSE, DUPLICATE_SAME_ACCESS) ==0 )
-                 boost::throw_exception(boost::system::system_error(
-                         boost::system::error_code(::GetLastError(),
-                         boost::system::get_system_category()),
-                         "boost::process::detail::file_handle::win32_dup:\
-                         DuplicateHandle failed"));
-
+        if (::DuplicateHandle(::GetCurrentProcess(), h, ::GetCurrentProcess(), &h2, 0, inheritable ? TRUE : FALSE, DUPLICATE_SAME_ACCESS) == 0)
+                 boost::throw_exception(boost::system::system_error(boost::system::error_code(::GetLastError(), boost::system::get_system_category()), "boost::process::detail::file_handle::win32_dup: DuplicateHandle failed"));
 
         return file_handle(h2);
     }
@@ -384,26 +353,16 @@
      * \throw boost::system::system_error If GetStdHandle() or
      *        DuplicateHandle() fails.
      */
-
     static file_handle win32_dup_std(DWORD d, bool inheritable)
     {
-        BOOST_ASSERT(d == STD_INPUT_HANDLE || d == STD_OUTPUT_HANDLE
-                || d == STD_ERROR_HANDLE);
-
-
+        BOOST_ASSERT(d == STD_INPUT_HANDLE || d == STD_OUTPUT_HANDLE || d == STD_ERROR_HANDLE);
         HANDLE h = ::GetStdHandle(d);
         if (h == INVALID_HANDLE_VALUE)
-            boost::throw_exception(boost::system::system_error(
-                        boost::system::error_code(::GetLastError(), 
-                            boost::system::get_system_category()), 
-                        "boost::process::detail::file_handle::win32_std:
-                        GetStdHandle failed"));
-
+            boost::throw_exception(boost::system::system_error(boost::system::error_code(::GetLastError(), boost::system::get_system_category()), "boost::process::detail::file_handle::win32_std:GetStdHandle failed"));
         file_handle dh = win32_dup(h, inheritable);
         return dh;
     }
 
-
     /**
      * Changes the file handle's inheritable flag.
      *
@@ -420,13 +379,8 @@
     {
         BOOST_ASSERT(valid());
 
-        if (!::SetHandleInformation(handle_, HANDLE_FLAG_INHERIT, i ? 
-                    HANDLE_FLAG_INHERIT : 0))
-            boost::throw_exception(boost::system::system_error(
-                    boost::system::error_code(::GetLastError(),
-                    boost::system::get_system_category()),
-                   "boost::process::detail::file_handle::win32_set_inheritable:\
-                   SetHandleInformation failed"));
+        if (!::SetHandleInformation(handle_, HANDLE_FLAG_INHERIT, i ? HANDLE_FLAG_INHERIT : 0))
+            boost::throw_exception(boost::system::system_error(boost::system::error_code(::GetLastError(), boost::system::get_system_category()), "boost::process::detail::file_handle::win32_set_inheritable: SetHandleInformation failed"));
     }
 #endif
 
Modified: sandbox/SOC/2010/process/boost/process/detail/helper_functions.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/detail/helper_functions.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/detail/helper_functions.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,7 +4,7 @@
 // 
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal 
 // Copyright (c) 2008, 2009 Boris Schaeling 
-// Copyright (c) 2010 Boris Schaeling, Felipe Tanus
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 // 
 // Distributed under the Boost Software License, Version 1.0. (See accompanying 
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 
@@ -18,28 +18,17 @@
  *
  */ 
 
-#if defined(BOOST_POSIX_API) 
-        #include <unistd.h>
-        #include <sys/stat.h>
-        #include <fcntl.h>
-#endif
-#include <map>
-#include <string.h>
-#include <boost/optional.hpp>
-#include <boost/process/stream_behavior.hpp>
-
-
+#include <boost/process/config.hpp>
 
 #ifndef BOOST_PROCESS_HELPER_FUNCTIONS_HPP 
 #define BOOST_PROCESS_HELPER_FUNCTIONS_HPP 
-namespace boost{
-namespace process{
-namespace detail{
 
+namespace boost {
+namespace process {
+namespace detail {
 
 }
 }
 }
 
-
 #endif
Modified: sandbox/SOC/2010/process/boost/process/detail/pipe.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/detail/pipe.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/detail/pipe.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,6 +4,7 @@
 //
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
 // Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -38,12 +39,9 @@
 #include <boost/system/system_error.hpp>
 #include <boost/throw_exception.hpp>
 
-namespace boost
-{
-namespace process
-{
-namespace detail
-{
+namespace boost {
+namespace process {
+namespace detail {
 
 /**
  * Simple RAII model for anonymous pipes.
@@ -86,45 +84,28 @@
 
 #if defined(BOOST_POSIX_API)
         if (::pipe(hs) == -1)
-            boost::throw_exception(boost::system::system_error(
-                         boost::system::error_code(
-                         errno, boost::system::get_system_category()),
-                        "boost::process::detail::pipe::pipe: pipe(2) failed"));
+            boost::throw_exception(boost::system::system_error(boost::system::error_code(errno, boost::system::get_system_category()), "boost::process::detail::pipe::pipe: pipe(2) failed"));
 #elif defined(BOOST_WINDOWS_API)
-
         SECURITY_ATTRIBUTES sa;
         ZeroMemory(&sa, sizeof(sa));
         sa.nLength = sizeof(sa);
-
         sa.lpSecurityDescriptor = NULL;
         sa.bInheritHandle = TRUE;
-
-#if defined(BOOST_PROCESS_WINDOWS_USE_NAMED_PIPE)
+#  if defined(BOOST_PROCESS_WINDOWS_USE_NAMED_PIPE)
         static unsigned int nextid = 0;
-        std::string pipe = "\\\\.\\pipe\\boost_process_" + 
-            boost::lexical_cast<std::string>(::GetCurrentProcessId()) + "_"
-            + boost::lexical_cast<std::string>(nextid++);
-        hs[0] = ::CreateNamedPipeA(pipe.c_str(), PIPE_ACCESS_INBOUND |
-                FILE_FLAG_OVERLAPPED, 0, 1, 8192, 8192, 0, &sa);
+        std::string pipe = "\\\\.\\pipe\\boost_process_" + boost::lexical_cast<std::string>(::GetCurrentProcessId()) + "_" + boost::lexical_cast<std::string>(nextid++);
+        hs[0] = ::CreateNamedPipeA(pipe.c_str(), PIPE_ACCESS_INBOUND | FILE_FLAG_OVERLAPPED, 0, 1, 8192, 8192, 0, &sa);
         if (hs[0] == INVALID_HANDLE_VALUE)
-            boost::throw_exception(boost::system::system_error(::GetLastError(),
-                        boost::system::system_category, 
-                        "boost::process::detail::pipe::pipe:\
-                        CreateNamedPipe failed"));
-        hs[1] = ::CreateFileA(pipe.c_str(), GENERIC_WRITE, 0, NULL,\ 
-                OPEN_EXISTING, FILE_FLAG_OVERLAPPED, NULL);
+            boost::throw_exception(boost::system::system_error(::GetLastError(), boost::system::system_category, "boost::process::detail::pipe::pipe: CreateNamedPipe failed"));
+        hs[1] = ::CreateFileA(pipe.c_str(), GENERIC_WRITE, 0, NULL, OPEN_EXISTING, FILE_FLAG_OVERLAPPED, NULL);
         if (hs[1] == INVALID_HANDLE_VALUE)
-           boost::throw_exception(boost::system::system_error(::GetLastError(),\
-                       boost::system::system_category,
-                      "boost::process::detail::pipe::pipe: CreateFile failed"));
+            boost::throw_exception(boost::system::system_error(::GetLastError(), boost::system::system_category, "boost::process::detail::pipe::pipe: CreateFile failed"));
 
         OVERLAPPED overlapped;
         ZeroMemory(&overlapped, sizeof(overlapped));
         overlapped.hEvent = ::CreateEvent(NULL, TRUE, FALSE, NULL);
         if (!overlapped.hEvent)
-            boost::throw_exception(boost::system::system_error(::GetLastError(),
-                      boost::system::system_category,
-                     "boost::process::detail::pipe::pipe: CreateEvent failed"));
+            boost::throw_exception(boost::system::system_error(::GetLastError(), boost::system::system_category, "boost::process::detail::pipe::pipe: CreateEvent failed"));
         BOOL b = ::ConnectNamedPipe(hs[0], &overlapped);
         if (!b)
         {
@@ -134,28 +115,19 @@
                         == WAIT_FAILED)
                 {
                     ::CloseHandle(overlapped.hEvent);
-                    boost::throw_exception(boost::system::system_error(
-                                ::GetLastError(), 
-                                boost::system::system_category, 
-                                "boost::process::detail::pipe::pipe:\ 
-                                WaitForSingleObject failed"));
+                    boost::throw_exception(boost::system::system_error(::GetLastError(), boost::system::system_category, "boost::process::detail::pipe::pipe: WaitForSingleObject failed"));
                 }
             }
             else if (::GetLastError() != ERROR_PIPE_CONNECTED)
             {
                 ::CloseHandle(overlapped.hEvent);
-                boost::throw_exception(boost::system::system_error(
-                            ::GetLastError(), boost::system::system_category,
-                            "boost::process::detail::pipe::pipe:\ 
-                            ConnectNamedPipe failed"));
+                boost::throw_exception(boost::system::system_error(::GetLastError(), boost::system::system_category, "boost::process::detail::pipe::pipe: ConnectNamedPipe failed"));
             }
         }
         ::CloseHandle(overlapped.hEvent);
-#else
+#  else
         if (!::CreatePipe(&hs[0], &hs[1], &sa, 0))
-            boost::throw_exception(boost::system::system_error(::GetLastError(),
-                      boost::system::system_category,
-                     "boost::process::detail::pipe::pipe: CreatePipe failed"));
+            boost::throw_exception(boost::system::system_error(::GetLastError(), boost::system::system_category, "boost::process::detail::pipe::pipe: CreatePipe failed"));
 #  endif
 #endif
 
Modified: sandbox/SOC/2010/process/boost/process/detail/posix_helpers.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/detail/posix_helpers.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/detail/posix_helpers.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,7 +4,7 @@
 //
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
 // Copyright (c) 2008, 2009 Boris Schaeling
-// Copyright (c) 2010 Boris Schaeling, Felipe Tanus
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -18,30 +18,27 @@
  *
  */
 
+#include <boost/process/config.hpp>
 
 #if defined(BOOST_POSIX_API)
-#include <unistd.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-#include <stdio.h>
+#  include <unistd.h>
+#  include <sys/stat.h>
+#  include <fcntl.h>
+#  include <stdio.h>
 #endif
-#include <map>
-#include <string.h>
+
 #include <boost/optional.hpp>
 #include <boost/process/stream_behavior.hpp>
 #include <boost/process/detail/stream_detail.hpp>
-
+#include <map>
+#include <string.h>
 
 #ifndef BOOST_PROCESS_POSIX_HELPERS_HPP
 #define BOOST_PROCESS_POSIX_HELPERS_HPP
-namespace boost
-{
-namespace process
-{
-namespace detail
-{
-
 
+namespace boost {
+namespace process {
+namespace detail {
 
 /*
  * This is the declaration of configure_stream function.
@@ -53,12 +50,10 @@
  */
 inline configure_child_posix_stream(stream_detail &s)
 {
-
-    switch(s.behavior)
+    switch (s.behavior)
     {
     case dummy:
     {
-
         std::string null_file;
         if(s.stream_type == stdin_type)
             null_file = "/dev/null";
@@ -72,29 +67,21 @@
             fd = ::open(null_file.c_str(), O_WRONLY);
 
         if (fd == -1)
-            boost::throw_exception(boost::system::system_error(
-                        boost::system::error_code(errno,
-                            boost::system::get_system_category()),
-                        "boost::process::detail::setup_input: open(2) of "
-                        + s.object.file_ + " failed"));
+            boost::throw_exception(boost::system::system_error(boost::system::error_code(errno, boost::system::get_system_category()), "boost::process::detail::setup_input: open(2) of " + s.object.file_ + " failed"));
 
         s.object.handle_ = file_handle(fd);
         s.object.handle_.posix_remap(s.stream_handle);
         s.object.handle_.release();
-
         break;
     }
-
     case closed:
         ::close(s.stream_handle);
         break;
-
     case inherit:
         //do nothing since is default?
         break;
-
     case capture:
-        if(s.stream_type == stdin_type)
+        if (s.stream_type == stdin_type)
         {
             s.object.pipe_.wend().close();
             s.object.pipe_.rend().posix_remap(s.stream_handle);
@@ -104,16 +91,12 @@
             s.object.pipe_.rend().close();
             s.object.pipe_.wend().posix_remap(s.stream_handle);
         }
-
         break;
-
     default:
         BOOST_ASSERT(false);
     }
-
 }
 
-
 /**
  * Converts an environment to a char** table as used by execve().
  *
@@ -128,7 +111,7 @@
  *         the environment's content. Each array entry is a
  *         NULL-terminated string of the form var=value.
  */
-inline char ** environment_to_envp( environment_t env)
+inline char **environment_to_envp(environment_t env)
 {
     char **envp = new char*[env.size() + 1];
 
@@ -159,16 +142,14 @@
  *         to the executable. The caller is responsible of freeing them.
  */
 template <class Arguments>
-inline std::pair<std::size_t, char**> collection_to_posix_argv(const Arguments
-        &args)
+inline std::pair<std::size_t, char**> collection_to_posix_argv(const Arguments &args)
 {
     std::size_t nargs = args.size();
     BOOST_ASSERT(nargs >= 0);
 
     char **argv = new char*[nargs + 1];
     typename Arguments::size_type i = 0;
-    for (typename Arguments::const_iterator it = args.begin();
-            it != args.end(); ++it)
+    for (typename Arguments::const_iterator it = args.begin(); it != args.end(); ++it)
     {
         argv[i] = new char[it->size() + 1];
         ::strncpy(argv[i], it->c_str(), it->size() + 1);
@@ -183,5 +164,4 @@
 }
 }
 
-
 #endif
Modified: sandbox/SOC/2010/process/boost/process/detail/stream_detail.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/detail/stream_detail.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/detail/stream_detail.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,7 +4,7 @@
 //
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
 // Copyright (c) 2008, 2009 Boris Schaeling
-// Copyright (c) 2010 Boris Schaeling, Felipe Tanus
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -19,23 +19,18 @@
  */
 
 #include <boost/process/config.hpp>
-#include <map>
-#include <boost/optional.hpp>
 #include <boost/process/stream_behavior.hpp>
 #include <boost/process/detail/file_handle.hpp>
 #include <boost/process/detail/pipe.hpp>
-
-
+#include <boost/optional.hpp>
+#include <map>
 
 #ifndef BOOST_PROCESS_STREAM_DETAIL_HPP
 #define BOOST_PROCESS_STREAM_DETAIL_HPP
-namespace boost
-{
-namespace process
-{
-namespace detail
-{
 
+namespace boost {
+namespace process {
+namespace detail {
 
 /*
  * This is the declaration of stream_object.
@@ -43,7 +38,6 @@
  * representation. For example, it can point to another stream or
  * to a pipe.
  */
-
 struct stream_object
 {
     int desc_to;
@@ -52,13 +46,11 @@
     pipe pipe_;
 };
 
-
 /*
  * This defines the std_stream_type enum.
  * It lists all possible std stream types.
  */
-enum std_stream_type {stdin_type=0, stdout_type=1, stderr_type=2};
-
+enum std_stream_type { stdin_type = 0, stdout_type = 1, stderr_type = 2 };
 
 /*
  * This is the declaration of a stream detail.
@@ -72,10 +64,8 @@
  * object: The object required to this behavior (see stream_object above)
  *
  */
-
 struct stream_detail
 {
-
 #if defined(BOOST_POSIX_API)
     int stream_handle;
 #elif defined(BOOST_WINDOWS_API)
@@ -94,7 +84,6 @@
         {
         case stdin_type:
         {
-
 #if defined(BOOST_POSIX_API)
             stream_handle = STDIN_FILENO;
 #elif defined(BOOST_WINDOWS_API)
@@ -122,21 +111,14 @@
         }
         default:
         {
-
             BOOST_ASSERT(false);
         }
-
-
         }
-
     }
 };
 
-
-
 }
 }
 }
 
-
 #endif
Modified: sandbox/SOC/2010/process/boost/process/detail/systembuf.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/detail/systembuf.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/detail/systembuf.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,6 +4,7 @@
 //
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
 // Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -22,13 +23,12 @@
 #include <boost/process/config.hpp>
 
 #if defined(BOOST_POSIX_API)
-#include <sys/types.h>
-#include <unistd.h>
-
+#  include <sys/types.h>
+#  include <unistd.h>
 #elif defined(BOOST_WINDOWS_API)
-#include <windows.h>
+#  include <windows.h>
 #else
-#error "Unsupported platform." 
+#  error "Unsupported platform." 
 #endif
 
 #include <boost/noncopyable.hpp>
@@ -37,15 +37,12 @@
 #include <streambuf>
 #include <cstddef>
 
-namespace boost
-{
-namespace process
-{
+namespace boost {
+namespace process {
 
 class postream;
 
-namespace detail
-{
+namespace detail {
 
 /**
  * std::streambuf implementation for system file handles.
@@ -61,7 +58,6 @@
  */
 class systembuf : public std::streambuf, public boost::noncopyable
 {
-
     friend class ::boost::process::postream;
 
 public:
@@ -90,7 +86,6 @@
      *
      * \see pistream and postream
      */
-
     explicit systembuf(handle_type h, std::size_t bufsize = 8192)
         : handle_(h),
           bufsize_(bufsize),
@@ -103,7 +98,6 @@
         BOOST_ASSERT(handle_ != INVALID_HANDLE_VALUE);
 #endif
         BOOST_ASSERT(bufsize_ > 0);
-
         setp(write_buf_.get(), write_buf_.get() + bufsize_);
     }
 
@@ -186,8 +180,6 @@
      *
      * \returns 0 on success, -1 if an error occurred.
      */
-
-
 #if defined(BOOST_POSIX_API)
     virtual int sync()
     {
Modified: sandbox/SOC/2010/process/boost/process/detail/win32_helpers.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/detail/win32_helpers.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/detail/win32_helpers.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,7 +4,7 @@
 //
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
 // Copyright (c) 2008, 2009 Boris Schaeling
-// Copyright (c) 2010 Boris Schaeling, Felipe Tanus
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -18,10 +18,14 @@
  *
  */
 
+#ifndef BOOST_PROCESS_WIN32_HELPERS_HPP
+#define BOOST_PROCESS_WIN32_HELPERS_HPP
+
+#include <boost/process/config.hpp>
+#include <boost/process/child.hpp>
 #include <boost/process/detail/file_handle.hpp>
 #include <boost/process/detail/stream_detail.hpp>
 #include <boost/process/detail/pipe.hpp>
-#include <boost/process/child.hpp>
 #include <boost/scoped_ptr.hpp>
 #include <boost/shared_array.hpp>
 #include <boost/scoped_array.hpp>
@@ -35,16 +39,9 @@
 #include <string.h>
 #include <windows.h>
 
-
-
-#ifndef BOOST_PROCESS_WIN32_HELPERS_HPP
-#define BOOST_PROCESS_WIN32_HELPERS_HPP
-namespace boost
-{
-namespace process
-{
-namespace detail
-{
+namespace boost {
+namespace process {
+namespace detail {
 
 /**
  * Converts an environment to a string used by CreateProcess().
@@ -88,8 +85,6 @@
     return envp;
 }
 
-
-
 /**
  * Converts the command line to a plain string. Converts the command line's
  * list of arguments to the format expected by the \a lpCommandLine parameter
@@ -102,15 +97,13 @@
  *         shared_array object to ensure its release at some point.
  */
 template <class Arguments>
-inline boost::shared_array<char> collection_to_win32_cmdline(const Arguments
-        &args)
+inline boost::shared_array<char> collection_to_win32_cmdline(const Arguments &args)
 {
     typedef std::vector<std::string> arguments_t;
     arguments_t args2;
     typename Arguments::size_type i = 0;
     std::size_t size = 0;
-    for (typename Arguments::const_iterator it = args.begin();
-            it != args.end(); ++it)
+    for (typename Arguments::const_iterator it = args.begin(); it != args.end(); ++it)
     {
         std::string arg = *it;
 
@@ -150,7 +143,6 @@
  */
 inline file_handle configure_win32_stream(stream_detail &sd)
 {
-
     file_handle return_handle;
 
     switch (sd.behavior)
@@ -165,32 +157,20 @@
         return_handle = file_handle::win32_dup_std(sd.stream_handle, true);
         break;
     }
-
     case dummy:
     {
         HANDLE h;
         if(sd.stream_type == stdin_type)
         {
-            h = ::CreateFileA("NUL",
-                              GENERIC_READ, 0, NULL, OPEN_EXISTING,
-                              FILE_ATTRIBUTE_NORMAL, NULL);
-
+            h = ::CreateFileA("NUL", GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
         }
         else
         {
-            h = ::CreateFileA("NUL",
-                              GENERIC_WRITE, 0, NULL, CREATE_ALWAYS,
-                              FILE_ATTRIBUTE_NORMAL, NULL);
+            h = ::CreateFileA("NUL", GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
         }
-
         if (h == INVALID_HANDLE_VALUE)
-            boost::throw_exception(boost::system::system_error(
-                     boost::system::error_code(::GetLastError(),
-                     boost::system::get_system_category()),
-                     "boost::process::detail::win32_start: CreateFile failed"));
-
+            boost::throw_exception(boost::system::system_error(boost::system::error_code(::GetLastError(), boost::system::get_system_category()), "boost::process::detail::win32_start: CreateFile failed"));
         return_handle = file_handle(h);
-
         break;
     }
 
@@ -213,19 +193,14 @@
     default:
     {
         BOOST_ASSERT(false);
-
     }
     }
 
     return return_handle;
-
-
 }
 
-
 }
 }
 }
 
-
 #endif
Modified: sandbox/SOC/2010/process/boost/process/environment.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/environment.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/environment.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,6 +4,7 @@
 //
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
 // Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -21,10 +22,8 @@
 #include <string>
 #include <map>
 
-namespace boost
-{
-namespace process
-{
+namespace boost {
+namespace process {
 
 /**
  * Representation of a process' environment variables.
Modified: sandbox/SOC/2010/process/boost/process/operations.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/operations.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/operations.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,6 +4,7 @@
 //
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
 // Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -21,17 +22,17 @@
 #include <boost/process/config.hpp>
 
 #if defined(BOOST_POSIX_API)
-#include <boost/process/detail/posix_helpers.hpp>
-#include <stdlib.h>
-#include <unistd.h>
-#if defined(__CYGWIN__)
-#include <boost/scoped_array.hpp>
-#include <sys/cygwin.h>
-#endif
+#  include <boost/process/detail/posix_helpers.hpp>
+#  include <stdlib.h>
+#  include <unistd.h>
+#  if defined(__CYGWIN__)
+#    include <boost/scoped_array.hpp>
+#    include <sys/cygwin.h>
+#  endif
 #elif defined(BOOST_WINDOWS_API)
-#include <boost/process/detail/win32_helpers.hpp>
-#include <boost/algorithm/string/predicate.hpp>
-#include <windows.h>
+#  include <boost/process/detail/win32_helpers.hpp>
+#  include <boost/algorithm/string/predicate.hpp>
+#  include <windows.h>
 #else
 #  error "Unsupported platform."
 #endif
@@ -42,8 +43,6 @@
 #include <boost/process/status.hpp>
 #include <boost/process/detail/file_handle.hpp>
 #include <boost/process/detail/stream_detail.hpp>
-
-
 #include <boost/filesystem/path.hpp>
 #include <boost/algorithm/string/predicate.hpp>
 #include <boost/system/system_error.hpp>
@@ -55,11 +54,8 @@
 #include <stdexcept>
 #include <cstddef>
 
-
-namespace boost
-{
-namespace process
-{
+namespace boost {
+namespace process {
 
 /**
  * Locates the executable program \a file in all the directory components
@@ -84,20 +80,12 @@
     std::string result;
 
 #if defined(BOOST_POSIX_API)
-
     if (path.empty())
     {
         const char *envpath = ::getenv("PATH");
         if (!envpath)
-        {
-            boost::throw_exception(
-                boost::filesystem::filesystem_error(
-                    "boost::process::find_executable_in_path: retrieving PATH\
-                    failed", file, boost::system::errc::make_error_code(
-                        boost::system::errc::no_such_file_or_directory)));
-        }
+            boost::throw_exception(boost::filesystem::filesystem_error("boost::process::find_executable_in_path: retrieving PATH failed", file, boost::system::errc::make_error_code(boost::system::errc::no_such_file_or_directory)));
         path = envpath;
-
     }
     BOOST_ASSERT(!path.empty());
 
@@ -121,9 +109,7 @@
         else
             path.substr(pos1);
 
-        std::string f = dir +
-                        (boost::algorithm::ends_with(dir, "/") ? "" : "/") +
-                        file;
+        std::string f = dir + (boost::algorithm::ends_with(dir, "/") ? "" : "/") + file;
 
         if (!::access(f.c_str(), X_OK))
             result = f;
@@ -132,7 +118,6 @@
     while (pos2 != std::string::npos && result.empty());
 
 #elif defined(BOOST_WINDOWS_API)
-
     const char *exts[] = { "", ".exe", ".com", ".bat", NULL };
     const char **ext = exts;
 
@@ -141,10 +126,7 @@
         char buf[MAX_PATH];
         char *dummy;
 
-        DWORD size = ::SearchPathA(
-                       path.empty() ? NULL :
-                       path.c_str(), file.c_str(), *ext, MAX_PATH, buf, &dummy);
-
+        DWORD size = ::SearchPathA(path.empty() ? NULL : path.c_str(), file.c_str(), *ext, MAX_PATH, buf, &dummy);
         BOOST_ASSERT(size < MAX_PATH);
 
         if (size > 0)
@@ -154,16 +136,10 @@
         }
         ++ext;
     }
-
 #endif
+
     if (result.empty())
-    {
-        boost::throw_exception(
-            boost::filesystem::filesystem_error(
-                "boost::process::find_executable_in_path: file not found", file,
-                boost::system::errc::make_error_code(
-                    boost::system::errc::no_such_file_or_directory)));
-    }
+        boost::throw_exception(boost::filesystem::filesystem_error("boost::process::find_executable_in_path: file not found", file, boost::system::errc::make_error_code(boost::system::errc::no_such_file_or_directory)));
 
     return result;
 }
@@ -189,12 +165,7 @@
         begin = slash + 1;
 
 #if defined(BOOST_WINDOWS_API)
-    if (exe.size() > 4 &&
-            (boost::algorithm::iends_with(exe, ".exe")
-             || boost::algorithm::iends_with(exe, ".com")
-             || boost::algorithm::iends_with(exe, ".bat")
-            )
-       )
+    if (exe.size() > 4 && (boost::algorithm::iends_with(exe, ".exe") || boost::algorithm::iends_with(exe, ".com") || boost::algorithm::iends_with(exe, ".bat"))) 
         end = exe.size() - 4;
 #endif
 
@@ -214,14 +185,10 @@
  *
  * \return A handle to the new child process.
  */
-
-
-
 template<class Arguments>
 inline child create_child(const std::string &executable, Arguments args, 
         context &ctx = DEFAULT_CONTEXT)
 {
-
     detail::file_handle fhstdin, fhstdout, fhstderr;
 
     //start structures that represents a std stream.
@@ -237,36 +204,25 @@
     std::string p_name = ctx.process_name.empty() ? executable:ctx.process_name;
     args.insert(args.begin(),p_name);
 
-
 #if defined(BOOST_POSIX_API)
-
     child::id_type pid = ::fork();
 
     if (pid == -1)
-    {
-        boost::throw_exception(
-            boost::system::system_error(
-                boost::system::error_code(errno, 
-                    boost::system::get_system_category()),
-                "boost::process::detail::posix_start: fork(2) failed"));
-    }
+        boost::throw_exception(boost::system::system_error(boost::system::error_code(errno, boost::system::get_system_category()), "boost::process::detail::posix_start: fork(2) failed"));
 
     if (pid == 0)
     {
-
         //configure child pipes
         detail::configure_posix_stream(stdin_stream);
         detail::configure_posix_stream(stdout_stream);
         detail::configure_posix_stream(stderr_stream);
 
         //execve call
-        std::pair<std::size_t, char**> argcv = 
-            detail::collection_to_posix_argv(args);
+        std::pair<std::size_t, char**> argcv = detail::collection_to_posix_argv(args);
         char **envp = detail::environment_to_envp(ctx.environment);
         ::execve(executable.c_str(), argcv.second, envp);
 
         BOOST_ASSERT(false);
-
     }
 
     BOOST_ASSERT(pid > 0);
@@ -293,14 +249,8 @@
         BOOST_ASSERT(fhstderr.valid());
     }
 
-
-
     return child(pid, fhstdin, fhstdout, fhstderr);
-
-
 #elif defined(BOOST_WINDOWS_API)
-
-
     //Set up the pipes when needed for the current process.
     if (stdin_stream.behavior == capture)
         fhstdin = stdin_stream.object.pipe_.wend();
@@ -309,7 +259,6 @@
     if (stderr_stream.behavior == capture)
         fhstderr = stderr_stream.object.pipe_.rend();
 
-
     //define startup info from the new child
     STARTUPINFOA startup_info;
     ::ZeroMemory(&startup_info, sizeof(startup_info));
@@ -333,7 +282,6 @@
     if(fh.valid())
         startup_info.hStdError = fh.get();
 
-
     //define process info and create it
     PROCESS_INFORMATION pi;
     ::ZeroMemory(&pi, sizeof(pi));
@@ -350,39 +298,24 @@
         detail::environment_to_win32_strings(ctx.environment);
 
     //create the process
-    if ( ::CreateProcessA(exe.get(), cmdline.get(),
-                          NULL, NULL, TRUE, 0, envstrs.get(), workdir.get(),
-                          &startup_info, &pi) == 0)
-
-        boost::throw_exception(boost::system::system_error(
-                                   boost::system::error_code(::GetLastError(),
-                                       boost::system::get_system_category()),
-                                   "boost::process::detail::win32_start:\
-                                   CreateProcess failed"));
-
-    if (! ::CloseHandle(pi.hThread))
-        boost::throw_exception(
-            boost::system::system_error(boost::system::error_code(
-                                          ::GetLastError(), 
-                                          boost::system::get_system_category()),
-                                        "boost::process::launch: CloseHandle\
-                                        failed"));
-
-    std::cout << "Process handle passado para o child:" << 
-        pi.hProcess << std::endl;
-    return child(pi.dwProcessId, fhstdin, fhstdout, fhstderr, 
-            detail::file_handle(pi.hProcess));
+    if (::CreateProcessA(exe.get(), cmdline.get(), NULL, NULL, TRUE, 0, envstrs.get(), workdir.get(), &startup_info, &pi) == 0)
+        boost::throw_exception(boost::system::system_error(boost::system::error_code(::GetLastError(), boost::system::get_system_category()), "boost::process::detail::win32_start: CreateProcess failed"));
+
+    if (!::CloseHandle(pi.hThread))
+        boost::throw_exception(boost::system::system_error(boost::system::error_code(::GetLastError(), boost::system::get_system_category()), "boost::process::launch: CloseHandle failed"));
 
+    std::cout << "Process handle passado para o child:" << pi.hProcess << std::endl;
+    return child(pi.dwProcessId, fhstdin, fhstdout, fhstderr, detail::file_handle(pi.hProcess));
 #endif
 }
 
-
 inline child create_child(const std::string &executable, 
         context &ctx = DEFAULT_CONTEXT)
 {
     std::vector<std::string> args ;
     return create_child(executable,args,ctx);
 }
+
 }
 }
 
Modified: sandbox/SOC/2010/process/boost/process/pistream.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/pistream.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/pistream.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,6 +4,7 @@
 //
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
 // Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -23,10 +24,8 @@
 #include <boost/noncopyable.hpp>
 #include <istream>
 
-namespace boost
-{
-namespace process
-{
+namespace boost {
+namespace process {
 
 /**
  * Child process' output stream.
Modified: sandbox/SOC/2010/process/boost/process/posix_child.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/posix_child.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/posix_child.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,6 +4,7 @@
 //
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
 // Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -29,10 +30,8 @@
 #include <map>
 #include <unistd.h>
 
-namespace boost
-{
-namespace process
-{
+namespace boost {
+namespace process {
 
 /**
  * POSIX implementation of the Child concept.
Modified: sandbox/SOC/2010/process/boost/process/postream.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/postream.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/postream.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,6 +4,7 @@
 //
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
 // Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -23,10 +24,8 @@
 #include <boost/noncopyable.hpp>
 #include <ostream>
 
-namespace boost
-{
-namespace process
-{
+namespace boost {
+namespace process {
 
 /**
  * Child process' input stream.
Modified: sandbox/SOC/2010/process/boost/process/process.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/process.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/process.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,6 +4,7 @@
 //
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
 // Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -18,28 +19,25 @@
 #ifndef BOOST_PROCESS_PROCESS_HPP
 #define BOOST_PROCESS_PROCESS_HPP
 
-
 #include <boost/process/config.hpp>
-#include <boost/process/status.hpp>
 
 #if defined(BOOST_POSIX_API)
-#include <cerrno>
-#include <signal.h>
+#  include <cerrno>
+#  include <signal.h>
 #elif defined(BOOST_WINDOWS_API)
-#include <cstdlib>
-#include <windows.h>
+#  include <cstdlib>
+#  include <windows.h>
 #else
-#error "Unsupported platform." 
+#  error "Unsupported platform." 
 #endif
 
+#include <boost/process/status.hpp>
 #include <boost/system/system_error.hpp>
 #include <boost/throw_exception.hpp>
 #include <boost/shared_ptr.hpp>
 
-namespace boost
-{
-namespace process
-{
+namespace boost {
+namespace process {
 
 /**
  * Generic implementation of the Process concept.
@@ -108,35 +106,20 @@
     {
 #if defined(BOOST_POSIX_API)
         if (::kill(id_, force ? SIGKILL : SIGTERM) == -1)
-            boost::throw_exception(boost::system::system_error(
-                        boost::system::error_code(
-                            errno, boost::system::get_system_category()),
-                        "boost::process::process::terminate: kill(2) failed"));
+            boost::throw_exception(boost::system::system_error(boost::system::error_code(errno, boost::system::get_system_category()), "boost::process::process::terminate: kill(2) failed"));
 
 #elif defined(BOOST_WINDOWS_API)
         HANDLE h = ::OpenProcess(PROCESS_TERMINATE, FALSE, id_);
         if (h == NULL)
-            boost::throw_exception(boost::system::system_error(
-                        boost::system::error_code(::GetLastError(),
-                            boost::system::get_system_category()),
-                        "boost::process::process::terminate:\
-                        OpenProcess failed"));
+            boost::throw_exception(boost::system::system_error(boost::system::error_code(::GetLastError(), boost::system::get_system_category()), "boost::process::process::terminate: OpenProcess failed"));
 
         if (!::TerminateProcess(h, EXIT_FAILURE))
         {
             ::CloseHandle(h);
-            boost::throw_exception(boost::system::system_error(
-                        boost::system::error_code(::GetLastError(),
-                            boost::system::get_system_category()),
-                        "boost::process::process::terminate:\
-                        TerminateProcess failed"));
+            boost::throw_exception(boost::system::system_error(boost::system::error_code(::GetLastError(), boost::system::get_system_category()), "boost::process::process::terminate: TerminateProcess failed"));
         }
         if (!::CloseHandle(h))
-            boost::throw_exception(boost::system::system_error(
-                        boost::system::error_code(::GetLastError(), 
-                            boost::system::get_system_category()), 
-                        "boost::process::process::terminate:\ 
-                        CloseHandle failed"));
+            boost::throw_exception(boost::system::system_error(boost::system::error_code(::GetLastError(), boost::system::get_system_category()), "boost::process::process::terminate: CloseHandle failed"));
 #endif
     }
     /**
@@ -155,34 +138,22 @@
 #if defined(BOOST_POSIX_API)
         int s;
         if (::waitpid(get_id(), &s, 0) == -1)
-            boost::throw_exception(boost::system::system_error(
-                        boost::system::error_code(errno, 
-                            boost::system::get_system_category()),
-                        "boost::process::child::wait: waitpid(2) failed"));
+            boost::throw_exception(boost::system::system_error(boost::system::error_code(errno, boost::system::get_system_category()), "boost::process::child::wait: waitpid(2) failed"));
         return status(s);
 #elif defined(BOOST_WINDOWS_API)
         std::cout << "Criado com ID " << process_handle_.get() << std::endl;
         if(::WaitForSingleObject(process_handle_.get(),INFINITE) == WAIT_FAILED)
         {
-
             std::cout << "Last error:" << GetLastError() << std::endl;
             std::cout << "Criado com ID " << process_handle_.get() << std::endl;
-
         }
         DWORD code;
         if (!::GetExitCodeProcess(process_handle_.get(), &code))
-        {
-            boost::throw_exception(boost::system::system_error(
-                        boost::system::error_code(::GetLastError(),
-                            boost::system::get_system_category()), 
-                        "boost::process::child::wait:\ 
-                        GetExitCodeProcess failed"));
-        }
+            boost::throw_exception(boost::system::system_error(boost::system::error_code(::GetLastError(), boost::system::get_system_category()), "boost::process::child::wait: GetExitCodeProcess failed"));
         return status(code);
 #endif
     }
 
-
 #if defined(BOOST_WINDOWS_API)
     /**
      * Process handle owned by RAII object.
@@ -195,9 +166,9 @@
      * The process' identifier.
      */
     id_type id_;
-
-
 };
+
 }
 }
+
 #endif
Modified: sandbox/SOC/2010/process/boost/process/self.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/self.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/self.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,6 +4,7 @@
 //
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
 // Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -21,17 +22,15 @@
 #include <boost/process/config.hpp>
 
 #if defined(BOOST_POSIX_API)
-#include <unistd.h>
-
-#if defined(__APPLE__)
-#include <crt_externs.h>
-#endif
-
+#  include <unistd.h>
+#  if defined(__APPLE__)
+#    include <crt_externs.h>
+#  endif
 #elif defined(BOOST_WINDOWS_API)
-#include <windows.h>
-#include <direct.h>
+#  include <windows.h>
+#  include <direct.h>
 #else
-#error "Unsupported platform." 
+#  error "Unsupported platform." 
 #endif
 
 #include <boost/process/process.hpp>
@@ -49,10 +48,8 @@
 }
 #endif
 
-namespace boost
-{
-namespace process
-{
+namespace boost {
+namespace process {
 
 /**
  * Generic implementation of the Process concept.
@@ -84,33 +81,28 @@
         environment_t e;
 
 #if defined(BOOST_POSIX_API)
-#if defined(__APPLE__)
+#  if defined(__APPLE__)
         char **env = *_NSGetEnviron();
-#else
+#  else
         char **env = ::environ;
-#endif
+#  endif
 
         while (*env)
         {
             std::string s = *env;
             std::string::size_type pos = s.find('=');
-            e.insert(boost::process::environment_t::value_type(
-                         s.substr(0, pos), s.substr(pos + 1)));
+            e.insert(boost::process::environment_t::value_type(s.substr(0, pos), s.substr(pos + 1)));
             ++env;
         }
 
 #elif defined(BOOST_WINDOWS_API)
-#ifdef GetEnvironmentStrings
-#undef GetEnvironmentStrings
-#endif
+#  ifdef GetEnvironmentStrings
+#  undef GetEnvironmentStrings
+#  endif
 
         char *ms_environ = ::GetEnvironmentStrings();
         if (!ms_environ)
-            boost::throw_exception(boost::system::system_error(
-                        boost::system::error_code(::GetLastError(),
-                            boost::system::get_system_category()),
-                        "boost::process::self::get_environment:\ 
-                        GetEnvironmentStrings failed"));
+            boost::throw_exception(boost::system::system_error(boost::system::error_code(::GetLastError(), boost::system::get_system_category()), "boost::process::self::get_environment: GetEnvironmentStrings failed"));
         try
         {
             char *env = ms_environ;
@@ -118,9 +110,7 @@
             {
                 std::string s = env;
                 std::string::size_type pos = s.find('=');
-                e.insert(boost::process::environment_t::value_type(
-                             s.substr(0, pos), s.substr(pos + 1))
-                        );
+                e.insert(boost::process::environment_t::value_type(s.substr(0, pos), s.substr(pos + 1)));
                 env += s.size() + 1;
             }
         }
@@ -135,25 +125,19 @@
         return e;
     }
 
-
-    static char * get_work_dir()
+    static char *get_work_dir()
     {
 #if defined(BOOST_POSIX_API)
         int size = pathconf(".",_PC_PATH_MAX);
-        char * buffer = (char *)malloc(size);
-        if(buffer == NULL)
+        char *buffer = (char *)malloc(size);
+        if (!buffer) 
             BOOST_ASSERT(false);
         return getcwd(buffer, size);
-
 #elif defined(BOOST_WINDOWS_API)
-
         char* buffer;
-
-        BOOST_ASSERT( (buffer = _getcwd( NULL, 0 )) != NULL );
+        BOOST_ASSERT((buffer = _getcwd( NULL, 0 )) != NULL);
         return buffer;
-
 #endif
-
     }
 
 private:
@@ -168,8 +152,8 @@
 #elif defined(BOOST_WINDOWS_API)
         process(::GetCurrentProcessId())
 #endif
-    {}
-
+    {
+    }
 };
 
 }
Modified: sandbox/SOC/2010/process/boost/process/status.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/status.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/status.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,6 +4,7 @@
 //
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
 // Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -21,19 +22,16 @@
 #include <boost/process/config.hpp>
 
 #if defined(BOOST_POSIX_API)
-#include <sys/wait.h>
+#  include <sys/wait.h>
 #elif defined(BOOST_WINDOWS_API)
-
 #else
 #  error "Unsupported platform."
 #endif
 
 #include <boost/assert.hpp>
 
-namespace boost
-{
-namespace process
-{
+namespace boost {
+namespace process {
 
 class process;
 
Modified: sandbox/SOC/2010/process/boost/process/stream_behavior.hpp
==============================================================================
--- sandbox/SOC/2010/process/boost/process/stream_behavior.hpp	(original)
+++ sandbox/SOC/2010/process/boost/process/stream_behavior.hpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -4,6 +4,7 @@
 //
 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
 // Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -21,10 +22,8 @@
 
 #include <boost/process/config.hpp>
 
-namespace boost
-{
-namespace process
-{
+namespace boost {
+namespace process {
 
 /*
  *
Modified: sandbox/SOC/2010/process/libs/process/example/child_stdin.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/child_stdin.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/child_stdin.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// creates a child process and writes synchronously 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/all/process.hpp> 
 #include <string> 
@@ -8,13 +18,11 @@
 
 int main() 
 { 
-  std::string exe = find_executable_in_path("ftp"); 
-  context ctx; 
-  // by default streams are inherited; if this process wants to write 
-  // to child's stdin the stream must be redirected (= captured) 
-  ctx.stdin_behavior = capture; 
-  child c = create_child(exe, ctx); 
-  postream &os = c.get_stdin(); 
-  os << "quit" << std::endl; 
+    std::string exe = find_executable_in_path("ftp"); 
+    context ctx; 
+    ctx.stdin_behavior = stream_behavior::capture; 
+    child c = create_child(exe, ctx); 
+    postream &os = c.get_stdin(); 
+    os << "quit" << std::endl; 
 } 
 
Modified: sandbox/SOC/2010/process/libs/process/example/child_stdout.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/child_stdout.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/child_stdout.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// creates a child process and reads synchronously 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/all/process.hpp> 
 #include <string> 
@@ -8,13 +18,10 @@
 
 int main() 
 { 
-  std::string exe = find_executable_in_path("hostname"); 
-  context ctx; 
-  // by default streams are inherited; if this process wants to read 
-  // from child's stdout the stream must be redirected (= captured) 
-  ctx.stdout_behavior = capture; 
-  child c = create_child(exe, ctx); 
-  pistream &is = c.get_stdout(); 
-  std::cout << is.rdbuf(); 
+    std::string exe = find_executable_in_path("hostname"); 
+    context ctx; 
+    ctx.stdout_behavior = stream_behavior::capture; 
+    child c = create_child(exe, ctx); 
+    pistream &is = c.get_stdout(); 
+    std::cout << is.rdbuf(); 
 } 
-
Modified: sandbox/SOC/2010/process/libs/process/example/create_process.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/create_process.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/create_process.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,35 +1,36 @@
-/*
- *  Creating process with child_create()
- */
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
-#include <boost/process.hpp>
-#include <vector> 
+#include <boost/process/all.hpp> 
 #include <iostream> 
+#include <vector> 
+#include <string> 
+#include <utility> 
 
 using namespace boost::process; 
 
 int main() 
-{
-        //simple usage
-        child c1 = create_child( find_executable_in_path("hostname") ); 
-
-        //usage with arguments
-        std::vector<std::string> args;
-
-        args.push_back("-a");
-        args.push_back("-a");
-        child c2 = create_child(find_executable_in_path("hostname"), args);
+{ 
+    child c1 = create_child(find_executable_in_path("hostname")); 
 
-        //complete usage
-        struct context ctx;
-        ctx.environment.insert(std::make_pair("NEW_ENV_VARIABLE", "VALUE"));
-        ctx.process_name = "My_process_name";
-        ctx.stdin_behavior = inherit;
-        ctx.stdout_behavior = closed;
-        ctx.stderr_behavior = closed;
-
-        child c3 = create_child(find_executable_in_path("hostname"), args,ctx);
-
-        return 0;
+    std::vector<std::string> args; 
+    args.push_back("-?"); 
+    child c2 = create_child(find_executable_in_path("hostname"), args); 
+
+    context ctx; 
+    ctx.environment.insert(std::make_pair("NEW_ENV_VARIABLE", "VALUE")); 
+    ctx.process_name = "My_process_name"; 
+    ctx.stdin_behavior = stream_behavior::inherit; 
+    ctx.stdout_behavior = stream_behavior::closed; 
+    ctx.stderr_behavior = stream_behavior::closed; 
+    child c3 = create_child(find_executable_in_path("hostname"), args, ctx); 
 } 
-
Modified: sandbox/SOC/2010/process/libs/process/example/process_factory.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/process_factory.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/process_factory.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// creates a child process using the high-level API 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/process/all.hpp> 
 #include <boost/assign/list_of.hpp> 
@@ -9,8 +19,7 @@
 
 int main() 
 { 
-  process_factory f("C:\\Windows\\notepad.exe"); 
-  f.environment.insert(std::make_pair("NEW_ENV_VARIABLE", "VALUE")); 
-  child = f.create(); 
+    process_factory f("C:\\Windows\\notepad.exe"); 
+    f.environment.insert(std::make_pair("NEW_ENV_VARIABLE", "VALUE")); 
+    child = f.create(); 
 } 
-
Modified: sandbox/SOC/2010/process/libs/process/example/read_async_from_child.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/read_async_from_child.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/read_async_from_child.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// creates a child process and reads asynchronously 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/all/process.hpp> 
 #include <boost/asio.hpp> 
@@ -19,32 +29,25 @@
 
 int main() 
 { 
-  std::string exe = find_executable_in_path("hostname"); 
-  context ctx; 
-  // if we want to use asynchronous I/O we must pass a pointer to an 
-  // I/O service object; the I/O service object is used to initialize 
-  // I/O objects of type pistream and postream within the child object 
-  ctx.io_service = &ioservice; 
-  // by default streams are inherited; if this process wants to read 
-  // from child's stdout the stream must be redirected (= captured) 
-  ctx.stdout_behavior = capture; 
-  child c = create_child(exe, ctx); 
-  is = &c.get_stdout(); 
-  begin_read(); 
-  ioservice.run(); 
+    std::string exe = find_executable_in_path("hostname"); 
+    context ctx; 
+    ctx.stdout_behavior = stream_behavior::capture; 
+    child c = create_child(exe, ctx); 
+    is = &c.get_stdout(); 
+    begin_read(); 
+    ioservice.run(); 
 } 
 
 void begin_read() 
 { 
-  is->async_read_some(buffer(buf), boost::bind(&end_read, placeholders::error, placeholders::bytes_transferred)); 
+    is->async_read_some(buffer(buf), boost::bind(&end_read, placeholders::error, placeholders::bytes_transferred)); 
 } 
 
 void end_read(const boost::system::error_code &ec, std::size_t bytes_transferred) 
 { 
-  if (!ec) 
-  { 
-    std::cout << std::string(buf.data(), bytes_transferred) << std::flush; 
-    begin_read(); 
-  } 
+    if (!ec) 
+    { 
+      std::cout << std::string(buf.data(), bytes_transferred) << std::flush; 
+      begin_read(); 
+    } 
 } 
-
Modified: sandbox/SOC/2010/process/libs/process/example/read_async_from_parent.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/read_async_from_parent.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/read_async_from_parent.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// read asynchronously to parent process (suppose this program is always started as a child process) 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/all/process.hpp> 
 #include <boost/asio.hpp> 
@@ -13,20 +23,13 @@
 
 int main() 
 { 
-  // Boris: ctx.io_service doesn't make much sense; or are there any other 
-  // context settings to configure for a parent? 
-  //
-  // Felipe: Maybe as a member of parent?
-
-  parent p(ioservice); 
-  String buffer;
-  pistream &is = p.get_stdout(); 
-
-  async_read(os, &buffer, boost::bind(&end_read, placeholders::error)); 
-  ioservice.run(); 
+    parent p(ioservice); 
+    std::string buffer; 
+    pistream &is = p.get_stdout(); 
+    async_read(os, &buffer, boost::bind(&end_read, placeholders::error)); 
+    ioservice.run(); 
 } 
 
 void end_read(const boost::system::error_code &ec) 
 { 
 } 
-
Modified: sandbox/SOC/2010/process/libs/process/example/read_from_child.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/read_from_child.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/read_from_child.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// creates a child process and reads synchronously 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/all/process.hpp> 
 #include <string> 
@@ -8,9 +18,8 @@
 
 int main() 
 { 
-  std::string exe = find_executable_in_path("hostname"); 
-  child c = create_child(exe); 
-  pistream &is = c.get_stdout(); 
-  std::cout << is.rdbuf(); 
+    std::string exe = find_executable_in_path("hostname"); 
+    child c = create_child(exe); 
+    pistream &is = c.get_stdout(); 
+    std::cout << is.rdbuf(); 
 } 
-
Modified: sandbox/SOC/2010/process/libs/process/example/read_from_parent.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/read_from_parent.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/read_from_parent.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// reads synchronously from parent process (suppose this program is always started as a child process) 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/all/process.hpp> 
 #include <iostream> 
@@ -7,8 +17,7 @@
 
 int main() 
 { 
-  parent p; 
-  pistream &is = p.get_stdout(); 
-  std::cout << is.rdbuf(); 
+    parent p; 
+    pistream &is = p.get_stdout(); 
+    std::cout << is.rdbuf(); 
 } 
-
Modified: sandbox/SOC/2010/process/libs/process/example/read_info_from_process.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/read_info_from_process.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/read_info_from_process.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// access unrelated processes and read an attribute 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/process/all.hpp> 
 #include <boost/foreach.hpp> 
@@ -10,16 +20,12 @@
 
 int main() 
 { 
-  std::vector<process> processes; 
+    std::vector<process> processes; 
 
-  options opts; 
-  opts.children_only = true; 
-  // without any option the snapshot contains all processes; 
-  // if and how many options Boost.Process is going to support 
-  // depends on how much time there is to implement them 
-  create_snapshot(std::back_inserter(processes), opts); 
+    options opts; 
+    opts.children_only = true; 
+    create_snapshot(std::back_inserter(processes), opts); 
 
-  BOOST_FOREACH(process &p, processes) 
-    std::cout << p.name() << std::endl; 
+    BOOST_FOREACH(process &p, processes) 
+        std::cout << p.name() << std::endl; 
 } 
-
Modified: sandbox/SOC/2010/process/libs/process/example/terminate_child.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/terminate_child.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/terminate_child.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// creates a child and terminates it 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/all/process.hpp> 
 #include <string> 
@@ -7,9 +17,7 @@
 
 int main() 
 { 
-  std::string exe = find_executable_in_path("hostname"); 
-  child c = create_child(exe); 
-  c.terminate(); 
+    std::string exe = find_executable_in_path("hostname"); 
+    child c = create_child(exe); 
+    c.terminate(); 
 } 
-
-
Modified: sandbox/SOC/2010/process/libs/process/example/wait_async_child.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/wait_async_child.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/wait_async_child.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// creates a child process and reads asynchronously 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/all/process.hpp> 
 #include <boost/asio.hpp> 
@@ -19,27 +29,25 @@
 
 int main() 
 { 
-  std::string exe = find_executable_in_path("hostname"); 
-  context ctx; 
-  ctx.io_service = &ioservice; 
-  child c = create_child(exe, ctx); 
-  is = &c.get_stdout(); 
-  begin_read(); 
-  ioservice.run(); 
+    std::string exe = find_executable_in_path("hostname"); 
+    context ctx; 
+    ctx.io_service = &ioservice; 
+    child c = create_child(exe, ctx); 
+    is = &c.get_stdout(); 
+    begin_read(); 
+    ioservice.run(); 
 } 
 
 void begin_read() 
 { 
-  is->async_read_some(buffer(buf), boost::bind(&end_read, placeholders::error, placeholders::bytes_transferred)); 
+    is->async_read_some(buffer(buf), boost::bind(&end_read, placeholders::error, placeholders::bytes_transferred)); 
 } 
 
 void end_read(const boost::system::error_code &ec, std::size_t bytes_transferred) 
 { 
-  if (!ec) 
-  { 
-    std::cout << std::string(buf.data(), bytes_transferred) << std::flush; 
-    begin_read(); 
-  } 
+    if (!ec) 
+    { 
+        std::cout << std::string(buf.data(), bytes_transferred) << std::flush; 
+        begin_read(); 
+    } 
 } 
-
-
Modified: sandbox/SOC/2010/process/libs/process/example/wait_async_process.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/wait_async_process.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/wait_async_process.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// access an unrelated process and wait asynchronously 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/process/all.hpp> 
 #include <boost/asio.hpp> 
@@ -17,20 +27,16 @@
 
 int main() 
 { 
-  std::vector<process> processes; 
-  create_snapshot(std::back_inserter(processes)); 
-  process p = processes.front(); 
-  // if status is an I/O object it must be bound to an I/O service object; 
-  // we pass ioservice as a parameter to bind the status object which is 
-  // created within the status() method to the I/O service object; 
-  status &s = p.status(ioservice); 
-  s.async_wait(boost::bind(&end_wait, placeholders::error)); 
-  ioservice.run(); 
+    std::vector<process> processes; 
+    create_snapshot(std::back_inserter(processes)); 
+    process p = processes.front(); 
+    status &s = p.status(ioservice); 
+    s.async_wait(boost::bind(&end_wait, placeholders::error)); 
+    ioservice.run(); 
 } 
 
 void end_wait(const boost::system::error_code &ec) 
 { 
-  if (!ec) 
-    std::cout << "process exited" << std::endl; 
+    if (!ec) 
+        std::cout << "process exited" << std::endl; 
 } 
-
Modified: sandbox/SOC/2010/process/libs/process/example/wait_child.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/wait_child.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/wait_child.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// creates a child process and waits synchronously 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/process/all.hpp> 
 #include <string> 
@@ -8,10 +18,9 @@
 
 int main() 
 { 
-  std::string exe = find_executable_in_path("hostname"); 
-  child c = create_child(exe); 
-  status s = c.wait(); 
-  if (s.exited()) 
-    std::cout << s.exit_code() << std::endl; 
+    std::string exe = find_executable_in_path("hostname"); 
+    child c = create_child(exe); 
+    status s = c.wait(); 
+    if (s.exited()) 
+        std::cout << s.exit_code() << std::endl; 
 } 
-
Modified: sandbox/SOC/2010/process/libs/process/example/wait_process.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/wait_process.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/wait_process.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// access an unrelated process and wait synchronously 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/process/all.hpp> 
 #include <vector> 
@@ -9,11 +19,10 @@
 
 int main() 
 { 
-  std::vector<process> processes; 
-  create_snapshot(std::back_inserter(processes)); 
-  process p = processes.front(); 
-  status s = p.wait(); 
-  if (s.exited()) 
-    std::cout << s.exit_code() << std::endl; 
+    std::vector<process> processes; 
+    create_snapshot(std::back_inserter(processes)); 
+    process p = processes.front(); 
+    status s = p.wait(); 
+    if (s.exited()) 
+        std::cout << s.exit_code() << std::endl; 
 } 
-
Modified: sandbox/SOC/2010/process/libs/process/example/write_async_to_child.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/write_async_to_child.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/write_async_to_child.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// creates a child process and writes asynchronously 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/all/process.hpp> 
 #include <boost/asio.hpp> 
@@ -15,22 +25,15 @@
 
 int main() 
 { 
-  std::string exe = find_executable_in_path("ftp"); 
-  context ctx; 
-  // if we want to use asynchronous I/O we must pass a pointer to an 
-  // I/O service object; the I/O service object is used to initialize 
-  // I/O objects of type pistream and postream within the child object 
-  context.io_service = &ioservice; 
-  // by default streams are inherited; if this process wants to write 
-  // to child's stdin the stream must be redirected (= captured) 
-  ctx.stdin_behavior = capture; 
-  child c = create_child(exe, ctx); 
-  postream &os = c.get_stdin(); 
-  async_write(os, buffer("quit\n"), boost::bind(&end_write, placeholders::error)); 
-  ioservice.run(); 
+    std::string exe = find_executable_in_path("ftp"); 
+    context ctx; 
+    ctx.stdin_behavior = stream_behavior::capture; 
+    child c = create_child(exe, ctx); 
+    postream &os = c.get_stdin(); 
+    async_write(os, buffer("quit\n"), boost::bind(&end_write, placeholders::error)); 
+    ioservice.run(); 
 } 
 
 void end_write(const boost::system::error_code &ec) 
 { 
 } 
-
Modified: sandbox/SOC/2010/process/libs/process/example/write_async_to_parent.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/write_async_to_parent.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/write_async_to_parent.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// write asynchronously to parent process (suppose this program is always started as a child process) 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/all/process.hpp> 
 #include <boost/asio.hpp> 
@@ -13,15 +23,12 @@
 
 int main() 
 { 
-  // ctx.io_service doesn't make much sense; or are there any other 
-  // context settings to configure for a parent? 
-  parent p(ioservice); 
-  postream &os = p.get_stdin(); 
-  async_write(os, buffer("Hello, world!"), boost::bind(&end_write, placeholders::error)); 
-  ioservice.run(); 
+    parent p(ioservice); 
+    postream &os = p.get_stdin(); 
+    async_write(os, buffer("Hello, world!"), boost::bind(&end_write, placeholders::error)); 
+    ioservice.run(); 
 } 
 
 void end_write(const boost::system::error_code &ec) 
 { 
 } 
-
Modified: sandbox/SOC/2010/process/libs/process/example/write_info_to_child.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/write_info_to_child.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/write_info_to_child.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// access child processes and write an attribute 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/process/all.hpp> 
 #include <boost/foreach.hpp> 
@@ -10,17 +20,11 @@
 
 int main() 
 { 
-  std::vector<process> processes; 
-
-  options opts; 
-  opts.children_only = true; 
-  // without any option the snapshot contains all processes; 
-  // if and how many options Boost.Process is going to support 
-  // depends on how much time there is to implement them 
-  create_snapshot(std::back_inserter(processes), opts); 
-
-  BOOST_FOREACH(process &p, processes) 
-     p.set_priority(HIGH); //Not part of base plan 
+    std::vector<process> processes; 
+    options opts; 
+    opts.children_only = true; 
+    create_snapshot(std::back_inserter(processes), opts); 
 
+    BOOST_FOREACH(process &p, processes) 
+        p.set_priority(HIGH); 
 } 
-
Modified: sandbox/SOC/2010/process/libs/process/example/write_info_to_self.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/write_info_to_self.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/write_info_to_self.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// access child processes and write an attribute 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/process/all.hpp> 
 #include <iostream> 
@@ -7,9 +17,6 @@
 
 int main() 
 { 
-
-  self &s = self::get_instance(); 
-  s.set_priority(HIGH); //implement latter?
-
+    self &s = self::get_instance(); 
+    s.set_priority(HIGH); 
 } 
-
Modified: sandbox/SOC/2010/process/libs/process/example/write_to_child.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/write_to_child.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/write_to_child.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// creates a child process and writes synchronously 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/all/process.hpp> 
 #include <string> 
@@ -8,13 +18,10 @@
 
 int main() 
 { 
-  std::string exe = find_executable_in_path("ftp"); 
-  context ctx; 
-  // by default streams are inherited; if this process wants to write 
-  // to child's stdin the stream must be redirected (= captured) 
-  ctx.stdin_behavior = capture; 
-  child c = create_child(exe, ctx); 
-  postream &os = c.get_stdin(); 
-  os << "quit" << std::endl; 
+    std::string exe = find_executable_in_path("ftp"); 
+    context ctx; 
+    ctx.stdin_behavior = stream_behavior::capture; 
+    child c = create_child(exe, ctx); 
+    postream &os = c.get_stdin(); 
+    os << "quit" << std::endl; 
 } 
-
Modified: sandbox/SOC/2010/process/libs/process/example/write_to_parent.cpp
==============================================================================
--- sandbox/SOC/2010/process/libs/process/example/write_to_parent.cpp	(original)
+++ sandbox/SOC/2010/process/libs/process/example/write_to_parent.cpp	2010-06-03 18:40:43 EDT (Thu, 03 Jun 2010)
@@ -1,4 +1,14 @@
-// write synchronously to parent process (suppose this program is always started as a child process) 
+//
+// Boost.Process
+// ~~~~~~~~~~~~~
+//
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008, 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
 
 #include <boost/all/process.hpp> 
 
@@ -6,8 +16,7 @@
 
 int main() 
 { 
-  parent p; 
-  postream &os = p.get_stdin(); 
-  os << "Hello, world!" << std::endl; 
+    parent p; 
+    postream &os = p.get_stdin(); 
+    os << "Hello, world!" << std::endl; 
 } 
-