Commit graph

18 commits

Author SHA1 Message Date
Rot127
bdd913ab5e
Fix definition of alignment
* Fix definition of alignment.

Alignments for code and data is not defind for 0, bubt nonetheless it
was assigned this value everytwhere. This changes the default value to 1.

* Enforce an alignment of at least 1.

* Fix alignment checks (default is now 1).

* Fix alignment check. 1 was assumed to be valid.

* Fix places where an alignment of 0 is considered still a valid value.

* Fix integration test with invalid alignment

* Remove debug printf

* Remove addrmod member.

It was pressumingly used to indicate aligned addresses in print mode.
But it wasn't documented and the usefulness is dubious.
Since it is easy to spot for users to see if addresses are aligned or not anyways.

* Fix tests after cherry-pick

* Fix rz-find test which consumed the '-X' as number value for '-a'.

* Fix case of arch module not defining value alignments.
2025-02-14 01:27:47 +08:00
Giovanni
6ccf715533
librz/arch/mips: improve the ISA support and analysis (#4621) 2024-12-29 20:00:41 +08:00
Khairul Azhar Kasmiran
f0dad8a007
Convert zero-output EXPECT=<<EOF to single-line EXPECT= (#4746) 2024-11-28 18:18:00 +08:00
Giovanni
8f2eb45b84
Add bin.demangle.flags to allow users to simplify or not mangled strings (#3659) 2023-07-17 23:31:09 +08:00
billow
d0732c5c88 Update tests 2023-06-05 22:41:20 +08:00
Giovanni
59080758fb
Split bin field from class fields and fix demangling on java (#3479)
* Split Bin Field from Class fields.
* Fix tests and plugins
2023-04-26 15:25:42 +08:00
Giovanni
3752e24b98
Update rz-libdemangle (#2984) 2022-08-27 02:35:07 +02:00
Florian Märkl
79a17ef482
Remove RzAnalysisPlugin.set_reg_profile (#2091)
Refactored all plugins to use get_reg_profile instead, which simply
returns the register profile instead of applying it as a side-effect.
2021-12-11 10:18:31 +01:00
Riccardo Schirone
1c78aee3cd
Convert i commands to rzshell (#1238)
* Start to create some RzBinObject specific API

Adding some unit tests

Fix for new relocs storage system

Fix test_bin unit test for oob-write

* Add `iA` command to newshell

Add `ie`/`iee` commands

Add support for `is`/`iE` commands

Add support for `ii` command

Add support for `il` command

Add support for `iM` command

Add support for `ir` command

Add support for `iS`/`iSS` commands

Add support for `iz` command

Add support for `i` command

Add support for `ic` command

Add support for `iC` command

Add support for `ih` and `iHH` commands

Add support for `iI` command

Add support for `iL` command

Fix descriptions of commands already converted

Add support for `idp` commands

Add support for `iD` command

Add support for `im` commands

Add support for `iR` command

Add support for `it` command

Add support for `iV` commands

Add support for `iw` command

Add support for `ix` commands

Add support for `iZ` command

Add support for `ik` command

Add support for `is.` command

Add support for `iS.` command

Reduce arguments in print_arch

Few Doxygen and ownership annotations

Add support for `iS=` command

Add support for `izz` and `izzz` commands

Add support for `ib` command

Add support for `ic*` command

Put section flags as the last field of the table

* Proper language detection.

* Rewritten blang.c

* implemented `icc/icm/icf <class name>`

* ignore blocks when printing langs

Remove num from `iA` output

* Fixed flags on java and added class column

Add support for `ia` commands

Fix `iCj` command

* RzBin: add rz_bin_object_sections_mapping_list API

* Fix rz-bin for new API

Remove unused va var in rz-bin.c

Fix `iA`/`-A` output

* implemented classdump_cpp

* Support namespaces

Use `icc`, `icl` does not exist anymore

Update output of broken tests for `icc`

Add `rz_return_*()` asserts in new `*_print()` functions

* Provide rz_core_bin_print API

* Select which parts to print also based on the mode

* Return bool from all `rz_core_bin_*_print()` API

* Use RzBinFile in new `rz_core_bin_*_print()` API

* Restore `dbg_dmi` test

* Remove oldshell handlers for `i` commands

* Remove `ieq` call in rizin, not needed

* Allow NULL `bf` in `rz_cmd_info_handler()`

* Re-add support for RZ_BIN_PREFIX for symbols/sections/segments/imports/relocs

* Move `ib` command to `obR`

* Show 'N/A' in `i` command when info are not available

* Assert on bf->o, just to be sure

* Make error messages clearer in `idp` commands

Co-authored-by: wargio <wargio@libero.it>
Co-authored-by: Giovanni <561184+wargio@users.noreply.github.com>
2021-09-04 22:37:05 +08:00
Giovanni
d11a38b0a6
Added Java fuzzing test crashing analysis 2021-08-23 19:01:57 +08:00
Giovanni
984e9728d3
Various fixes on Java, icc/ic and dex rewrite (#1455)
* rewritten dex parser
* rewritten java demangler
* javas/javac returns demangled comments
* converted code to use new rz_buf_read_le* apis
* Added ownership & doxygen 
* Removed useless dex hack
2021-08-17 21:52:11 +02:00
GustavoLCR
c9acf440cf
Reorganize map skyline segments 2021-08-03 22:44:38 +08:00
Riccardo Schirone
c8c98ecce3
Full table header line (#1239)
* Fully print last column header separator
* Fix table unit tests
* Fix tests
2021-06-28 17:25:25 +08:00
sandrabeme
bdface85a2 Switch iI command to use RzTable API
* Implement `rz_table_transpose()`
* Switch `iI` command to use RzTable API
2021-05-16 00:15:32 +08:00
Giovanni
7cfddb1da8
Java rewrite with LGPL license (#804)
* Rewritten RzBin java plugin (LGPL3)
* Rewritten java_core.c (LGPL3)
* Rewritten java RzAsm plugin (LGPL3)
* Rewritten java RzAnalysis plugin (LGPL3)
* Resolve constant_pool.<index> when rzbin is available.
* Updated tests with proper ones
* Support java <1.0.2 (i.e. OAK) file format
* Added constant pool resolver `javar`
* Added tests from java 1.7 to 15
2021-03-19 22:00:19 +08:00
wargio
8005c480b2 Moving java from shlr to core
Removed unused code and comments.
Removed dead code
Moved print method outside class.c
Moved json method outside class.c
Removed yc_w_refs and i_mref which never worked.
Fixed set_flags method to work as intended.
Fixed various parsing errors.
Fixed many memory leaks.
Fixed "insecure" rz_cons_printf warning.
removed `#define V`, `#define U` and `#define _`
Implemented newshell calls.
Optimized code.
Refactoring rz_bin_java_get_field_offsets
Avoid loading static core plugins when not needed.
Removed useless `if 0`
2021-02-25 12:02:20 +01:00
Giovanni
639fe1170b
[java] Remove DsoJson (#585)
* removed java/main.c

* Removed DsoJson

* fixed access_flags introduced bug.

* Simplified convert_string

* refactoring code.

* fixed invalid json.
2021-02-11 15:31:21 +01:00
Florian Märkl
d53d1e3845
Final Analysis Renaming (#124)
* Rename missing Analysis Defines
* Rename analysis config vars and other lower case stuff
* Rename test/db/analysis
* Fix analysis tests

Co-authored-by: Anton Kochkov <anton.kochkov@gmail.com>
2020-12-08 15:05:24 +08:00
Renamed from test/db/anal/java (Browse further)