rizin/librz/util
Florian Märkl c594b413ff
Swap argument order of rz_bv_copy* (#5793)
This brings these copy functions in line with the more common order of
dst, src as used in memcpy and rz_bv_*_inplace functions.
This is a breaking change and callers of rz_bv_copy() and
rz_bv_copy_nbits() must adjust to the new order.
2026-01-14 23:18:34 +08:00
..
float Swap argument order of rz_bv_copy* (#5793) 2026-01-14 23:18:34 +08:00
ht Improve performance of string search. (#5262) 2025-09-11 22:29:20 +08:00
sdb Rename rz_list_first() / rz_list_last() to rz_list_first_val() / rz_list_last_val() (#5654) 2025-12-20 17:08:59 +08:00
alloc.c
annotated_code.c
ascii_table.c
asn1.c Extend ASN.1/PKCS7/X.509 to dump structures (#5656) 2025-12-22 09:41:56 +08:00
asn1_oids.h Extend ASN.1/PKCS7/X.509 to dump structures (#5656) 2025-12-22 09:41:56 +08:00
asn1_str.c Extend ASN.1/PKCS7/X.509 to dump structures (#5656) 2025-12-22 09:41:56 +08:00
assert.c
axml.c librz/util: UTF-16/32 to UTF-8 conversion (#5431) 2025-10-05 19:16:53 +08:00
axml_resources.h
base16.c librz/util: base64, base85, base36, base32, base16 support and refactor (#5216) (#5271) 2025-08-17 15:26:25 +08:00
base32.c librz/util: base64, base85, base36, base32, base16 support and refactor (#5216) (#5271) 2025-08-17 15:26:25 +08:00
base36.c librz/util: base64, base85, base36, base32, base16 support and refactor (#5216) (#5271) 2025-08-17 15:26:25 +08:00
base64.c librz/util: base64, base85, base36, base32, base16 support and refactor (#5216) (#5271) 2025-08-17 15:26:25 +08:00
base85.c librz/util: base64, base85, base36, base32, base16 support and refactor (#5216) (#5271) 2025-08-17 15:26:25 +08:00
base91.c
big-gmp.c
big-ssl.c
big.c
bits.c Update contact information of Rot127. (#5522) 2025-11-10 17:15:15 +00:00
bitvector.c Swap argument order of rz_bv_copy* (#5793) 2026-01-14 23:18:34 +08:00
buf.c Remove rz_io_read_at and use only rz_io_read_at_mapped (#5777) 2026-01-11 22:50:50 +08:00
buf_bytes.c
buf_file.c
buf_io.c
buf_io_fd.c
buf_mmap.c
buf_ref.c
buf_sparse.c
calc.c
chmod.c
compression.c
debruijn.c
ebcdic.c String/Hex-Search 2/9: Improve Unicode support. 2025-02-22 04:12:49 +08:00
event.c
file.c Add pF8 for decoding PKCS8 & add info on /cm (#5647) 2025-12-20 16:28:10 +08:00
getopt.c
graph.c Rename some rz_list funcs to rz_list_XXX_val (part 1) (#5671) 2025-12-25 22:01:49 +08:00
graph_drawable.c
hex.c librz/util: base64, base85, base36, base32, base16 support and refactor (#5216) (#5271) 2025-08-17 15:26:25 +08:00
idpool.c
intervaltree.c
iterator.c refactor: Use HtSP for storing plugins. (#4687) 2024-10-26 16:31:13 +08:00
itv.c librz/util: implement a bounded interval. (#4977) 2025-03-09 15:24:07 +08:00
json_indent.c librz/core/cmd: convert pj to RzShell (#4726) 2024-11-24 10:20:06 +08:00
json_parser.c Rename RzRune to RzCodePoint. (#4860) 2025-01-24 20:39:04 +08:00
lang_byte_array.c
lib.c
list.c Readd deprecated rz_list_get_next() for rz-bindgen (#5718) 2026-01-01 23:54:53 +08:00
log.c Rename some rz_list funcs to rz_list_XXX_val (part 1) (#5671) 2025-12-25 22:01:49 +08:00
luhn.c
mem.c linter: update clang-format installation to version 20 (#5451) 2025-10-12 08:02:03 +08:00
meson.build Add pF8 for decoding PKCS8 & add info on /cm (#5647) 2025-12-20 16:28:10 +08:00
name.c
path.c shell: new arg type RZ_CMD_ARG_TYPE_FOLDER (#5514) 2025-12-10 19:08:38 +08:00
pj.c
pkcs7.c Extend ASN.1/PKCS7/X.509 to dump structures (#5656) 2025-12-22 09:41:56 +08:00
pkcs8.c Add pF8 for decoding PKCS8 & add info on /cm (#5647) 2025-12-20 16:28:10 +08:00
print.c linter: update clang-format installation to version 20 (#5451) 2025-10-12 08:02:03 +08:00
protobuf.c
punycode.c
range.c
rbtree.c
README.md
regex.c Fix several leaks. (#5536) 2025-11-19 23:22:56 +08:00
serialize_spaces.c
set.c
signal.c
skiplist.c
skyline.c
spaces.c
stack.c
str.c Rewrite C compiler code for rz-gg (#5761) 2026-01-10 13:36:51 +08:00
str_constpool.c
str_search.c librz/bin: define string search parameters in plugins (#5406) 2025-10-08 10:02:32 +08:00
str_trim.c Add pF8 for decoding PKCS8 & add info on /cm (#5647) 2025-12-20 16:28:10 +08:00
strbuf.c refactor: resolve some memory leaks in util and search 2025-11-13 23:11:10 +08:00
strpool.c
structured_data.c Extend ASN.1/PKCS7/X.509 to dump structures (#5656) 2025-12-22 09:41:56 +08:00
structured_data_json.c Convert opex to use RzStructuredData (#5613) 2025-12-16 15:21:44 +08:00
structured_data_yaml.c Extend ASN.1/PKCS7/X.509 to dump structures (#5656) 2025-12-22 09:41:56 +08:00
subprocess.c librz/util/subprocess: fix inability to automatically run .com executables (#5312) 2025-08-25 12:20:37 +08:00
sys.c Implement rz_sys_backtrace() for Windows/MSVC (#5784) 2026-01-13 00:55:20 +08:00
syscmd.c shell: pipe support for uniq and sort commands (#5580) 2025-12-10 19:09:30 +08:00
table.c Implement colors for tables and move RzListInfo out of table.c (#5729) 2026-01-05 21:34:41 +08:00
thread.c Add helper to check if a thread terminated. (#5583) 2025-12-08 04:37:01 +08:00
thread.h Add helper to check if a thread terminated. (#5583) 2025-12-08 04:37:01 +08:00
thread_cond.c Optimize queue to act also as proper channel (#5627) 2025-12-20 00:40:13 +08:00
thread_hash_table.c
thread_iterators.c Shorten rz_list_safe_prev/next to rz_list_prev/next (#5710) 2025-12-30 22:03:11 +08:00
thread_lock.c
thread_pool.c Fix "exeeds" typo (#5760) 2026-01-09 21:26:26 +08:00
thread_queue.c Fix various Coverity findings (#5668) 2025-12-30 02:02:56 +08:00
thread_sem.c
thread_types.c
time.c
tree.c
uleb128.c
unicode.c Update contact information of Rot127. (#5522) 2025-11-10 17:15:15 +00:00
unum.c linter: update clang-format installation to version 20 (#5451) 2025-10-12 08:02:03 +08:00
utf8.c librz/bin: define string search parameters in plugins (#5406) 2025-10-08 10:02:32 +08:00
utf16.c librz/util: UTF-16/32 to UTF-8 conversion (#5431) 2025-10-05 19:16:53 +08:00
utf32.c librz/util: UTF-16/32 to UTF-8 conversion (#5431) 2025-10-05 19:16:53 +08:00
vector.c New function rz_pvector_uniq (#5705) 2025-12-30 21:07:45 +08:00
version.c Remove Global/Static variables in path.c to make it thread safe (#5148) 2025-06-13 21:34:33 +08:00
w32-sys.c
x509.c Fix small mistake on x509 structure. (#5690) 2025-12-27 19:00:27 +08:00
x509.h Extend ASN.1/PKCS7/X.509 to dump structures (#5656) 2025-12-22 09:41:56 +08:00

RzUtil

This library contains all common utilities and functions that are used by other modules in the Rizin framework, like string manipulation, data structures (lists, vectors, trees, etc.), JSON parsing/printing, and others.

What can I expect here?

  • Numbers/math functions
  • Functions likely needed across several other modules
  • Data structures: lists, vectors, trees, graphs, skiplist
  • RzBuffer
  • JSON parsing, JSON printing
  • PKCS7
  • BitVector
  • Functions that are very common and not specific to other modules
  • SDB
  • Floating point number operations
  • OS/Platform-independent abstractions for common operations (e.g. rename a file, create temporary file, etc.)