R_API RIO *r_io_new() { RIO *io = R_NEW0 (RIO); if (!io) { return NULL; } io->buffer = r_cache_new (); // RCache is a list of ranged buffers. maybe rename? io->write_mask_fd = -1; io->cb_printf = (void *)printf; io->bits = (sizeof (void *) == 8)? 64: 32; io->ff = true; io->Oxff = 0xff; io->aslr = 0; io->pava = false; io->raised = -1; io->autofd = true; r_io_map_init (io); r_io_desc_init (io); r_io_undo_init (io); r_io_cache_init (io); r_io_plugin_init (io); r_io_section_init (io); { char *env = r_sys_getenv ("R_IO_MAX_ALLOC"); if (env) { io->maxalloc = r_num_get (NULL, env); free (env); } } return io; }
R_API RIO* r_io_init(RIO* io) { if (!io) { return NULL; } io->addrbytes = 1; r_io_desc_init (io); r_io_map_init (io); r_io_section_init (io); r_io_cache_init (io); r_io_plugin_init (io); r_io_undo_init (io); return io; }
R_API struct r_io_t *r_io_new() { RIO *io = R_NEW (RIO); if (!io) return NULL; io->fd = NULL; io->write_mask_fd = -1; io->redirect = NULL; io->printf = (void*) printf; io->plugin = NULL; io->raised = -1; r_io_cache_init (io); r_io_map_init (io); r_io_section_init (io); r_io_plugin_init (io); r_io_desc_init (io); r_io_undo_init (io); return io; }
R_API RIO *r_io_new() { RIO *io = R_NEW (RIO); if (!io) return NULL; io->buffer = r_cache_new (); // TODO: use RBuffer here io->buffer_enabled = 0; io->zeromap = R_FALSE; // if true, then 0 is mapped with contents of file io->fd = NULL; io->write_mask_fd = -1; io->redirect = NULL; io->printf = (void*) printf; io->bits = (sizeof(void*) == 8)? 64: 32; io->va = -1; io->plugin = NULL; io->raised = -1; io->off = 0; r_io_cache_init (io); r_io_map_init (io); r_io_section_init (io); r_io_plugin_init (io); r_io_desc_init (io); r_io_undo_init (io); return io; }