rizin/librz/util
2026-07-07 23:14:47 +08:00
..
float fix positive zero comparing inequal with negative zero, IEEE754 mandates equality 2026-06-21 03:48:49 +08:00
ht ht_inc: Rename slots to slots_ (#6021) 2026-03-10 22:33:12 +08:00
sdb Fix ISO C23 warnings related the usage of strstr & strchr (#6182) 2026-04-08 22:04:39 +08:00
alloc.c
annotated_code.c Move ESIL into its own namespace (#6199) 2026-04-11 16:26:01 +08:00
ascii_table.c Fix RZ_IPI usage on public headers & fix memory leak in the ROP code. (#6171) 2026-04-08 13:37:17 +08:00
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 Move ESIL into its own namespace (#6199) 2026-04-11 16:26:01 +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 Remove useless semicolon 2024-03-25 18:36:02 +08:00
bits.c Update contact information of Rot127. (#5522) 2025-11-10 17:15:15 +00:00
bitvector.c Add rz_bv_append_inplace() (#6592) 2026-07-03 23:31:30 +08:00
buf.c Prevent RzBuffer's Oxff_priv from overriding io.0xff (#6371) 2026-05-27 06:18:45 +08:00
buf_bytes.c RzBuffer consistency and make buffer type public (#4666) 2024-10-12 11:27:21 +02:00
buf_file.c RzBuffer consistency and make buffer type public (#4666) 2024-10-12 11:27:21 +02:00
buf_io.c RzBuffer consistency and make buffer type public (#4666) 2024-10-12 11:27:21 +02:00
buf_io_fd.c RzBuffer consistency and make buffer type public (#4666) 2024-10-12 11:27:21 +02:00
buf_mmap.c Prevent RzBuffer's Oxff_priv from overriding io.0xff (#6371) 2026-05-27 06:18:45 +08:00
buf_ref.c
buf_sparse.c
calc.c
chmod.c Remove global in chmod.c 2024-01-06 23:30:07 +08:00
compression.c Add MediaTek md1img and GFH firmware image parsers (#5974) 2026-06-22 20:25:48 +00:00
debruijn.c
ebcdic.c String/Hex-Search 2/9: Improve Unicode support. 2025-02-22 04:12:49 +08:00
event.c Add missing vector foreach macros to clang-format cfg (#4456) 2024-04-22 07:16:46 +08:00
file.c Add pF8 for decoding PKCS8 & add info on /cm (#5647) 2025-12-20 16:28:10 +08:00
getopt.c
graph_algorithm.c refactor: add hashtable-based RzGraph implementation (#6152) 2026-04-08 04:01:40 +08:00
graph_drawable.c librz/util/graph: various improvements 2026-05-16 19:12:01 +08:00
graph_impl.c Graph - (tiny) performance improvements (#6382) 2026-05-31 22:00:25 +00:00
graph_priv.h Graph - (tiny) performance improvements (#6382) 2026-05-31 22:00:25 +00:00
hex.c Fix ISO C23 warnings related the usage of strstr & strchr (#6182) 2026-04-08 22:04:39 +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 Add missing newlines to some RZ_LOG_* calls (#4439) 2024-04-18 00:04:38 +08:00
lib.c Replace strdup with rz_str_dup (#4634) 2024-09-15 19:12:07 +08:00
list.c Implement special compare for bytes and always compare mem-aligned. 2026-06-01 01:45:59 +08:00
log.c Add getter for the current log level. (#5807) 2026-01-23 18:52:45 +00:00
luhn.c
math.c test/bench: add geometric stats to benchmarks (#6403) 2026-05-26 16:15:02 +08:00
mem.c Fix return type description. (#5838) 2026-01-25 13:11:11 +00:00
meson.build test/bench: measure standard deviation for benchmarks (#6390) 2026-05-25 05:08:06 +08:00
name.c Replace strdup with rz_str_dup (#4634) 2024-09-15 19:12:07 +08:00
path.c shell: new arg type RZ_CMD_ARG_TYPE_FOLDER (#5514) 2025-12-10 19:08:38 +08:00
pj.c librz/util/pj: Fix JSON depth limit handling (#6533) 2026-07-02 15:21:36 +08:00
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 Use stdint types for ut64 and friends (#6276) 2026-04-22 21:43:04 +08:00
protobuf.c
punycode.c
rbtree.c
README.md librz: add some initial documentation (#3782) 2023-10-13 13:46:19 +08:00
regex.c Fix several leaks. (#5536) 2025-11-19 23:22:56 +08:00
serialize_spaces.c sdb: remove unused cas and expire features (#4487) 2024-05-12 18:27:54 +08:00
set.c Add rz_set_u_take(). (#6137) 2026-04-04 12:04:25 +00:00
signal.c
skiplist.c Add user pointer to RzListComparator (#4204) 2024-02-11 13:28:33 +08:00
skyline.c
spaces.c Replace strdup with rz_str_dup (#4634) 2024-09-15 19:12:07 +08:00
stack.c
str.c Remove unused rz_str_word_get0set & rz_str_word_set0_stack 2026-07-07 23:14:47 +08:00
str_constpool.c Add extended insert/update methods for HT (#4489) 2024-05-17 18:06:01 +08:00
str_search.c util: extend string search with user-defined printable characters (#6161) 2026-05-01 22:47:14 +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 librz/util: guard allocation failure paths in string and vector helpers (#6217) 2026-04-12 17:16:24 +08:00
strpool.c
structured_data.c Rewrite of zImage bin parser & new structured data methods (#5893) 2026-02-09 19:00:42 +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 Return early from sleep() functions in case of 0 sleep time. (#6429) 2026-06-01 01:47:39 +08:00
syscmd.c Add new implementation of RzConfig (#5820) 2026-05-03 15:34:48 +08:00
table.c Fix memory leaks across arch, core, and util (#6581) 2026-07-02 11:10:03 +08:00
thread.c Add helper to check if a thread terminated. (#5583) 2025-12-08 04:37:01 +08:00
thread.h Fix Illumos/Solaris platform support (#5972) 2026-02-27 13:01:40 +08:00
thread_cond.c Fix deadlock in rz_th_queue_close_when_empty() (#6383) 2026-05-25 09:25:29 +02:00
thread_hash_table.c Add HtSP, HtSS, HtSU, SetS (#4415) 2024-04-16 20:27:48 +08:00
thread_iterators.c Remove rz_list_iter_get_data() (#5900) 2026-02-10 22:03:37 +08:00
thread_lock.c
thread_pool.c Fix "exeeds" typo (#5760) 2026-01-09 21:26:26 +08:00
thread_queue.c Fix deadlock in rz_th_queue_close_when_empty() (#6383) 2026-05-25 09:25:29 +02:00
thread_ring_buf.c Implement ring buffer (#6081) 2026-04-13 10:15:49 +00:00
thread_sem.c subprocess: Protect proc->ret with a semaphore (#4545) 2024-06-19 18:23:12 +08:00
thread_types.c
time.c Fix Illumos/Solaris platform support (#5972) 2026-02-27 13:01:40 +08:00
tree.c
uleb128.c Check we do not shift more than 63. in [us]leb128 2024-09-08 17:34:55 +08:00
unicode.c Enc: add unicode case mappings (#5956) 2026-03-01 15:06:28 +00:00
unum.c linter: update clang-format installation to version 20 (#5451) 2025-10-12 08:02:03 +08:00
utf8.c Enc: add unicode case mappings (#5956) 2026-03-01 15:06:28 +00: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 librz/util/vector: minor RzVector/RzPVector performance optimizations (#6467) 2026-06-10 00:22:26 +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.)