mirror of
https://gitlab.freedesktop.org/libevdev/libevdev.git
synced 2025-12-20 08:00:09 +01:00
tests: Disable attach debugger on FreeBSD
Disable attaching a debugger on FreeBSD, since FreeBSD lacks support for PTRACE_ATTACH. Signed-off-by: Niclas Zeising <zeising@daemonic.se>
This commit is contained in:
parent
8026722f86
commit
0af8c4054d
1 changed files with 8 additions and 3 deletions
|
|
@ -38,8 +38,13 @@
|
||||||
static int
|
static int
|
||||||
is_debugger_attached(void)
|
is_debugger_attached(void)
|
||||||
{
|
{
|
||||||
|
int rc = 1;
|
||||||
|
/*
|
||||||
|
* FreeBSD does not support PTRACE_ATTACH, disable attaching a debugger
|
||||||
|
* on FreeBSD by skipping the rest of the function and just return 1.
|
||||||
|
*/
|
||||||
|
#ifndef __FreeBSD__
|
||||||
int status;
|
int status;
|
||||||
int rc;
|
|
||||||
int pid = fork();
|
int pid = fork();
|
||||||
|
|
||||||
if (pid == -1)
|
if (pid == -1)
|
||||||
|
|
@ -52,14 +57,14 @@ is_debugger_attached(void)
|
||||||
ptrace(PTRACE_CONT, NULL, NULL);
|
ptrace(PTRACE_CONT, NULL, NULL);
|
||||||
ptrace(PTRACE_DETACH, ppid, NULL, NULL);
|
ptrace(PTRACE_DETACH, ppid, NULL, NULL);
|
||||||
rc = 0;
|
rc = 0;
|
||||||
} else
|
}
|
||||||
rc = 1;
|
|
||||||
_exit(rc);
|
_exit(rc);
|
||||||
} else {
|
} else {
|
||||||
waitpid(pid, &status, 0);
|
waitpid(pid, &status, 0);
|
||||||
rc = WEXITSTATUS(status);
|
rc = WEXITSTATUS(status);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endif /* !__FreeBSD__ */
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue