Commit graph

50 commits

Author SHA1 Message Date
Riccardo Schirone
53bf5c497f SPDX Copyright text for all files based on history
- Add LICENSES directory
- Download additional licenses used
- Add .reuse directory
- Add doc about SPDX/reuse

Co-authored-by: Florian Märkl <info@florianmaerkl.de>
2021-03-05 19:39:15 +08:00
Alexis Ehret
b6f99ec7ba Fix uninitialized data errors for rz-test
test with:
* valgrind -s --track-origins=yes --log-file=log.txt rz-test -C test
* valgrind -s --track-origins=yes --log-file=log.txt rz-test -L -C test
2021-02-24 20:52:16 +01:00
Alexis Ehret
c9230c7f90 Fix memory leak binrz/rz-test/rz-test.c 2021-02-24 20:52:16 +01:00
Riccardo Schirone
10f72d818c
Implement rz_subprocess_start_opt API to choose pipes (#243) 2021-02-22 12:57:31 +00:00
Riccardo Schirone
2c54547ec0 Clean dependencies between modules and put them in order 2021-01-28 11:57:28 +01:00
Riccardo Schirone
cee8d470c2 Remove Makefiles and many related scripts 2021-01-28 11:57:28 +01:00
Riccardo Schirone
1173049e2b Consider DESTDIR in macos_sign.sh during install script 2021-01-21 16:38:38 +01:00
Anton Kochkov
a0be4e2e64 Run clang-format 2021-01-21 22:05:44 +08:00
Anton Kochkov
cd7d4f5dc6 Temporary workaround for clang-format #46240 bug 2021-01-21 22:05:44 +08:00
Riccardo Schirone
1d9ffc916f
Fix rpath on MacOS, broken by moving binaries for signing (#411) 2021-01-21 09:13:41 +01:00
Khairul Azhar Kasmiran
d5601cc2fe
Replace naked rz_sys_system/write/read/freopen calls with their wrapped counterparts (#388) 2021-01-19 00:07:19 +08:00
yossizap
3212a6cf10
Merge pull request #376 from yossizap/fix-reg-trace-crash
Fix trace crash caused by a mismatch between the register profile and op analysis
2021-01-18 16:59:12 +08:00
Qijia Liu
7fd5903ab3 Fix memleak in db/asm/arm_64 2021-01-16 14:13:18 +01:00
Riccardo Schirone
6f41360178
MacOS improvements (#322)
* Ad-hoc sign rizin binary with debugger entitlements on MacOS
* Use re.rizin.rizin and move OSX pkg files in dist/osx
* Use dist/osx/build_osx_package.sh to create OSX pkg with meson
* Mention how to create OSX pkg in doc/PACKAGERS.md
* Remove doc/macos.md
2021-01-11 14:45:38 +01:00
yossizap
36e0231251
Added regex documentation to test/README.md (#326) 2021-01-08 21:03:33 +01:00
Alexis Ehret
fe73c1af16
Remove all dead assignment detect by clang sa (#310) 2021-01-07 10:00:02 +01:00
Anton Kochkov
e9d91af698 More Rizin renames 2021-01-05 05:21:41 -06:00
Maijin
dcb9f987ae
Remove EMSCRIPTEN__TODO and TODO (#265)
* Remove unused TODO(x)
* Remove unused Emscripten

Co-authored-by: Maijin <maijin21@gmail.com>
2020-12-30 13:59:38 +08:00
yossizap
cf53347730
Added support for regex in test output ##test (#269)
* Added REGEX/_ERR to enable regex in EXPECT/_ERR ##test
* Modify output based on REGEXP_OUT/ERR and compare with EXPECT/ERR ##test
2020-12-28 12:04:35 +02:00
Khairul Azhar Kasmiran
0c5bfb2fda
rz-test: Remove unused cmd_buf (#270) 2020-12-27 12:11:48 +01:00
Florian Märkl
40a29cba29
Remove Pseudo-Sandbox (#239) 2020-12-21 21:31:32 +01:00
Riccardo Schirone
69f3da16d0
rz_sys_system should not depend on LIBC_HAVE_FORK (#226) 2020-12-21 09:15:25 +01:00
Maijin
8d09f8d6d5
Remove Rapatch (#215)
* Remove Rapatch

* Remove help message

* Fix remaining issues

* Remove patch.o

* Remove remaining patch

Co-authored-by: Maijin <maijin21@gmail.com>
2020-12-18 13:46:18 +01:00
Riccardo Schirone
286f930b93 Use O_CLOEXEC when creating pipes so they are closed on exec
By default, pipes file descriptors are not closed on exec. This means
they are inherited by the child process. However, this may be a problem
in particular in multi-threading programs (e.g. rz-test), because EOF is
not sent to a pipe until the last pipe file descriptor is closed.

This commit makes sure that by default pipes are created with O_CLOEXEC,
so they are closed whenever an exec syscall is executed. Usually pipe
file descriptors are duplicated to be stdin/stdout/stderr of the
children process and those dupped file descriptors won't be closed on
exec.

In case pipe2 is not available (e.g. MacOS), we do a pipe + fcntl, which
is in theory racy (see man open(2)). For this reason pipe, exec, system,
etc. are wrapped in rz_sys and they use a global mutex to make sure a
pipe is either created and set as O_CLOEXEC or not created at all before
an exec operation is done.

On very old systems, O_CLOEXEC may not be available at all. In those
cases, which should be rare, we just keep a list of file descriptors
created with rz_sys_pipe that we need to close before executing another
process.

Interaction with external libs may be tricky. We expect external libs to
create files/pipes that need to be closed on exec with the right flags
and we expect rizin code to manually close pipes file descriptors as
appropriate if the exec syscall is executed by an external library
(non-rizin code).

Make sure execl is found by acr/make
2020-12-15 10:18:50 +01:00
Riccardo Schirone
5ea4697402 Use RzSubprocess in rz_test 2020-12-15 10:18:50 +01:00
Riccardo Schirone
982e7868ce
- is not a valid function name in bash (#148)
Also, RZPM_PREFIX should not have the "/prefix" suffix
2020-12-09 23:50:02 +01:00
Anton Kochkov
041d73dce3
Change the "anal" abbreviation to "Analysis" in Code (#117) 2020-12-06 19:25:27 +01:00
Giovanni
35a9ef94c9
Code and comments cleanup (#108) 2020-12-04 18:11:51 +08:00
GustavoLCR
f820a489f6 Add option to log r2r test results and publish it in the CI (#17964) ##test 2020-11-24 14:51:44 +01:00
Anton Kochkov
e1d83487a6 More renames of r2 to rizin 2020-11-10 12:24:41 +08:00
Anton Kochkov
afc45bec46 Rename r2 to rizin 2020-11-06 12:21:54 +08:00
Anton Kochkov
539f60a1a8
Rename radare to rizin (#68)
* Rename radare to rizin

- Rename REvent to RzEvent
- Rename RBreakpoint to RzBreakpoint
- Rename RRune to RzRune

* Remove unnecessary files
2020-11-04 18:56:27 +08:00
Khairul Azhar Kasmiran
7c86add0dc Add 6 minutes to cmd_aae timeout and skip aaa for swift_read fuzz test (#17805)
* Add 6 minutes to the cmd_aae test
* Skip aaa when doing swift_read fuzz test on asan
* Bump linux-meson-gcc-newshell-tests timeout to 60 minutes
2020-10-30 10:44:38 +01:00
Florian Märkl
6572b63794
Use Standard SPDX Header Comments (#51) 2020-10-27 09:04:11 +01:00
Damien Zammit
d3827a002a r2pm: Add R2PM_GITSKIP env var to skip git checkout master && git pull (#17646) 2020-10-21 10:53:46 +08:00
Florian Maerkl
a0a26bb07b Add rz_test_subprocess_(un)?lock stubs for Windows 2020-10-13 14:47:53 +02:00
Riccardo Schirone
7ceebc725e Mass renaming r2 to rz/rizin 2020-10-13 12:43:34 +02:00
Riccardo Schirone
52ba3f8d39 Rename RStr to RzStr 2020-10-13 12:43:34 +02:00
Riccardo Schirone
b8bf83b856 Rename RStrBuf to RzStrBuf 2020-10-13 12:43:34 +02:00
Florian Märkl
cd11ad6988 Show Disasm Diff in rz-test 2020-10-11 21:13:18 +02:00
Florian Märkl
81bf113d81 Fix a potential race in rz-test reported by helgrind 2020-10-11 21:13:18 +02:00
Florian Märkl
3e39755002 Fix rz-test hang on diff fork() 2020-10-11 21:13:18 +02:00
Riccardo Schirone
0ce940130d Few fixes to newshell
- Rename DEFINE_CMD_ARGV_GROUP_WITH_CHILD with .._GROUP_EXEC ##newshell
- Make sure ARGV RzCmdDesc do not have children ##newshell

Also enable WARNING level logs by default, so that warnings generated
during rizin initialization, and before RzConfig is initialized, can be
logged.
2020-10-08 10:03:54 +02:00
Florian Märkl
03c0eb80de
Move macOS to Travis (#7) 2020-10-03 13:34:06 +02:00
Florian Märkl
0d536e1a89
Rename RPVector -> RzPVector 2020-10-02 16:32:35 +02:00
Riccardo Schirone
502e91aff7
Rename R_ and R2_ to RZ_ (#8)
* Rename R2_ -> RZ_
* Rename R_ -> RZ_
* Rename R2R_ -> RZ_TEST_
* Rename R2R defines and types to RZ_TEST/RzTest
* Keep R_ for REIL registers
2020-10-02 16:09:13 +02:00
Anton Kochkov
881058693d
Remove GRUB and librz_fs plugins (#9) 2020-10-02 21:02:00 +08:00
Florian Märkl
45ca181de2
Use R2PIPE_* -> RZ_PIPE_* env vars (#5) 2020-10-01 20:25:56 +02:00
Riccardo Schirone
338e6fe172 Other renames in man and small places
Remove rz link, just keep rizin

Remove r2 link from acr

Fix http test on macos
2020-10-01 17:53:29 +02:00
Riccardo Schirone
721609a17b
Rename to rizin (#2) 2020-10-01 16:13:03 +02:00