ft_strace/includes/ft_strace.h

38 lines
No EOL
1.5 KiB
C

/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* ft_strace.h :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: thrieg <thrieg@student.42mulhouse.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2025/12/11 04:06:00 by thrieg #+# #+# */
/* Updated: 2025/12/11 23:17:28 by thrieg ### ########.fr */
/* */
/* ************************************************************************** */
#ifndef FT_STRACE_H
#define FT_STRACE_H
#include <unistd.h>
#include <stdlib.h>
#include <stdint.h>
#include <stdio.h>
#include <errno.h>
#include <string.h>
#include <sys/ptrace.h>
#include <sys/wait.h>
#include <signal.h>
#include "../libft/libft.h"
//returns 64 for x84_64, or 32 for 32 bits, -1 for open/read error, -2 for unrecognised file type
ssize_t binary_type(char *path_to_binary);
void read_regs_and_print_exit(pid_t pid, size_t binary_type);
void read_regs_and_print_entry(pid_t pid, size_t binary_type);
void print_signal(pid_t pid, int sig);
typedef struct s_syscall_desc {
const char *name;
unsigned char argc;
} t_syscall_desc;
#endif