mirror of
https://github.com/radareorg/radare2.git
synced 2025-02-14 02:51:12 +00:00
Add wcj
This commit is contained in:
parent
67af958e63
commit
b7d7593342
@ -861,12 +861,15 @@ static int cmd_write(void *data, const char *input) {
|
||||
}
|
||||
break;
|
||||
case '*':
|
||||
r_io_cache_list (core->io, true);
|
||||
r_io_cache_list (core->io, 1);
|
||||
break;
|
||||
case 'j':
|
||||
r_io_cache_list (core->io, 2);
|
||||
break;
|
||||
case '\0':
|
||||
//if (!r_config_get_i (core->config, "io.cache"))
|
||||
// eprintf ("[warning] e io.cache must be true\n");
|
||||
r_io_cache_list (core->io, false);
|
||||
r_io_cache_list (core->io, 0);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@ -74,18 +74,29 @@ R_API int r_io_cache_list(RIO *io, int rad) {
|
||||
int i, j = 0;
|
||||
RListIter *iter;
|
||||
RIOCache *c;
|
||||
|
||||
if (rad == 2)
|
||||
io->cb_printf ("[");
|
||||
r_list_foreach (io->cache, iter, c) {
|
||||
if (rad) {
|
||||
io->cb_printf ("wx ");
|
||||
for (i=0; i < c->size; i++)
|
||||
io->cb_printf ("%02x", (ut8)(c->data[i] & 0xff));
|
||||
io->cb_printf (" @ 0x%08"PFMT64x, c->from);
|
||||
io->cb_printf (" # replaces: ");
|
||||
for (i=0; i < c->size; i++)
|
||||
io->cb_printf ("%02x", (ut8)(c->odata[i] & 0xff));
|
||||
io->cb_printf ("\n");
|
||||
} else {
|
||||
if (rad == 1) {
|
||||
io->cb_printf ("wx ");
|
||||
for (i=0; i < c->size; i++)
|
||||
io->cb_printf ("%02x", (ut8)(c->data[i] & 0xff));
|
||||
io->cb_printf (" @ 0x%08"PFMT64x, c->from);
|
||||
io->cb_printf (" # replaces: ");
|
||||
for (i=0; i < c->size; i++)
|
||||
io->cb_printf ("%02x", (ut8)(c->odata[i] & 0xff));
|
||||
io->cb_printf ("\n");
|
||||
} else if (rad == 2) {
|
||||
io->cb_printf ("{\"idx\":%"PFMT64d",\"addr\":%"PFMT64d",\"size\":%d,",
|
||||
j, c->from, c->size);
|
||||
io->cb_printf ("\"before\":\"");
|
||||
for (i=0; i < c->size; i++)
|
||||
io->cb_printf ("%02x", c->odata[i]);
|
||||
io->cb_printf ("\",\"after\":\"");
|
||||
for (i=0; i < c->size; i++)
|
||||
io->cb_printf ("%02x", c->data[i]);
|
||||
io->cb_printf ("\",\"written\":%s}%s", c->written? "true": "false",iter->n? ",": "");
|
||||
} else if (rad == 0) {
|
||||
io->cb_printf ("idx=%d addr=0x%08"PFMT64x" size=%d ",
|
||||
j, c->from, c->size);
|
||||
for (i=0; i < c->size; i++)
|
||||
@ -97,6 +108,8 @@ R_API int r_io_cache_list(RIO *io, int rad) {
|
||||
}
|
||||
j++;
|
||||
}
|
||||
if (rad == 2)
|
||||
io->cb_printf ("]");
|
||||
return false;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user