mirror of
https://github.com/radareorg/radare2.git
synced 2025-04-08 04:21:45 +00:00
oob [arg] sets bin.baddr, then seeks to new entry0 ##io
This commit is contained in:
parent
73c38d38e7
commit
1a4c94e776
@ -44,6 +44,19 @@ R_API int r_core_file_reopen(RCore *core, const char *args, int perm, int loadbi
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ut64 new_baddr = UT64_MAX;
|
||||||
|
if (args) {
|
||||||
|
new_baddr = r_num_math (core->num, args);
|
||||||
|
if (new_baddr && new_baddr != UT64_MAX) {
|
||||||
|
r_config_set_i (core->config, "bin.baddr", new_baddr);
|
||||||
|
} else {
|
||||||
|
new_baddr = UT64_MAX;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (new_baddr == UT64_MAX) {
|
||||||
|
new_baddr = r_config_get_i (core->config, "bin.baddr");
|
||||||
|
}
|
||||||
|
|
||||||
if (r_sandbox_enable (0)) {
|
if (r_sandbox_enable (0)) {
|
||||||
eprintf ("Cannot reopen in sandbox\n");
|
eprintf ("Cannot reopen in sandbox\n");
|
||||||
free (obinfilepath);
|
free (obinfilepath);
|
||||||
@ -98,11 +111,15 @@ R_API int r_core_file_reopen(RCore *core, const char *args, int perm, int loadbi
|
|||||||
|
|
||||||
if (loadbin && (loadbin == 2 || had_rbin_info)) {
|
if (loadbin && (loadbin == 2 || had_rbin_info)) {
|
||||||
ut64 baddr = r_config_get_i (core->config, "bin.baddr");
|
ut64 baddr = r_config_get_i (core->config, "bin.baddr");
|
||||||
|
if (new_baddr != UT64_MAX) {
|
||||||
|
baddr = new_baddr;
|
||||||
|
}
|
||||||
ret = r_core_bin_load (core, obinfilepath, baddr);
|
ret = r_core_bin_load (core, obinfilepath, baddr);
|
||||||
r_core_bin_update_arch_bits (core);
|
r_core_bin_update_arch_bits (core);
|
||||||
if (!ret) {
|
if (!ret) {
|
||||||
eprintf ("Error: Failed to reload rbin for: %s", path);
|
eprintf ("Error: Failed to reload rbin for: %s", path);
|
||||||
}
|
}
|
||||||
|
origoff = r_num_math (core->num, "entry0");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (core->bin->cur && core->io && r_io_desc_get (core->io, file->fd) && !loadbin) {
|
if (core->bin->cur && core->io && r_io_desc_get (core->io, file->fd) && !loadbin) {
|
||||||
|
@ -115,7 +115,7 @@ static const char *help_msg_oo[] = {
|
|||||||
"Usage:", "oo[-] [arg]", " # map opened files",
|
"Usage:", "oo[-] [arg]", " # map opened files",
|
||||||
"oo", "", "reopen current file",
|
"oo", "", "reopen current file",
|
||||||
"oo+", "", "reopen in read-write",
|
"oo+", "", "reopen in read-write",
|
||||||
"oob", "", "reopen loading rbin info",
|
"oob", " [baddr]", "reopen loading rbin info (change base address?)",
|
||||||
"ooc", "", "reopen core with current file",
|
"ooc", "", "reopen core with current file",
|
||||||
"ood", "", "reopen in debug mode",
|
"ood", "", "reopen in debug mode",
|
||||||
"oom", "", "reopen in malloc://",
|
"oom", "", "reopen in malloc://",
|
||||||
|
Loading…
x
Reference in New Issue
Block a user