Commit graph

199 commits

Author SHA1 Message Date
Farhan Saiyed
3ad6e786ad
Add missing spaces in R! help (#6528) 2026-06-19 13:44:11 +00:00
Alok Kumar Mishra
bbe00b00c8
Fix debugger for spaced filepaths (#6489) 2026-06-10 11:56:34 +08:00
Khairul Azhar Kasmiran
1abe2dce99
Prevent RzBuffer's Oxff_priv from overriding io.0xff (#6371)
* Prevent RzBuffer's `Oxff_priv` from overriding `io.0xff`
* Use io from RZ_BUFFER_IO and RZ_BUFFER_IO_FD buffers
* Add `RzIO *` param to rz_buf_new_mmap()
* pe: Discard incomplete import directory
2026-05-27 06:18:45 +08:00
Riccardo Schirone
0e9c6346c8
librz/io: fix book link in io_mach (#6285) 2026-04-26 09:36:41 +08:00
Ayush
861ea2c920
librz/io: remove static var from io_qnx (#6212) 2026-04-13 02:20:51 +08:00
Giovanni
daeee9ac1a
Fix ISO C23 warnings related the usage of strstr & strchr (#6182) 2026-04-08 22:04:39 +08:00
Giovanni
6131a0e187
Fix RZ_IPI usage on public headers & fix memory leak in the ROP code. (#6171)
* Fix RZ_IPI declaration on public api for rz_pdb

* Fix RZ_IPI declaration on public api for jemalloc/glibc

* Fix RZ_IPI declaration on public api for rz_io

* Remove functions from public header for rz_panels

* Fix public functions not following rizin nomenclature in rz_graph

* Fix public functions not following rizin nomenclature in rz_rop

* move resolve_fcn_name into rz_analysis

* Fix public functions not following rizin nomenclature in rz_ascii_table

* Fix leak in rop code

* Rewrite parser for rop

* Add doxygen comment
2026-04-08 13:37:17 +08:00
Khairul Azhar Kasmiran
815c86a8f7
Inline rz_list_iter_set_data() and shorten it to rz_list_set_val() (#6131) 2026-04-02 06:04:54 +08:00
Rot127
5d15b1295e
Move get_boundary functions without module dependencies to RzIO. (#5508)
* Add boundary getter tests.
2026-03-25 14:34:07 +00:00
Giovanni
106e2c1234
Remove addrbytes from RzIO which is always 1 and never changes. (#6084) 2026-03-24 16:11:50 +08:00
Thomas Strömberg
a65be1e6cd
Fix Illumos/Solaris platform support (#5972) 2026-02-27 13:01:40 +08:00
Thiago Mucci
71640c8cdd
fix(io): unify R! command usage formatting (#5954) 2026-02-23 00:01:33 +08:00
Anton Angelov
067e319bac
Use ht_xx_size() instead of reading ht internal state (#5885) 2026-02-07 16:17:18 +00:00
Giovanni
d7b2f85c89
Remove RzIO brainfuck/rzweb/rzpipe & RzDebug brainfuck (#5810) 2026-01-17 22:55:47 +08:00
Giovanni
141f05b126
Remove rz_io_read_at and use only rz_io_read_at_mapped (#5777) 2026-01-11 22:50:50 +08:00
Anton Angelov
8341909b93
Motorola SREC IO plugin: fix multiple bugs (#5726)
* Fix multiple bugs
* Add srec write test
* Use PFMTxxx defines
2026-01-04 15:58:50 +08:00
Anton Angelov
03cd14c343
Return byte count instead of 0 on success (#5717) 2026-01-01 00:15:54 +08:00
Rot127
092dc95446
Fix reading from cache in rz_io_nread_at(). (#5618)
The cache read must read within the mapped region and not beyond.
Otherwise it would go against the documentation of rz_io_nread_at().
rz_io_cache_read() internally doesn't know about map boundaries so
the length parameter passed to it in rz_io_nread_at()
should only read 'ret' number of bytes.

To give somewhat more introspective what rz_io_cache_read() does,
the return value meaning was changed to success/failure
and an out parameter was added to get the number of bytes read.
2025-12-16 03:00:09 +08:00
Anton Angelov
1e1d096b2a
librz/io: new IO plugin for TI-TXT (#5525) 2025-11-15 20:31:37 +08:00
billow
7a77b8f7bd
linter: update clang-format installation to version 20 (#5451)
* fix: format with clang-format-20
* fix: fix clang-format linter with rewrite '^#define.*/\*.*\\$'
* fix: update clang-format to version 20 in workflows and documentation
* fix: add SPDX license information to .git-blame-ignore-revs
2025-10-12 08:02:03 +08:00
billow
498b990dc5
fix gdb io plugin .open (#5375) 2025-09-14 13:37:00 +00:00
Aidan
9f9e699040
refactor: removed mode parameter from all rz_io_desc_new references (#5367) 2025-09-12 23:26:29 +08:00
Ahmed Kamal
8a442ac008
Remove static variables from io_windbg.c (#5249)
* Remove static variables from io_windbg.c

* Solve io_windbg issue

---------

Co-authored-by: NOT XVilka <notxvilka@proton.me>
2025-09-01 22:10:45 +00:00
Ahmed Kamal
54f6b69335
Remove static varriables from io_gdb.c (#5260) 2025-07-18 11:42:12 +00:00
Ahmed Kamal
ae9c116d90
Remove static variables from librz/io/p/io_self.c (#5252) 2025-07-09 09:34:03 +08:00
Ahmed Kamal
8705c22233
Remove static varaibles from io_mach.c (#5237) 2025-07-09 09:31:49 +08:00
Ahmed Kamal
df42740cae
refactor: remove static variables from io_qnx.c (#5241)
* Remove static variables from io_qnx.c
* Add fd check for NULL
* Remove RzIOQnx
2025-07-08 23:21:50 +08:00
Khairul Azhar Kasmiran
c48ab5c667
Make code compilable under checks_level 0 and 3 (#5102)
* Add `rz_goto_if_reached()` to RZ_CHECKS_LEVEL 3
* Fix rz_return(_val)_if_reached() for RZ_CHECKS_LEVEL 0
* Add `rz_goto_if_reached()` to RZ_CHECKS_LEVEL 0
* Set default log level to WARN
2025-05-10 23:29:19 +08:00
NOT XVilka
30ae60a759
Remove RAP protocol (#5046)
Co-authored-by: Anton Kochkov <anton.kochkov@gmail.com>
2025-03-27 00:55:06 +08:00
Anton Kochkov
c8e653fbc1
subprojects: update libzip from 1.9.2 to 1.11.3 (#3667) 2025-03-01 15:25:09 +08:00
Florian Märkl
93dd35f6db
librz/core: Fix disassembly (e.g. pd) with unmapped gaps (#4932)
Regression from 3b7f2730f2:
rz_io_nread_at stops at unmapped regions, but disassembly being a
user-visible display needs to show gaps as 0xff and mapped regions after
with their contents again instead of just breaking and showing io->Oxff.
The exact meaningd of rz_io_nread_at and rz_io_read_at_mapped have also
been clarified in documentation comments and tests.
2025-02-26 22:59:44 +08:00
Rot127
8ff21d700d Mark rz_io_read_at as deprecated, as the comment already states. 2025-02-13 22:55:33 +08:00
Rot127
ba324d4f16 Add rz_io_nread_at_new_buf() 2025-02-13 22:55:33 +08:00
Rot127
30953d3bf6
refactor: Use HtSP for storing plugins. (#4687)
* Refactor: Use HtSP for storing plugins.

This saves iterations when searching for a plugin of a given name.
It also allows to save plugin configurations and data in hash table,
all addressed by their name. Hence, usage is more streamlined.

* Fix: iterators iterate over pointers of pointers.

* Soften the NULL check.

If arch is passed on from another struct, NULL is an allowed invalid value.

* Fix some leaks

* Fix NULL checks and incorrect inits

* Fix more leaks

* Add warning if plugin with same name was added before and is overwritten.

* Document rz_str_cmp

* Add function to create new list from iterator.

* Sort plugins alphabetically when listed.

* Fix parameter attributes, NULL checks, leaks and single rename.
2024-10-26 16:31:13 +08:00
Giovanni
db1e4993a0
Replace strdup with rz_str_dup (#4634) 2024-09-15 19:12:07 +08:00
pelijah
706a6bf6c2
sdb: remove unused cas and expire features (#4487) 2024-05-12 18:27:54 +08:00
pelijah
02990d7291
Fix NULL dereference in rz_io_resize() (#4479) 2024-05-07 20:50:37 +08:00
Florian Märkl
2cacf880c1
Add missing newlines to some RZ_LOG_* calls (#4439) 2024-04-18 00:04:38 +08:00
pelijah
f2d8e0db3d
Add HtSP, HtSS, HtSU, SetS (#4415)
- All `ht_*_new0()` are removed
- `freefn` field of HT options was renamed to `finiKV`
- `finiKV_user` fields was added to HT options
- Added `ht_*_new_opt_size` API
- `HtSP` and `HtUP` are created with `ValueFree` callback  that allows to reduce extra LOC and prevent bugs
- `SetP` replaced with `SetS` (based on `HtSP`)
- `rz_th_ht_*_new0()` and `rz_th_ht_*_new_opt()` are replaced with `rz_th_ht_*_new(HtXX *)`
2024-04-16 20:27:48 +08:00
Florian Märkl
4f1a307bc1 Fix condition for posix_spawn in io_debug (Fix #4352)
The relevant flag we want to use with posix_spawn is
POSIX_SPAWN_CLOEXEC_DEFAULT, for which checking for __POWERPC__ made no
sense. This caused build failures on Mac OS X 10.6 and potential kernel
panics on 10.7.
2024-04-09 10:54:12 +02:00
wargio
d47ceedbd3 Merge rz_asm and rz_analysis into one library but keep deprecated apis.
The tms320c64x has been merged into tms320.
2024-03-07 18:38:49 +08:00
Anton Kochkov
e7d3c258fb
Remove some more of sdb_fmt() calls (#4140) 2024-01-30 22:36:39 +08:00
Anton Kochkov
1f4befd24e Remove global RzLine instance 2024-01-07 22:40:25 +08:00
Giovanni
8fba9b4189
Force usage of RzList methods instead of direct access of the fields (#4036) 2023-12-18 21:05:57 +08:00
Rot127
86db4734cb
Change len parameter type to size_t in RzIO API (#4012)
* Add doc string to `rz_io_write_at()`
* Change length parameter type of IO read/write functions to `size_t`.
2023-12-03 19:28:16 +08:00
Riccardo Schirone
3b903caa96
librz: add some initial documentation (#3782) 2023-10-13 13:46:19 +08:00
Anton Kochkov
f29171ceb1
Remove rzk and gprobe IO plugins (#3654) 2023-07-12 00:21:43 +08:00
Siddharth Mishra
9ab709bc34
Improve cmd_help.yaml and fix random number generator (#3452)
* Improve cmd_help.yaml and fix a small bug
* Add support for 64bit random numbers
* Make a distinction between 32- and 64-bit PRNG
* Add documentation for new functions
* Change the RBTree test to use 32-bit random numbers
2023-04-07 20:22:01 +08:00
Riccardo Schirone
72e92fe81a io: fix iowhence2buf function
The function should convert the IO-specific whence enum to the
RzBuffer-specific whence enum, however it was doing the opposite.
Fortunately, it doesn't really affect anything because those two enums
have the same values.
2023-04-05 17:15:52 +08:00
Riccardo Schirone
65e4e9ebd1
Fix few sscanf issues reported by @yeggor (#3428) 2023-03-22 18:36:54 +08:00