aboutsummaryrefslogtreecommitdiff
path: root/libbutl/openssl.txx
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2017-06-06 14:05:38 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2017-06-07 14:08:27 +0300
commit7c4f5e6464a7d9a9c48b4d6773fbb348624cc32e (patch)
treeb8b86eba7852bd00191600e0e4696cc5a7c31e42 /libbutl/openssl.txx
parenta32378a9aedd61c51166432ecd26a6a5dd405ebb (diff)
Support passing environment variables to child process
Diffstat (limited to 'libbutl/openssl.txx')
-rw-r--r--libbutl/openssl.txx23
1 files changed, 10 insertions, 13 deletions
diff --git a/libbutl/openssl.txx b/libbutl/openssl.txx
index aaaa239..0a1788f 100644
--- a/libbutl/openssl.txx
+++ b/libbutl/openssl.txx
@@ -24,14 +24,13 @@ namespace butl
typename I,
typename O,
typename E,
- typename P,
typename... A>
openssl::
openssl (const C& cmdc,
I&& in,
O&& out,
E&& err,
- const P& program,
+ const process_env& env,
const std::string& command,
A&&... options)
{
@@ -39,17 +38,15 @@ namespace butl
io_data out_data;
process& p (*this);
- p = process_start (
- cmdc,
- map_in (std::forward<I> (in), in_data),
- map_out (std::forward<O> (out), out_data),
- std::forward<E> (err),
- dir_path (),
- program,
- command,
- in_data.options,
- out_data.options,
- std::forward<A> (options)...);
+ p = process_start (cmdc,
+ map_in (std::forward<I> (in), in_data),
+ map_out (std::forward<O> (out), out_data),
+ std::forward<E> (err),
+ env,
+ command,
+ in_data.options,
+ out_data.options,
+ std::forward<A> (options)...);
// Note: leaving this scope closes any open ends of the pipes in io_data.
}