* Use double quotes to make .dmm* work on Windows
* Fix r2pipe.cmdj('dmmj') command on Windows. Report correct path when listing modules ('dmm')
* Removed unused local variable
* Added 'dce' command for windows
* Escape backslashes for JSON output only
* Do not include r_debug_native_continue() for __CYGWIN__ builds. Removed unnecessary memset.
* Added exception for CYGWIN to not escape backslashes in path
* Escape backslashes in both file paths and map names. Use map name for 'f mod.%s' instead of file path
* Added more exceptions for CYGWIN
* Validate escaped strings
* Upstream patches from pkgsrc/devel/radare2
Switch to using egrep instead of non-portable "grep -e".
Add support for SunOS.
* Add support for SunOS.
* FIONREAD is defined in sys/filio.h on SunOS.
* Ask find(1) to look for files with desired extension rather than searching for
all files & fishing out the desired extension in the pipeline, with grep.
Gets rid of this:
p/debug_native.c: In function 'bsd_reg_read':
p/debug_native.c:674: warning: passing argument 3 of 'ptrace' from incompatible pointer type
* Fix esil manpage
Each manual page should start with a "NAME" section, which lists the
name and a brief description of the page separated by "\-". The "NAME"
section is parsed by lexgrog and used to generate a database that's
queried by commands like apropos and whatis. Without this change
lexgrog fails to parse the NAME section of this manual page.
This was found by Debian's lintian tool (manpage-has-bad-whatis-entry).
* Fix empty input line in manpages
Found-By: lintian as manpage-has-errors-from-man
* Fix rahash2 manpage
.El (end list) is only valid after .Bl (begin list),
but no list was started in this section.
Found-By: lintian
* Avoid build break if no static bin plugins are defined
If one disables all static bin plugins, build currently fails,
since R_BIN_STATIC_PLUGINS/R_BIN_XTR_STATIC_PLUGINS are not
defined. This fixes the build for these kind of setups.
(In Debian does not built the mach code, since the
Apple Public Source License is not compatible with
the Debian Free Software Guidelines. Without the
mach code there is not a single binxtr plugin)
* Fix implicit declaration of function 'linux_generate_corefile' on i386
Noticed by Debian build farm.
* Add support for SOURCE_DATE_EPOCH
SOURCE_DATE_EPOCH can be used to make builds
reproducible [0].
Note: radare suffers from a second problem making the
build unreproducible: It captures the full build path.
This is *not* covered by this change.
[0] https://reproducible-builds.org/specs/source-date-epoch/
* Fixes: 5540 (now i386 will not complain in case they're missing GETREGSET)
* Fixup: Owner set to Linux for NT_PRXFPREG
* Fixup: Now extra section hdr is being written with the right offset
* Fixup: Bug with multithread cfg fixed
* Add: Now r2 is able to generate coredumps on ARM platforms
* kvm_openfiles can fail so make sure we print the error message.
On OpenBSD you can use the kvm interface without /dev/kmem access but on FreeBSD
you need root or kmem access which one do not want to give a user.
Look at ps(1) on FreeBSD and see how they do it.
Note that OpenBSD can have mappings with zero size so relax the assert.
Also note that the protection bits are flipped. Different bit order. Will fix that later.
* Add support for dp and dp* on OpenBSD.
kvm_getprocs exists on Net and Free as well so it might work there as well
* Cosmetic changes after feedback. Thanks.
A TRAP signal signifes expected stops for breakpoints and so on. There's no
need to display these as signals or stops since they will be communicated
inside r_debug_bp_hit.
Linux kernel checks for unknown flags passed via the last argument to
waitpid() and fails waitpid() with EINVAL if it encounters one:
From kernel/exit.c:sys_wait4()
if (options & ~(WNOHANG|WUNTRACED|WCONTINUED|
__WNOTHREAD|__WCLONE|__WALL))
return -EINVAL;
This makes it impossible to use debugger on Linux.
WAIT_ANY macro is actually supposed to be used as PID argument to wait
for all children without specifying particular PID.
Signed-off-by: Pavel Borzenkov <pavel.borzenkov@gmail.com>