0
0
mirror of https://github.com/DMaroo/GhidRust.git synced 2025-06-29 17:41:41 +02:00
Commit Graph

37 Commits

Author SHA1 Message Date
a4c5ebeee4 Fix typo in README (og -> of) 2024-05-19 01:47:47 +05:30
978c22d9ba Update project status
* Putting development of this project on permanent hold because of a
      shift in priorities
2024-02-05 11:36:11 +05:30
8355b1f763 Add checkstyle config and Javadoc comments
* Also do some minor rename and refactor
2024-02-05 11:35:33 +05:30
e6f0083cf0 Fix according GP-4269 ()
Co-authored-by: Dmitry Shchannikov <d_shchannikov@wargaming.net>
2024-02-05 08:13:14 +05:30
eb99077ee3 Fixed the failing build caused due to incorrect help files path 2023-06-11 20:53:24 +08:00
a9592b2b93 Add "documentation" (it's just the readme, but needs to be improved) 2023-05-20 13:16:39 +08:00
2679f507da Use the correct CSS file for documentation 2023-05-20 13:09:05 +08:00
9550dd2717 Remove local file logging 2023-05-09 11:25:46 +05:30
b66c9091cc Remove ELF specific section finding (no longer using .rodata)
* Now it searches the address set instead of getting the `.rodata`
      section (only for ELF)
    * See  for more
2023-05-08 13:17:17 +05:30
08f9e914d2 Remove parens for if conditions 2023-04-28 01:31:07 +05:30
6b91c2564f Add better decompilation example's image in README 2023-04-27 04:21:32 +05:30
61d0e9b94a Add support for more statements
* If statements decompiled correctly
    * Unary expressions have neater decompilation
    * Break and continue statements
    * Comparison operators decompiled correctly
2023-04-26 23:50:32 +05:30
3095de7bbd Add decompilation logic for while and do-while statements 2023-04-26 08:42:43 +05:30
2891356e1b Add CContext to store context information while parsing
* For now, it is being used to denote whether to use a semicolon or
      not
2023-04-26 08:41:30 +05:30
f0f3d0d747 Add a separate formatter
* This would allow for custom formatting
    * Keeps the CVisitor simple
2023-04-26 08:40:45 +05:30
d317d6ff3c Add decompilation logic for array indexing
* Add parens while casting
    * Simplifies newline insertion and ";" insertion
2023-04-23 17:37:13 +05:30
425c633efe Add decompilation logic for more constructs
* Function calls decompiled correctly
    * Add boolean type and boolean constants in the grammar
    * Allow angled braces in identifier names
    * Overload the `transpile` to also allow input streams
    * Update the generate script accordingly
2023-04-23 17:11:26 +05:30
6debceb8b5 Add parsing and codegen for assignment and declaration 2023-04-23 17:11:26 +05:30
2f5674d63b Add configure instrucions for the plugin 2023-04-22 07:38:40 +05:30
a206ec28f3 Add decompilation support for function arguments 2023-04-22 07:38:40 +05:30
c24ddf0a79 Remove unused functions and variables 2023-04-22 07:38:25 +05:30
b51814233d Remove certification manifest, not necessary 2023-04-22 07:05:06 +05:30
59fef18c3a Make the decompiler plugin invoke the transpiler 2023-04-22 07:04:44 +05:30
8f916a6a8d Update .gitignore to exclude Java class files 2023-04-22 07:04:17 +05:30
0d06543ef7 Update the README to be more descriptive
* Also add the report for detailed overview
2023-04-22 06:12:19 +05:30
c8231649a0 Use correct fucntion for the popup 2023-04-22 00:21:37 +05:30
c240d69264 Add logo in the README 2023-04-21 19:03:32 +05:30
8f7c12d3fe Add C to Rust transpiler
* Add grammar for C and transpile it to Rust code
  * Add `generate.sh` to generate the JavaCC and JJTree files
  * Update `build.sh`
2023-04-21 19:02:44 +05:30
6d653d6aef Add icon images for the decompiler plugin 2023-04-21 01:05:40 +05:30
32ce329db1 Add Rust decompiler widget plugin 2023-04-21 01:04:29 +05:30
27586dd822 Move RustStdAnalyzer and restructure directories 2023-04-21 01:04:06 +05:30
d3d87723c1 Add a nice logo :^) 2023-04-14 06:05:10 +05:30
c6b6df20fb Add gitattributes (just in case :)) 2023-04-14 06:04:53 +05:30
e2a029e36e Added the Function ID database
* This FIDB is for the libstd found with `rustc` version `1.58.1` on
    x86-64 Linux
  * Feel free to add more FIDBs, or replace this one with more relevant
    ones, depending on your system
2023-04-14 06:03:13 +05:30
159b1377cf Add RustStdAnalyzer analyzer extension
* This extension uses an existing Function ID database to apply
    function signatures to Rust binaries (very useful in case of
    stripped binaries)
  * So this extension basically detects a Rust binary and auto-applies
    the correct `libstd` Rust function signatures, pretty cool
  * Plus, you can also add your own Function ID databases in the `data/`
    subdirectory if you want to apply even more signatures or, say,
    custom signatures
2023-04-14 06:00:17 +05:30
b561396f55 Remove existing installation before installing the new extension
* Also, clear out the `dist/` directory before building.
    This helps in avoiding duplicate builds caused sue of different dates.
2023-04-14 05:58:26 +05:30
1475238074 Initial extension set up
* Extension help can be found in the "Help" section in Ghidra
  * Extension build script, LICENSE and README added
2023-04-11 23:06:09 +05:30