aboutsummaryrefslogtreecommitdiff
path: root/bpkg/openssl.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'bpkg/openssl.cxx')
-rw-r--r--bpkg/openssl.cxx60
1 files changed, 0 insertions, 60 deletions
diff --git a/bpkg/openssl.cxx b/bpkg/openssl.cxx
deleted file mode 100644
index 5a1e29c..0000000
--- a/bpkg/openssl.cxx
+++ /dev/null
@@ -1,60 +0,0 @@
-// file : bpkg/openssl.cxx -*- C++ -*-
-// copyright : Copyright (c) 2014-2017 Code Synthesis Ltd
-// license : MIT; see accompanying LICENSE file
-
-#include <bpkg/openssl.hxx>
-
-#include <libbutl/process.hxx>
-
-#include <bpkg/diagnostics.hxx>
-
-using namespace std;
-using namespace butl;
-
-namespace bpkg
-{
- process
- start_openssl (const common_options& co,
- const char* command,
- const cstrings& options,
- bool in,
- bool out,
- bool err)
- {
- cstrings args {co.openssl ().string ().c_str (), command};
-
- // Add extra options. Normally the order of options is not important
- // (unless they override each other). However, openssl 1.0.1 seems to have
- // bugs in that department (that were apparently fixed in 1.0.2). To work
- // around these bugs we pass user-supplied options first.
- //
- for (const string& o: co.openssl_option ())
- args.push_back (o.c_str ());
-
- args.insert (args.end (), options.begin (), options.end ());
- args.push_back (nullptr);
-
- try
- {
- process_path pp (process::path_search (args[0]));
-
- if (verb >= 2)
- print_process (args);
-
- // If the caller is interested in reading STDOUT and STDERR, then
- // redirect STDERR to STDOUT, so both can be read from the same stream.
- //
- return process (
- pp, args.data (), in ? -1 : 0, out ? -1 : 1, err ? (out ? 1 : -1): 2);
- }
- catch (const process_error& e)
- {
- error << "unable to execute " << args[0] << ": " << e;
-
- if (e.child)
- exit (1);
-
- throw failed ();
- }
- }
-}