summaryrefslogtreecommitdiff
path: root/sysutils/scanmem/files/patch-ptrace.c
diff options
context:
space:
mode:
authorAlexey Dokuchaev <danfe@FreeBSD.org>2020-07-11 13:09:10 +0000
committerAlexey Dokuchaev <danfe@FreeBSD.org>2020-07-11 13:09:10 +0000
commit4974cb1b9c607c8c941e3aaf33e65e07d6afa431 (patch)
tree05ffedbe9972851024bba11aba6a92ccc08f78e1 /sysutils/scanmem/files/patch-ptrace.c
parentgraphics/wayland-info: add new port (diff)
Resurrect `sysutils/scanmem' and update to version 0.17.
Notes
Notes: svn path=/head/; revision=541970
Diffstat (limited to 'sysutils/scanmem/files/patch-ptrace.c')
-rw-r--r--sysutils/scanmem/files/patch-ptrace.c52
1 files changed, 52 insertions, 0 deletions
diff --git a/sysutils/scanmem/files/patch-ptrace.c b/sysutils/scanmem/files/patch-ptrace.c
new file mode 100644
index 000000000000..b22f53a6a2ea
--- /dev/null
+++ b/sysutils/scanmem/files/patch-ptrace.c
@@ -0,0 +1,52 @@
+--- ptrace.c.orig 2017-10-13 21:53:16 UTC
++++ ptrace.c
+@@ -25,11 +25,13 @@
+
+ #include "config.h"
+
++#if 0
+ /* for pread */
+ # ifdef _XOPEN_SOURCE
+ # undef _XOPEN_SOURCE
+ # endif
+ # define _XOPEN_SOURCE 500
++#endif
+
+ #include <time.h>
+ #include <sys/types.h>
+@@ -406,7 +408,7 @@ bool sm_checkmatches(globals_t *vars,
+ return sm_detach(vars->target);
+ }
+
+-/* read region using /proc/pid/mem */
++/* read region using /compat/linux/proc/pid/mem */
+ static inline ssize_t readregion(pid_t target, void *buf, size_t count, unsigned long offset)
+ {
+ char mem[32];
+@@ -414,7 +416,7 @@ static inline ssize_t readregion(pid_t target, void *b
+ ssize_t len;
+
+ /* print the path to mem file */
+- snprintf(mem, sizeof(mem), "/proc/%d/mem", target);
++ snprintf(mem, sizeof(mem), "/compat/linux/proc/%d/mem", target);
+
+ /* attempt to open the file */
+ if ((fd = open(mem, O_RDONLY)) == -1) {
+@@ -650,7 +652,7 @@ bool sm_setaddr(pid_t target, void *addr, const value_
+ return false;
+ }
+
+- /* TODO: may use /proc/<pid>/mem here */
++ /* TODO: may use /compat/linux/proc/<pid>/mem here */
+ for (i = 0; i < sizeof(uint64_t)/sizeof(long); i++)
+ {
+ if (ptrace(PTRACE_POKEDATA, target, addr + i*sizeof(long), memarray[i]) == -1L) {
+@@ -704,7 +706,7 @@ bool sm_read_array(pid_t target, const void *addr, cha
+ #endif
+ }
+
+-/* TODO: may use /proc/<pid>/mem here */
++/* TODO: may use /compat/linux/proc/<pid>/mem here */
+ bool sm_write_array(pid_t target, void *addr, const void *data, int len)
+ {
+ int i,j;