summaryrefslogtreecommitdiff
path: root/plugins/New_GPG/src/include/boost/process/child.hpp
diff options
context:
space:
mode:
authorAlexander Gluzsky <sss123next@list.ru>2013-02-03 12:54:02 +0000
committerAlexander Gluzsky <sss123next@list.ru>2013-02-03 12:54:02 +0000
commit2637b7479c3e531f891346dbe84c73805a8b5e36 (patch)
treebdfe96ed34c5f08b856fa760c2cdc70ba6763352 /plugins/New_GPG/src/include/boost/process/child.hpp
parent32e17cfa965980f07e8321fb29d38d62a2e1ad27 (diff)
ability to change key password (because of fucked gpg which does not want to give us his stdin/stdout only via ugly windows console)
git-svn-id: http://svn.miranda-ng.org/main/trunk@3406 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/New_GPG/src/include/boost/process/child.hpp')
-rw-r--r--plugins/New_GPG/src/include/boost/process/child.hpp74
1 files changed, 74 insertions, 0 deletions
diff --git a/plugins/New_GPG/src/include/boost/process/child.hpp b/plugins/New_GPG/src/include/boost/process/child.hpp
new file mode 100644
index 0000000000..ec129fc936
--- /dev/null
+++ b/plugins/New_GPG/src/include/boost/process/child.hpp
@@ -0,0 +1,74 @@
+// Copyright (c) 2006, 2007 Julio M. Merino Vidal
+// Copyright (c) 2008 Ilya Sokolov, Boris Schaeling
+// Copyright (c) 2009 Boris Schaeling
+// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
+// Copyright (c) 2011, 2012 Jeff Flinn, 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)
+
+/**
+ * \file boost/process/child.hpp
+ *
+ * Defines a child process class.
+ */
+
+#ifndef BOOST_PROCESS_CHILD_HPP
+#define BOOST_PROCESS_CHILD_HPP
+
+#include <boost/process/config.hpp>
+
+#include BOOST_PROCESS_PLATFORM_PROMOTE_PATH(child)
+BOOST_PROCESS_PLATFORM_PROMOTE_NAMESPACE(child)
+
+#if defined(BOOST_PROCESS_DOXYGEN)
+namespace boost { namespace process {
+
+/**
+ * Represents a child process.
+ *
+ * On Windows child is movable but non-copyable. The destructor
+ * automatically closes handles to the child process.
+ */
+struct child
+{
+ /**
+ * Process information.
+ *
+ * \remark <em>Windows only.</em>
+ */
+ PROCESS_INFORMATION proc_info;
+
+ /**
+ * Constructor.
+ *
+ * \remark <em>Windows only.<em/>
+ */
+ explicit child(const PROCESS_INFORMATION &pi) : proc_info(pi) {}
+
+ /**
+ * Returns the process handle.
+ *
+ * \remark <em>Windows only.</em>
+ */
+ HANDLE process_handle() const { return proc_info.hProcess; }
+
+ /**
+ * Process identifier.
+ *
+ * \remark <em>POSIX only.</em>
+ */
+ pid_t pid;
+
+ /**
+ * Constructor.
+ *
+ * \remark <em>POSIX only.</em>
+ */
+ explicit child(pid_t p) : pid(p) {}
+};
+
+}}
+#endif
+
+#endif