10 "Usage:",
" R[:!+-=ghH] [...]",
" # connect with other instances of rizin",
11 "\nremote commands:",
"",
"",
12 "R",
"",
"list all open connections",
13 "R<",
"[fd] cmd",
"send output of local command to remote fd",
14 "R",
"[fd] cmd",
"exec cmd at remote 'fd' (last open is default one)",
15 "R!",
" cmd",
"run command via rz_io_system",
16 "R+",
" [proto://]host:port",
"connect to remote host:port (*rap://, raps://, tcp://, udp://, http://)",
17 "R-",
"[fd]",
"remove all hosts or host 'fd'",
18 "R=",
"[fd]",
"open remote session with host 'fd', 'q' to quit",
19 "R!=",
"",
"disable remote cmd mode",
20 "R=!",
"",
"enable remote cmd mode",
22 ".:",
"9000",
"start the tcp server (echo x|nc ::1 9090 or curl ::1:9090/cmd/x)",
23 "R:",
"port",
"start the rap server (o rap://9999)",
24 "Rg",
"[?]",
"start the gdbserver",
25 "Rh",
"[?]",
"start the http webserver",
26 "RH",
"[?]",
"start the http webserver (and launch the web browser)",
28 "R&",
":port",
"start rap server in background (same as '& Rr')",
29 "R",
":host:port cmd",
"run 'cmd' command on remote server",
30 "\nexamples:",
"",
"",
31 "R+",
"tcp://localhost:9090/",
"connect to: rizin -c.:9090 ./bin",
32 "R+",
"rap://localhost:9090/",
"connect to: rizin rap://:9090",
33 "R+",
"http://localhost:9090/cmd/",
"connect to: rizin -c'Rh 9090' bin",
34 "o ",
"rap://:9090/",
"start the rap server on tcp port 9090",
39 "Usage:",
" R[hH] [...]",
" # http server",
40 "http server:",
"",
"",
41 "Rh",
" port",
"listen for http connections (rizin -qcRH /bin/ls)",
42 "Rh-",
"",
"stop background webserver",
43 "Rh--",
"",
"stop foreground webserver",
44 "Rh*",
"",
"restart current webserver",
45 "Rh&",
" port",
"start http server in background",
46 "RH",
" port",
"launch browser and listen for http",
47 "RH&",
" port",
"launch browser and listen for http in background",
52 "Usage:",
" R[g] [...]",
" # gdb server",
54 "Rg",
" port file [args]",
"listen on 'port' debugging 'file' using gdbserver",
55 "Rg!",
" port file [args]",
"same as above, but debug protocol messages (like gdbserver --remote-debug)",
70 if (
input[0] ==
'?') {
80 if (
input[0] ==
'?') {
90 if (
input[0] ==
'?') {
106 eprintf(
"TODO: list connections in json\n");
109 if (
input[1] ==
'q') {
111 }
else if (
input[1] ==
'=') {
158 }
else if (argc == 3) {
236 }
else if (argc == 3) {
237 char *host, *port = strchr(
argv[1],
':');
242 host =
strdup(
"localhost");
RZ_API void rz_core_cmd_help(const RzCore *core, const char *help[])
RZ_IPI RzCmdStatus rz_remote_handler(RzCore *core, int argc, const char **argv)
RZ_IPI RzCmdStatus rz_remote_rap_handler(RzCore *core, int argc, const char **argv)
RZ_IPI RzCmdStatus rz_remote_mode_enable_handler(RzCore *core, int argc, const char **argv)
RZ_IPI RzCmdStatus rz_remote_tcp_handler(RzCore *core, int argc, const char **argv)
RZ_IPI RzCmdStatus rz_remote_del_handler(RzCore *core, int argc, const char **argv)
RZ_IPI int rz_io_system_run_oldhandler(void *data, const char *input)
RZ_IPI int rz_equal_h_handler_old(void *data, const char *input)
static const char * help_msg_equalh[]
static int getArg(char ch, int def)
RZ_IPI RzCmdStatus rz_remote_add_handler(RzCore *core, int argc, const char **argv)
RZ_IPI int rz_equal_H_handler_old(void *data, const char *input)
static const char * help_msg_equalg[]
RZ_IPI int rz_cmd_remote(void *data, const char *input)
RZ_IPI RzCmdStatus rz_remote_open_handler(RzCore *core, int argc, const char **argv)
RZ_IPI int rz_equal_g_handler_old(void *data, const char *input)
RZ_IPI RzCmdStatus rz_remote_rap_bg_handler(RzCore *core, int argc, const char **argv)
RZ_IPI RzCmdStatus rz_remote_send_handler(RzCore *core, int argc, const char **argv)
static const char * help_msg_equal[]
RZ_IPI RzCmdStatus rz_remote_mode_disable_handler(RzCore *core, int argc, const char **argv)
RZ_API int rz_cons_printf(const char *format,...)
RZ_API void Ht_() free(HtName_(Ht) *ht)
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")
RZ_API void rz_core_rtr_session(RzCore *core, const char *input)
RZ_API void rz_core_rtr_list(RzCore *core)
RZ_API void rz_core_rtr_add(RzCore *core, const char *_input)
RZ_API char * rz_core_rtr_cmds_query(RzCore *core, const char *host, const char *port, const char *cmd)
RZ_API int rz_core_rtr_gdb(RzCore *core, int launch, const char *path)
RZ_API void rz_core_rtr_remove(RzCore *core, const char *input)
RZ_API int rz_core_rtr_cmds(RzCore *core, const char *port)
RZ_API void rz_core_rtr_pushout(RzCore *core, const char *input)
RZ_API void rz_core_rtr_cmd(RzCore *core, const char *input)
RZ_API int rz_core_rtr_http(RzCore *core, int launch, int browse, const char *path)
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 char * rz_io_system(RzIO *io, const char *cmd)
RZ_API char * rz_str_ndup(RZ_NULLABLE const char *ptr, int len)
Create new copy of string ptr limited to size len.
RZ_API char * rz_str_trim_dup(const char *str)
RZ_API char * rz_str_array_join(const char **a, size_t n, const char *sep)
RZ_API char * rz_str_prepend(char *ptr, const char *string)
RZ_API const char * rz_str_trim_head_ro(const char *str)
static bool input(void *ud, zip_uint8_t *data, zip_uint64_t length)
int def(FILE *source, FILE *dest, int level)