aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKamil Rytarowski <n54@gmx.com>2020-04-17 18:39:42 +0200
committerKamil Rytarowski <n54@gmx.com>2020-04-18 00:19:53 +0200
commit4ddfec930ca5bd57800ebc71daef66f685a6de4d (patch)
tree88bc920e27833a742aa686482d0cb80828286140
parent2bed205e44ad853f10416e970de2534554f8cf18 (diff)
downloadgdb-4ddfec930ca5bd57800ebc71daef66f685a6de4d.zip
gdb-4ddfec930ca5bd57800ebc71daef66f685a6de4d.tar.gz
gdb-4ddfec930ca5bd57800ebc71daef66f685a6de4d.tar.bz2
Fix gdb.base/attach-twice.c build on NetBSD
Add a fallback definition of PTRACE_ATTACH that is an alias of PT_ATTACH. Change the 4th argument of ptrace(2) to 0 as it is compatible with void * (Linux) and int (NetBSD) arguments. Include <sys/types.h> for <sys/ptrace.h>. gdb/testsuite/ChangeLog: * gdb.base/attach-twice.c: Include "sys/types.h". (PTRACE_ATTACH): Add fallback definition. (main): Pass `0' to the 4th argument of `ptrace'.
-rw-r--r--gdb/testsuite/ChangeLog6
-rw-r--r--gdb/testsuite/gdb.base/attach-twice.c9
2 files changed, 14 insertions, 1 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index 44ada37..b24efc7 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,5 +1,11 @@
2020-04-17 Kamil Rytarowski <n54@gmx.com>
+ * gdb.base/attach-twice.c: Include "sys/types.h".
+ (PTRACE_ATTACH): Add fallback definition.
+ (main): Pass `0' to the 4th argument of `ptrace'.
+
+2020-04-17 Kamil Rytarowski <n54@gmx.com>
+
* gdb.base/fork-running-state.c: Include "signal.h".
2020-04-17 Tom Tromey <tromey@adacore.com>
diff --git a/gdb/testsuite/gdb.base/attach-twice.c b/gdb/testsuite/gdb.base/attach-twice.c
index 9299b3a..31cd087 100644
--- a/gdb/testsuite/gdb.base/attach-twice.c
+++ b/gdb/testsuite/gdb.base/attach-twice.c
@@ -18,9 +18,14 @@
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
+#include <sys/types.h>
#include <sys/ptrace.h>
#include <errno.h>
+#ifndef PTRACE_ATTACH
+#define PTRACE_ATTACH PT_ATTACH
+#endif
+
int
main (void)
{
@@ -33,7 +38,9 @@ main (void)
exit (1);
case 0:
errno = 0;
- ptrace (PTRACE_ATTACH, getppid (), NULL, NULL);
+ /* The 4th argument to ptrace () is 0 on purpose, as it is compatible
+ between kernels that accept void* (like Linux) and int (NetBSD). */
+ ptrace (PTRACE_ATTACH, getppid (), NULL, 0);
if (errno != 0)
perror ("PTRACE_ATTACH");
break;