summaryrefslogtreecommitdiffstats
path: root/gnu/llvm/lldb/packages/Python/lldbsuite/test/functionalities/exec/main.cpp
diff options
context:
space:
mode:
authorpatrick <patrick@openbsd.org>2020-08-03 14:33:06 +0000
committerpatrick <patrick@openbsd.org>2020-08-03 14:33:06 +0000
commit061da546b983eb767bad15e67af1174fb0bcf31c (patch)
tree83c78b820819d70aa40c36d90447978b300078c5 /gnu/llvm/lldb/packages/Python/lldbsuite/test/functionalities/exec/main.cpp
parentImport LLVM 10.0.0 release including clang, lld and lldb. (diff)
downloadwireguard-openbsd-061da546b983eb767bad15e67af1174fb0bcf31c.tar.xz
wireguard-openbsd-061da546b983eb767bad15e67af1174fb0bcf31c.zip
Import LLVM 10.0.0 release including clang, lld and lldb.
ok hackroom tested by plenty
Diffstat (limited to 'gnu/llvm/lldb/packages/Python/lldbsuite/test/functionalities/exec/main.cpp')
-rw-r--r--gnu/llvm/lldb/packages/Python/lldbsuite/test/functionalities/exec/main.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/gnu/llvm/lldb/packages/Python/lldbsuite/test/functionalities/exec/main.cpp b/gnu/llvm/lldb/packages/Python/lldbsuite/test/functionalities/exec/main.cpp
new file mode 100644
index 00000000000..bec470fd13e
--- /dev/null
+++ b/gnu/llvm/lldb/packages/Python/lldbsuite/test/functionalities/exec/main.cpp
@@ -0,0 +1,18 @@
+#define _POSIX_C_SOURCE 200809L
+
+#include <cstdio>
+#include <cstdlib>
+#include <cstring>
+#include <libgen.h>
+#include <string>
+#include <unistd.h>
+
+int main(int argc, char const **argv) {
+ char *buf = strdup(argv[0]); // Set breakpoint 1 here
+ std::string directory_name(::dirname(buf));
+
+ std::string other_program = directory_name + "/secondprog";
+ execve(other_program.c_str(), const_cast<char *const *>(argv), nullptr);
+ perror("execve");
+ abort();
+}