{
while (1)
pause();
+
+ return NULL;
}
static void crashing_child(void)
FIXTURE_SETUP(coredump)
{
- char buf[PATH_MAX];
FILE *file;
- char *dir;
int ret;
self->pid_coredump_server = -ESRCH;
TEST_F_TIMEOUT(coredump, stackdump, 120)
{
- struct sigaction action = {};
unsigned long long stack;
char *test_dir, *line;
size_t line_length;
TEST_F(coredump, socket)
{
- int fd, pidfd, ret, status;
+ int pidfd, ret, status;
FILE *file;
pid_t pid, pid_coredump_server;
struct stat st;
- char core_file[PATH_MAX];
struct pidfd_info info = {};
int ipc_sockets[2];
char c;
TEST_F(coredump, socket_detect_userspace_client)
{
- int fd, pidfd, ret, status;
+ int pidfd, ret, status;
FILE *file;
pid_t pid, pid_coredump_server;
struct stat st;
- char core_file[PATH_MAX];
struct pidfd_info info = {};
int ipc_sockets[2];
char c;
pid_coredump_server = fork();
ASSERT_GE(pid_coredump_server, 0);
if (pid_coredump_server == 0) {
- int fd_server, fd_coredump, fd_peer_pidfd, fd_core_file;
+ int fd_server, fd_coredump, fd_peer_pidfd;
socklen_t fd_peer_pidfd_len;
close(ipc_sockets[0]);
close(fd_coredump);
close(fd_server);
close(fd_peer_pidfd);
- close(fd_core_file);
_exit(EXIT_SUCCESS);
}
self->pid_coredump_server = pid_coredump_server;
if (ret < 0)
_exit(EXIT_FAILURE);
- (void *)write(fd_socket, &(char){ 0 }, 1);
close(fd_socket);
_exit(EXIT_SUCCESS);
}
int pidfd, ret, status;
FILE *file;
pid_t pid;
- char core_file[PATH_MAX];
file = fopen("/proc/sys/kernel/core_pattern", "w");
ASSERT_NE(file, NULL);
ASSERT_GE(pid_coredump_server, 0);
if (pid_coredump_server == 0) {
int fd_server;
- socklen_t fd_peer_pidfd_len;
close(ipc_sockets[0]);