9 #define START_ENV_CHAR "%"
10 #define END_ENV_CHAR "%"
12 #define START_ENV_CHAR "${"
13 #define END_ENV_CHAR "}"
42 }
else if (strlen(
env) ==
len) {
74 const char *envvars[] = {
90 const char *envvals[] = {
107 bool success =
false;
111 RZ_LOG_ERROR(
"Cannot allocate list of allocated strings.\n");
126 for (
int i = 0;
i < argc; ++
i) {
127 char *alloc_str =
NULL;
150 .args_size = argc - 1,
191 bool need_rzcons = force_rzcons || core->
is_pipe;
202 if (
src[0] ==
'\r' &&
src + 1 !=
end &&
src[1] ==
'\n') {
226 #undef START_ENV_CHAR
static const char * arg(RzAnalysis *a, csh *handle, cs_insn *insn, char *buf, int n)
const lzma_allocator const uint8_t size_t uint8_t * out
static RzCmdStatus system_common_handler(RzCore *core, bool force_rzcons, int argc, const char **argv)
RZ_IPI RzCmdStatus rz_system_handler(RzCore *core, int argc, const char **argv)
static const char * system_apply_env_var(const char *env, const char *value, const char *arg, char **alloc_str)
static char * config_path(RzCore *core)
static int system_exec(RzCore *core, int argc, const char **argv, char **output, int *length, int *ret)
RZ_IPI RzCmdStatus rz_system_to_cons_handler(RzCore *core, int argc, const char **argv)
RZ_API RZ_BORROW const char * rz_config_get(RzConfig *cfg, RZ_NONNULL const char *name)
RZ_API void rz_config_serialize(RZ_NONNULL RzConfig *config, RZ_NONNULL Sdb *db)
RZ_API int rz_cons_memcat(const char *str, int len)
RZ_API void * rz_cons_sleep_begin(void)
RZ_API void rz_cons_sleep_end(void *user)
static static fork const void static count static fd const char const char static newpath const char static path const char path
static static fork const void static count close
static static sync static getppid static getegid const char static filename char static len const char char static bufsiz static mask static vfork const void static prot static getpgrp const char static swapflags static arg static fd static protocol static who struct sockaddr static addrlen static backlog struct timeval struct timezone static tz const struct iovec static count static mode const void const struct sockaddr static tolen const char static pathname void static offset struct stat static buf void long static basep static whence static length const void static len static semflg const void static shmflg const struct timespec struct timespec static rem const char static group const void length
RZ_API void Ht_() free(HtName_(Ht) *ht)
RZ_API RZ_OWN RzList * rz_list_newf(RzListFree f)
Returns a new initialized RzList pointer and sets the free method.
RZ_API RZ_BORROW RzListIter * rz_list_append(RZ_NONNULL RzList *list, void *data)
Appends at the end of the list a new element.
RZ_API void rz_list_free(RZ_NONNULL RzList *list)
Empties the list and frees the list pointer.
static static fork const void static count static fd const char const char static newpath char char argv
return strdup("=SP r13\n" "=LR r14\n" "=PC r15\n" "=A0 r0\n" "=A1 r1\n" "=A2 r2\n" "=A3 r3\n" "=ZF zf\n" "=SF nf\n" "=OF vf\n" "=CF cf\n" "=SN or0\n" "gpr lr .32 56 0\n" "gpr pc .32 60 0\n" "gpr cpsr .32 64 0 ____tfiae_________________qvczn\n" "gpr or0 .32 68 0\n" "gpr tf .1 64.5 0 thumb\n" "gpr ef .1 64.9 0 endian\n" "gpr jf .1 64.24 0 java\n" "gpr qf .1 64.27 0 sticky_overflow\n" "gpr vf .1 64.28 0 overflow\n" "gpr cf .1 64.29 0 carry\n" "gpr zf .1 64.30 0 zero\n" "gpr nf .1 64.31 0 negative\n" "gpr itc .4 64.10 0 if_then_count\n" "gpr gef .4 64.16 0 great_or_equal\n" "gpr r0 .32 0 0\n" "gpr r1 .32 4 0\n" "gpr r2 .32 8 0\n" "gpr r3 .32 12 0\n" "gpr r4 .32 16 0\n" "gpr r5 .32 20 0\n" "gpr r6 .32 24 0\n" "gpr r7 .32 28 0\n" "gpr r8 .32 32 0\n" "gpr r9 .32 36 0\n" "gpr r10 .32 40 0\n" "gpr r11 .32 44 0\n" "gpr r12 .32 48 0\n" "gpr r13 .32 52 0\n" "gpr r14 .32 56 0\n" "gpr r15 .32 60 0\n" "gpr r16 .32 64 0\n" "gpr r17 .32 68 0\n")
enum rz_cmd_status_t RzCmdStatus
@ RZ_CMD_STATUS_OK
command handler exited in the right way
@ RZ_CMD_STATUS_ERROR
command handler had issues while running (e.g. allocation error, etc.)
RZ_API int rz_file_mkstemp(RZ_NULLABLE const char *prefix, char **oname)
RZ_API bool rz_file_rm(const char *file)
RZ_API ut64 rz_io_fd_size(RzIO *io, int fd)
#define RZ_LOG_ERROR(fmtstr,...)
static const char * rz_str_get(const char *str)
RZ_API const char * rz_str_bool(int b)
RZ_API char * rz_str_replace(char *str, const char *key, const char *val, int g)
#define rz_strf(buf,...)
Convenience macro for local temporary strings.
RZ_API RzSubprocessWaitReason rz_subprocess_wait(RzSubprocess *proc, ut64 timeout_ms)
RZ_API void rz_subprocess_free(RzSubprocess *proc)
RZ_API ut8 * rz_subprocess_out(RzSubprocess *proc, int *length)
RZ_API RzSubprocess * rz_subprocess_start_opt(RzSubprocessOpt *opt)
RZ_API void rz_subprocess_fini(void)
RZ_API bool rz_subprocess_init(void)
@ RZ_SUBPROCESS_PIPE_NONE
No pipe should be created. It can be used for stdin, stdout and stderr.
@ RZ_SUBPROCESS_PIPE_CREATE
Re-use the same pipe as stdout. It can be used for stderr only.
RZ_API int rz_subprocess_ret(RzSubprocess *proc)
RZ_API Sdb * sdb_new(const char *path, const char *name, int lock)
RZ_API bool sdb_free(Sdb *s)
RZ_API bool sdb_sync(Sdb *s)
const char * file
< Name of the executable to run. It is searched also in PATH
ut64(WINAPI *w32_GetEnabledXStateFeatures)()
static const z80_opcode fd[]