Rizin
unix-like reverse engineering framework and cli tools
|
#include <assert.h>
#include <io.h>
#include <stdio.h>
#include <stdlib.h>
#include <signal.h>
#include <limits.h>
#include <wchar.h>
#include <malloc.h>
#include "uv.h"
#include "internal.h"
#include "handle-inl.h"
#include "req-inl.h"
Go to the source code of this file.
Classes | |
struct | env_var |
Macros | |
#define | SIGKILL 9 |
#define | E_V(str) { L##str, L##str L"=", sizeof(str) } |
Typedefs | |
typedef struct env_var | env_var_t |
Variables | |
static const env_var_t | required_vars [] |
static HANDLE | uv_global_job_handle_ |
static uv_once_t | uv_global_job_handle_init_guard_ = UV_ONCE_INIT |
Definition at line 616 of file process.c.
References a, A, alloca(), assert(), b, B, int, L, LOCALE_INVARIANT, and r.
Referenced by make_program_env(), and qsort_wcscmp().
|
static |
Definition at line 849 of file process.c.
References assert(), FALSE, loop, POST_COMPLETION_FOR_REQ, and process().
Referenced by uv_spawn().
|
static |
Definition at line 831 of file process.c.
Referenced by fs__opendir(), uv_exepath(), and uv_spawn().
Definition at line 526 of file process.c.
References arg(), args, dst, DWORD, err, error(), L, NULL, pos, quote_cmd_arg(), uv__free(), and uv__malloc().
Referenced by uv_spawn().
int make_program_env | ( | char * | env_block[], |
WCHAR ** | dst_ptr | ||
) |
Definition at line 682 of file process.c.
References alloca(), ARRAY_SIZE, assert(), cmp(), dst, DWORD, env, env_strncmp(), err, i, L, len, env_var::len, NULL, qsort(), qsort_wcscmp(), required_vars, uv__free(), uv__malloc(), and uv_fatal_error().
Referenced by uv_spawn().
|
static |
Definition at line 255 of file process.c.
References test-lz4-speed::cwd, L, NULL, and search_path_join_test().
Referenced by search_path().
Definition at line 659 of file process.c.
References a, b, and env_strncmp().
Referenced by make_program_env().
WCHAR* quote_cmd_arg | ( | const WCHAR * | source, |
WCHAR * | target | ||
) |
Definition at line 453 of file process.c.
References i, L, len, NULL, source, and start.
Referenced by make_program_args().
Definition at line 340 of file process.c.
References test-lz4-speed::cwd, file, L, NULL, path, and path_search_walk_ext().
Referenced by uv_spawn().
|
static |
Definition at line 162 of file process.c.
References test-lz4-speed::cwd, DWORD, ext, L, NULL, uv__free(), and uv__malloc().
Referenced by path_search_walk_ext().
|
static |
Definition at line 67 of file process.c.
References FALSE, info(), JOB_OBJECT_LIMIT_BREAKAWAY_OK, JOB_OBJECT_LIMIT_DIE_ON_UNHANDLED_EXCEPTION, JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE, JOB_OBJECT_LIMIT_SILENT_BREAKAWAY_OK, memset(), NULL, uv_fatal_error(), and uv_global_job_handle_.
Referenced by uv_spawn().
Definition at line 1189 of file process.c.
References DWORD, err, NSIG, SIGKILL, signum, status, and uv_translate_sys_error().
Referenced by uv_kill(), and uv_process_kill().
Definition at line 1256 of file process.c.
References err, FALSE, HANDLE, kill, NULL, pid, signum, UV__ERR, uv__kill(), and uv_translate_sys_error().
void uv_process_close | ( | uv_loop_t * | loop, |
uv_process_t * | handle | ||
) |
Definition at line 903 of file process.c.
References handle, INVALID_HANDLE_VALUE, loop, r, uv__handle_closing, uv_fatal_error(), and uv_want_endgame().
Referenced by uv_close().
void uv_process_endgame | ( | uv_loop_t * | loop, |
uv_process_t * | handle | ||
) |
Definition at line 924 of file process.c.
References assert(), handle, uv__handle_close, UV_HANDLE_CLOSED, and UV_HANDLE_CLOSING.
Referenced by uv_process_endgames().
|
static |
Definition at line 140 of file process.c.
References handle, INVALID_HANDLE_VALUE, loop, NULL, uv__handle_init, and UV_REQ_INIT.
Referenced by uv_spawn().
int uv_process_kill | ( | uv_process_t * | process, |
int | signum | ||
) |
Definition at line 1238 of file process.c.
References err, INVALID_HANDLE_VALUE, process(), signum, uv__kill(), and uv_kill().
void uv_process_proc_exit | ( | uv_loop_t * | loop, |
uv_process_t * | handle | ||
) |
Definition at line 865 of file process.c.
References assert(), DWORD, handle, INVALID_HANDLE_VALUE, loop, status, uv__handle_stop, UV_HANDLE_CLOSING, uv_translate_sys_error(), and uv_want_endgame().
Referenced by uv_process_reqs().
int uv_spawn | ( | uv_loop_t * | loop, |
uv_process_t * | process, | ||
const uv_process_options_t * | options | ||
) |
Definition at line 936 of file process.c.
References ARRAY_SIZE, assert(), test-lz4-speed::cwd, uv_stdio_container_s::data, done, DWORD, EINTR, env, EPIPE, err, error(), exit_wait_callback(), find_path(), uv_stdio_container_s::flags, i, info(), int, L, loop, make_program_args(), make_program_env(), NULL, options, path, pid, process(), QUEUE_INIT, QUEUE_INSERT_TAIL, r, read(), search_path(), status, uv_stdio_container_s::stream, uv__chld(), uv__close(), uv__close_nocheckstdio(), UV__ERR, uv__free(), uv__handle_init, uv__handle_start, uv__init_global_job_handle(), uv__make_pipe(), uv__malloc(), uv__process_child_init(), uv__process_close_stream(), uv__process_init_stdio(), uv__process_open_stream(), uv__stdio_create(), uv__stdio_destroy(), uv__stdio_handle(), uv__stdio_size(), UV_CREATE_PIPE, uv_fatal_error(), uv_global_job_handle_, uv_global_job_handle_init_guard_, UV_INHERIT_FD, UV_INHERIT_STREAM, uv_once(), UV_PROCESS_DETACHED, uv_process_init(), UV_PROCESS_SETGID, UV_PROCESS_SETUID, UV_PROCESS_WINDOWS_HIDE, UV_PROCESS_WINDOWS_HIDE_CONSOLE, UV_PROCESS_WINDOWS_HIDE_GUI, UV_PROCESS_WINDOWS_VERBATIM_ARGUMENTS, uv_rwlock_wrlock(), uv_rwlock_wrunlock(), uv_signal_start(), uv_translate_sys_error(), and uv_utf8_to_utf16_alloc().
Referenced by invoke_cgi_script(), main(), and setup_workers().
Definition at line 108 of file process.c.
References assert(), NULL, r, s, and uv__malloc().
Referenced by uv_spawn().
|
static |
Definition at line 63 of file process.c.
Referenced by uv__init_global_job_handle(), and uv_spawn().
|
static |
Definition at line 64 of file process.c.
Referenced by uv_spawn().