29#include <mstdlib/base/m_defs.h>
30#include <mstdlib/base/m_types.h>
31#include <mstdlib/thread/m_thread.h>
114struct M_popen_handle;
M_popen_fd_t
Definition: m_popen.h:119
M_popen_status_t M_popen_check(M_popen_handle_t *mp)
const char * M_popen_strerror(M_popen_err_t err)
int M_popen_close(M_popen_handle_t *mp, M_popen_err_t *errorid)
M_popen_err_t
Definition: m_popen.h:126
int M_popen_closefd(M_popen_handle_t *mp, M_popen_fd_t fd)
M_popen_handle_t * M_popen(const char *cmd, M_popen_err_t *errorid)
ssize_t M_popen_write(M_popen_handle_t *mp, M_popen_fd_t fd, const char *in, size_t in_len)
struct M_popen_handle M_popen_handle_t
Definition: m_popen.h:115
int M_popen_close_ex(M_popen_handle_t *mp, char **stdout_buf, size_t *stdout_buf_len, char **stderr_buf, size_t *stderr_buf_len, M_popen_err_t *errorid, M_uint64 timeout)
ssize_t M_popen_read(M_popen_handle_t *mp, M_popen_fd_t fd, char *out, size_t out_len, M_uint64 timeout_ms)
M_popen_status_t
Definition: m_popen.h:139
@ M_POPEN_FD_WRITE
Definition: m_popen.h:121
@ M_POPEN_FD_ERR
Definition: m_popen.h:122
@ M_POPEN_FD_READ
Definition: m_popen.h:120
@ M_POPEN_ERR_NONE
Definition: m_popen.h:127
@ M_POPEN_ERR_PIPE
Definition: m_popen.h:133
@ M_POPEN_ERR_KILLSIGNAL
Definition: m_popen.h:132
@ M_POPEN_ERR_INVALIDUSE
Definition: m_popen.h:128
@ M_POPEN_ERR_SPAWN
Definition: m_popen.h:135
@ M_POPEN_ERR_WAIT
Definition: m_popen.h:134
@ M_POPEN_ERR_CMDNOTFOUND
Definition: m_popen.h:129
@ M_POPEN_ERR_NOEXEC
Definition: m_popen.h:131
@ M_POPEN_ERR_PERM
Definition: m_popen.h:130
@ M_POPEN_STATUS_DONE
Definition: m_popen.h:142
@ M_POPEN_STATUS_RUNNING
Definition: m_popen.h:140
@ M_POPEN_STATUS_ERROR
Definition: m_popen.h:141