|
|
| Popen (std::initializer_list< std::string > args) |
| |
|
void | copy_env_from_parent () |
| | Override env with the contents of environment.
|
| |
|
void | setenv (const std::string &key, const std::string &val) |
| |
|
| Child ()=default |
| |
|
| Child (const Child &)=delete |
| |
|
| Child (Child &&)=delete |
| |
|
int | get_stdin () const |
| | Return the file descriptor to the stdin pipe to the child process, if configured, else -1.
|
| |
|
int | get_stdout () const |
| | Return the file descriptor to the stdout pipe from the child process, if configured, else -1.
|
| |
|
int | get_stderr () const |
| | Return the file descriptor to the stderr pipe from the child process, if configured, else -1.
|
| |
|
void | set_stdin (int fd) |
| | Request to redirect the child stdin to this given file descriptor.
|
| |
|
void | set_stdin (Redirect val) |
| | Request to redirect the child stdin according to val.
|
| |
|
void | set_stdout (int fd) |
| | Request to redirect the child stdout to this given file descriptor.
|
| |
|
void | set_stdout (Redirect val) |
| | Request to redirect the child stdout according to val.
|
| |
|
void | set_stderr (int fd) |
| | Request to redirect the child stderr to this given file descriptor.
|
| |
|
void | set_stderr (Redirect val) |
| | Request to redirect the child stderr according to val.
|
| |
|
void | close_stdin () |
| | Close the pipe to the child process stdin.
|
| |
|
void | close_stdout () |
| | Close the pipe from the child process stdout.
|
| |
|
void | close_stderr () |
| | Close the pipe from the child process stderr.
|
| |
|
| Child (const Child &)=delete |
| |
|
| Child (Child &&)=delete |
| |
|
Child & | operator= (const Child &)=delete |
| |
|
Child & | operator= (Child &&)=delete |
| |
|
void | fork () |
| | Start the child process.
|
| |
|
pid_t | pid () const |
| | Return the PID of the subprocess, or 0 if it has not started yet.
|
| |
|
int | returncode () const |
| | Return the return code of the subprocess; this is undefined if it has not terminated yet.
|
| |
|
int | raw_returncode () const |
| | Return the raw return code as returned by wait(2)
|
| |
|
bool | started () const |
| | Return true if the process has started.
|
| |
|
bool | terminated () const |
| | Return true if the process has terminated.
|
| |
|
bool | poll () |
| | Check if the process has terminated. Returns true if it has.
|
| |
|
int | wait () |
| | Wait for the child process to terminate and return its return code.
|
| |
|
void | send_signal (int sig) |
| | Send the given signal to the process.
|
| |
|
void | terminate () |
| | Send SIGTERM to the process.
|
| |
|
void | kill () |
| | Send SIGKILL to the process.
|
| |
|
|
std::vector< std::string > | args |
| | argv of the child process
|
| |
|
std::string | executable |
| | pathname to the executable of the child process, defaults to args[0] if empty
|
| |
|
std::vector< std::string > | env |
| | environment variables to use for the child process
|
| |
|
bool | close_fds = true |
| | After fork, close all file descriptors >=2 in the child.
|
| |
|
std::vector< int > | pass_fds |
| | Do not close these file descriptors in the child process (implies close_fds = true)
|
| |
|
std::string | cwd |
| | Change to this directory in the child process.
|
| |
|
bool | start_new_session = false |
| | If true, call setsid() in the child process.
|
| |