Skip to content

Fixed izx missing strings#5950

Merged
notxvilka merged 4 commits intorizinorg:devfrom
Farhan-25:izx
Feb 22, 2026
Merged

Fixed izx missing strings#5950
notxvilka merged 4 commits intorizinorg:devfrom
Farhan-25:izx

Conversation

@Farhan-25
Copy link
Contributor

@Farhan-25 Farhan-25 commented Feb 21, 2026

Your checklist for this pull request

  • I've read the guidelines for contributing to this repository.
  • I made sure to follow the project's coding style.
  • I've documented every RZ_API function and struct this PR changes.
  • I've added tests that prove my changes are effective (required for changes to RZ_API).
  • I've updated the Rizin book with the relevant information (if needed).
  • I've used AI tools to generate fully or partially these code changes and I'm sure the changes are not copyrighted by somebody else.

Detailed description
Fixed the issue of missing xref strings in izx.
The main issue was the iterator loop. The strings were getting skipped by the rz_pvector_remove_data.

izx
     paddr      vaddr flag                                                                                                                                                     len size section type  xref-from                        string                                                                                                                           
―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――
0x000051c0 0x000051c0 str.LD_AOUT_PRELOAD                                                                                                                                       15   16 .rodata ascii 0x0000393c,0x0000395c            LD_AOUT_PRELOAD
0x0000519c 0x0000519c str.s:_aborted_attempt_to_load__s                                                                                                                         32   33 .rodata ascii 0x00001a24                       %s: aborted attempt to load %s!\n
0x00005190 0x00005190 str.libc.so.                                                                                                                                               8    9 .rodata ascii 0x00001974,0x00001990            libc.so.
0x00005164 0x00005164 str.s:_can_t_resolve_symbol___s                                                                                                                           30   31 .rodata ascii 0x00004cd8                       %s: can't resolve symbol '%s'\n
0x0000515c 0x0000515c str.malloc                                                                                                                                                 6    7 .rodata ascii 0x000046bc                       malloc
0x00005154 0x00005154 str.atexit                                                                                                                                                 6    7 .rodata ascii 0x0000467c                       atexit
0x00005148 0x00005148 str.environ                                                                                                                                                9   10 .rodata ascii 0x000045ac                       __environ
0x00005138 0x00005138 str.s_____s___x                                                                                                                                           15   16 .rodata ascii 0x00003f24,0x00004198,0x000044e8 \t%s => %s (%x)\n
0x00005118 0x00005118 str.s:_can_t_load_library___s                                                                                                                             28   29 .rodata ascii 0x00003e68,0x0000410c            %s: can't load library '%s'\n
0x00005104 0x00005104 str.s____not_found                                                                                                                                        17   18 .rodata ascii 0x00003e48,0x000040e4            \t%s => not found\n
0x000050ec 0x000050ec str.LD_TRACE_LOADED_OBJECTS                                                                                                                               23   24 .rodata ascii 0x00003c68                       LD_TRACE_LOADED_OBJECTS
0x000050dc 0x000050dc str.LD_LIBRARY_PATH                                                                                                                                       15   16 .rodata ascii 0x000038e4                       LD_LIBRARY_PATH
0x000050d0 0x000050d0 str.LD_PRELOAD                                                                                                                                            10   11 .rodata ascii 0x000038bc                       LD_PRELOAD
0x000050c4 0x000050c4 str.LD_BIND_NOW                                                                                                                                           11   12 .rodata ascii 0x000037c4                       LD_BIND_NOW
0x00005098 0x00005098 str.Standalone_execution_is_not_supported_yet                                                                                                             42   43 .rodata ascii 0x00003780                       Standalone execution is not supported yet\n
0x0000507c 0x0000507c str.can_t_handle_reloc_type__x                                                                                                                            27   28 .rodata ascii 0x000034a0                       can't handle reloc type %x\n
0x0000506c 0x0000506c str.symbol___s_:                                                                                                                                          13   14 .rodata ascii 0x00003480                       symbol '%s':
0x00005064 0x00005064 str.s:                                                                                                                                                     5    6 .rodata ascii 0x00003458                       \n%s:
0x00004fcc 0x00004fcc str.home_liujiale_project_816_telnet_MTK7620A_DLINK_TELNET_source_romfs_lib:_home_liujiale_project_816_telnet_MTK7620A_DLINK_TELNET_source_romfs_usr_lib 149  150 .rodata ascii 0x000032f8                       /home/liujiale/project/816_telnet/MTK7620A_DLINK_TELNET/source/romfs/lib:/home/liujiale/project/816_telnet/MTK7620A_DLINK_TELNET/source/romfs/usr/lib
0x00004fb4 0x00004fb4 str.Out_of_memory                                                                                                                                         15   16 .rodata ascii 0x00002e98                       Out of memory!\n
0x00004f60 0x00004f60 str.Can_t_modify__s_s_text_section._Use_GCC_option__fPIC_for_shared_objects__please.                                                                      81   82 .rodata ascii 0x00002c58                       Can't modify %s's text section. Use GCC option -fPIC for shared objects, please.\n
0x00004f38 0x00004f38 str.s:___s__is_missing_a_dynamic_section                                                                                                                  38   39 .rodata ascii 0x00002bc4                       %s: '%s' is missing a dynamic section\n
0x00004f24 0x00004f24 str.s:_can_t_map__s                                                                                                                                       17   18 .rodata ascii 0x0000274c                       %s: can't map %s\n
0x00004ef8 0x00004ef8 str.s:___s__has_more_than_one_dynamic_section                                                                                                             43   44 .rodata ascii 0x000025f8                       %s: '%s' has more than one dynamic section\n
0x00004ecc 0x00004ecc str.s:___s__is_not_an_ELF_executable_for_MIPS                                                                                                             43   44 .rodata ascii 0x00002594                       %s: '%s' is not an ELF executable for MIPS\n
0x00004eac 0x00004eac str.s:___s__is_not_an_ELF_file                                                                                                                            28   29 .rodata ascii 0x00002528                       %s: '%s' is not an ELF file\n
0x00004e98 0x00004e98 str.s:_can_t_map___s                                                                                                                                      19   20 .rodata ascii 0x000024a8,0x000028d0,0x00002aec %s: can't map '%s'\n
0x00004e74 0x00004e74 str.s:_mmap_of_a_spare_page_failed                                                                                                                        33   34 .rodata ascii 0x00001fe0                       %s: mmap of a spare page failed!\n
0x00004e58 0x00004e58 str.s:_cache___s__is_corrupt                                                                                                                              26   27 .rodata ascii 0x00001ea0                       %s: cache '%s' is corrupt\n
0x00004e50 0x00004e50 str.1.7.0                                                                                                                                                  5    6 .rodata ascii 0x00001dc4,0x00001ddc            1.7.0
0x00004e48 0x00004e48 str.ld.so                                                                                                                                                  6    7 .rodata ascii 0x00001d7c,0x00001d94            ld.so-
0x00004e2c 0x00004e2c str.s:_can_t_map_cache___s                                                                                                                                25   26 .rodata ascii 0x00001d44                       %s: can't map cache '%s'\n
0x00004dd4 0x00004dd4 str.home_liujiale_project_816_telnet_MTK7620A_DLINK_TELNET_source_romfs_etc_ld.so.cache                                                                   84   85 .rodata ascii 0x00001c3c,0x00001d48,0x00001ea4 /home/liujiale/project/816_telnet/MTK7620A_DLINK_TELNET/source/romfs/etc/ld.so.cache
0x00004d94 0x00004d94 str.s:_cannot_apply_additional_memory_protection_after_relocation                                                                                         62   63 .rodata ascii 0x00001ba8                       %s: cannot apply additional memory protection after relocation
0x00004d80 0x00004d80 str.overflow                                                                                                                                               9   10 .rodata ascii 0x000015dc                       overflow\n
0x00004d70 0x00004d70 str.ld_uClibc.so.0,section..rodata,.rodata                                                                                                                14   15 .rodata ascii 0x00004070,0x00004084            ld-uClibc.so.0

Output for izx for the file
ld-uClibc-0.9.28.so_rel_0_3.zip
...

Closing issues

closes #5172

...

@codecov
Copy link

codecov bot commented Feb 21, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 47.83%. Comparing base (2718026) to head (bd61d74).

Additional details and impacted files
Files with missing lines Coverage Δ
librz/core/cbin.c 65.24% <100.00%> (-0.01%) ⬇️

... and 6 files with indirect coverage changes


Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 2718026...bd61d74. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link
Contributor

@notxvilka notxvilka left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you please add a test for it? So that it will not happen again. It will also help during the analysis refactoring.

@notxvilka notxvilka merged commit 88d861d into rizinorg:dev Feb 22, 2026
45 of 46 checks passed
@notxvilka
Copy link
Contributor

@Farhan-25 please use present tense in commit messages: https://www.datacamp.com/tutorial/git-commit-message

@Farhan-25
Copy link
Contributor Author

@Farhan-25 please use present tense in commit messages: https://www.datacamp.com/tutorial/git-commit-message

Sure, i will keep it in mind in future commits

@Farhan-25 Farhan-25 deleted the izx branch February 23, 2026 12:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

izx doesn't show all referenced strings

3 participants