WerWolv
8a6b110d0b
ux: Improve loading of encoding files, make advanced encoding enabled by default
2022-01-15 23:44:15 +01:00
WerWolv
abac42826c
fix: Many security and format issues
2022-01-15 14:14:53 +01:00
WerWolv
012b82c395
fix: Crash on exit due to bug in libromfs
2022-01-15 02:46:24 +01:00
WerWolv
3f936b57f5
sys: Added a bunch of logging
2022-01-13 14:34:27 +01:00
WerWolv
54785b29dd
api: Moved file extension handling to plugin and added API
2022-01-13 14:34:19 +01:00
WerWolv
c88d428fb5
sys: std::filesystem -> fs
2022-01-13 14:33:30 +01:00
WerWolv
27c08c1edf
fix: SSL verification being broken due to a off-by-one error
2022-01-13 09:05:16 +01:00
WerWolv
1f8c9b9f71
api: Move copy-as data formatting code to builtin-plugin, add api for it
2022-01-13 00:27:31 +01:00
WerWolv
25df658653
fix: ImHex directories not being created correctly
2022-01-12 09:02:03 +01:00
WerWolv
6b20a9bdd5
patterns: Fix local variables holding larger values than allowed
2022-01-12 08:59:14 +01:00
WerWolv
d399a6427a
sys: Use custom literals for scaled values
2022-01-11 23:48:18 +01:00
WerWolv
b9034523b5
patterns: Allow [[format]] attribute to work with custom types
2022-01-11 19:35:28 +01:00
WerWolv
e35ea13f60
sys: Improved view const-correctness
2022-01-10 21:05:37 +01:00
WerWolv
d38d261bbc
provider: Fixed applying of IPS patches. Handle applying asynchronously
2022-01-09 21:27:59 +01:00
WerWolv
4e636381fd
fix: Magic and EOF value for IPS and IPS32 patches not getting added properly
2022-01-09 20:16:05 +01:00
WerWolv
077bc45b7d
fix: Many format string warnings on MacOS and some Linux distros
2021-12-31 01:10:06 +01:00
WerWolv
0884025b82
patterns: Added continue and break statements to arrays of structs
2021-12-30 18:31:24 +01:00
WerWolv
3ce0f8f4a8
patterns: Added break and continue statements for loops
2021-12-30 14:44:46 +01:00
WerWolv
936d1d6072
sys: Moved to a better shortcut handling system
2021-12-23 15:11:38 +01:00
WerWolv
85f276c259
resources: Start using libromfs to embed resources
2021-12-22 15:06:16 +01:00
qxxxb
28e51309cc
Fix saving files ( #382 )
2021-12-22 13:36:26 +01:00
qxxxb
b047fc0063
Store environment variables and use on restart ( #380 )
...
- Fixes WerWolv/ImHex#373
2021-12-22 13:16:51 +01:00
WerWolv
ad223a4e5c
sys: Refactor pattern language api functions a bit
2021-12-20 20:40:28 +01:00
WerWolv
376cb01a16
patterns: Disallow calling of dangerous functions by default
...
Closes #330
2021-12-19 12:32:15 +01:00
WerWolv
ea92e17ca0
patterns: Added basic support for in/out variables
2021-12-18 22:56:36 +01:00
WerWolv
bc53109a1f
sys: Added timeout setting to curl code. Make splash screen not hang as long
2021-12-17 09:52:58 +01:00
WerWolv
891cc42f08
ui: Added global running tasks progress bar
2021-12-16 23:48:52 +01:00
WerWolv
6b22464771
fix: Loading a project crashes imhex
2021-12-16 10:07:31 +01:00
WerWolv
23085aee6d
fix: Heap(?) corruption when one of ImHex's resource paths points to a file instead of a directory
2021-12-15 00:21:34 +01:00
WerWolv
51474b2eae
ui: Added icon to footer when ImHex has elevated permissions
2021-12-13 22:58:23 +01:00
WerWolv
b2a9965617
api: Improved Provider registering api, hide implementation functions better
2021-12-12 11:52:58 +01:00
WerWolv
3e736b36b6
api: Refactored providers to allow for loading interfaces and config views
2021-12-12 00:41:44 +01:00
WerWolv
e3106eaa2a
ux: Use native APIs to open websites to prevent terminal from appearing
2021-12-10 16:10:34 +01:00
WerWolv
8f2e382c8a
patterns: Added std::env and ability to pass parameters to patterns from the UI
2021-12-10 11:55:27 +01:00
WerWolv
6a0ad22774
fix: Inconsistent provider address reading
2021-12-09 21:10:24 +01:00
WerWolv
808b051a3e
sys: Fixed sockets compiling on MacOS
2021-12-07 23:21:07 +01:00
WerWolv
c55146a78c
sys: Fix sockets compiling on Unix
2021-12-07 23:09:30 +01:00
WerWolv
cc5a437573
provider: Added basic GDB Server provider
2021-12-07 22:47:57 +01:00
WerWolv
4a53717676
sys: Moved all views to builtin plugin
2021-12-07 22:47:41 +01:00
WerWolv
a000b1a2fe
common: Added missing include
2021-12-03 00:00:25 +01:00
WerWolv
ded452fdfc
patterns: Allow functions to be called inside structs
2021-11-27 12:57:59 +01:00
RADICS Áron
467e9d1463
Tests for the CRC and hash algorithms ( #335 )
...
* Update TEST_ASSERT to do nothing if condition is true
The TEST_ASSERT should not return if the condition is true, because:
- it prevents the usage of multiple TEST_ASSERT in a single test case,
- that behavior differs from how the assert in the standard library
works, and thus may give unexpected results.
Make the TEST_ASSERT to print an error message (with an formatted
optional user part) when it fails to make debugging easier.
* Fix some bugs in TestProvider, add unit tests
Use pointer-to-vector in TestProvider so writes can be tested, too.
* Add test EncodeDecode16, fix some encode16 bugs
The function mbedtls_mpi_write_string needs a bit longer buffer than the
resulting string actually will be.
Known bug: mbedtls_mpi_read_binary ingores initial null bytes
* Add test EncodeDecode64, fix some bugs
The functions mbedtls_base64_encode and mbedtls_base64_decode needs a
bit longer buffer than the resulting string actually will be.
* Remove check for empty data from TestProvider
It can be valid to get the hash of empty string.
* Add tests for CRC calculation
Two type of thests:
- compare the result of the CRC calculation to a known to be good
results,
- generate random data as message, calculate of it's CRC and append that
to the message, the CRC of this new data should be 0.
* Add test for hash algorithms
* Add includes in tests
* Remove the use of C++20 ranges
It seems that Apple Clang does not support range-based constrained
algorithms at this time.
* Replace encode16 implementation
To encode the zero bytes at the begining of the input vector, too.
2021-11-26 22:14:44 +01:00
WerWolv
aa527ba29b
patterns: Fixed double free crash
2021-11-21 00:48:07 +01:00
WerWolv
673d43b526
sys: Fixed copy-paste error
2021-10-31 16:36:45 +01:00
WerWolv
c88053a575
windows: Added context menu entry option
...
Closes #333
2021-10-31 16:28:10 +01:00
WerWolv
cd89b55f5b
patterns: ASTNode and LogConsole cleanup
2021-10-31 15:06:48 +01:00
RADICS Áron
a6b8597f5a
Fix CRC and hash calculations ( #321 )
...
* Fix CRC calculation, add more CRC parameters
Use the Boost CRC module to calculate the CRC values.
Add options for final xor value, reflectIn and reflectOut.
Fixes #320
* Cleanup Hash view combo box, add CRC8
* Use offset/size consistently
* Cleanup: unify processing data by chunks
* Change CRC algorithm back, drop boost dependency
This is mostly the original algorithm, with a few fixes and small
additions (support for reflect In / Out, final XOR value).
* Use size_t for file read size consistently
2021-10-26 17:21:48 +02:00
WerWolv
7562e8b172
patterns: Fixed #include not properly searching all include folders
2021-10-19 21:42:04 +02:00
WerWolv
929437c159
patterns: Added global variables
2021-10-19 18:33:59 +02:00
WerWolv
46ba46ce9d
build/plugins: Added initial support for Rust plugins ( #327 )
...
* build: Added initial support for Rust plugins
* github: Install correct rust version
* github: Fixed rustup command
* github: Fix swapped win/linux commands
* github: Install linux rust toolchain on Linux
* github: Add rustup parameters to correct command
* build: libimhex-rust -> hex
* rust-plugins: Disable optimization to export functions correctly
* build: Use cdylib instead of dylib
* build: Fixed rust building and artifact copying
* build: Fixed installing plugins
* build: Fix copying and installing on Windows
* github: Added windows debugging
* github: Use curl instead of wget
* github: Added debug on failure
* github: Update path variable with rust toolchain path
* build/github: Set rust location so cmake can find it
* build: Remove leftovers
* api: Added rust wrappers for the ImHexAPI
* rust: Fixed compile flags with older gcc/clang
* build: Enable concepts for cxx.rs
* build: Explicitly set compiler for cxx.rs
* rust: Added imgui-rs to libimhex-rust
* rust: Export functions with double underscore prefix on mac
* rust: Export functions adjusted for ABI
* Add Rust target folder to gitignore
* Add vendored imgui-rs copy
* Add Context::current() to vendored imgui-rs
* Fix libimhex not exporting cimgui symbols
* Simplify plugin export mangling
* build: Fixed cimgui linking
* build: Only specify --export-all-symbols on Windows
* Add context setting to Rust plugins
* rust: Cleanup
* deps: Update curl
Co-authored-by: jam1garner <8260240+jam1garner@users.noreply.github.com>
2021-10-16 11:37:29 +02:00