From f0b18f7e81060dedd5361fbdaa4de583e46e2bfb Mon Sep 17 00:00:00 2001 From: Lorenz Stechauner Date: Wed, 7 May 2025 11:02:01 +0200 Subject: [PATCH] proj/intercept.c: Fix some dumb bugs --- proj/intercept/src/intercept.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/proj/intercept/src/intercept.c b/proj/intercept/src/intercept.c index 959c2f9..d223807 100644 --- a/proj/intercept/src/intercept.c +++ b/proj/intercept/src/intercept.c @@ -1405,6 +1405,7 @@ int sym(sigaction)(int sig, const struct sigaction *restrict act, struct sigacti Dl_info info; if (!dladdr(ret_addr, &info) || !func_flags[func_idx_sigaction] || !lib_flags[lib_idx]) return __real_sigaction(sig, act, oact); const char *sigstr = getsigstr(sig); + char src_file[256]; if (act != NULL) { char *name = "sa_handler"; #pragma GCC diagnostic push @@ -1428,13 +1429,12 @@ int sym(sigaction)(int sig, const struct sigaction *restrict act, struct sigacti strcat(maskstr, getsigstr(i)); } if (!verbosity) { - msg("sigaction(%i:%s, %p:{}, %p)" ret_str, sig, sigstr, act, oact, ret_addr); + msg("sigaction(%i:%s, %p:{}, %p)" ret_str, sig, sigstr, act, oact, ret_data); } else { - char src_file[256]; msg("sigaction(%i:%s, %p:{sa_flags: 0x%x:%s, %s: %p, sa_mask: [%s]}, %p)" ret_str, sig, sigstr, act, act->sa_flags, flgstr, name, ptr, maskstr, oact, ret_data); } } else { - msg("sigaction(%i:%s, %p:{}, %p): %p", sig, sigstr, act, oact, ret_addr); + msg("sigaction(%i:%s, %p:{}, %p)" ret_str, sig, sigstr, act, oact, ret_data); } if (mode >= 4) { char msg_buf[BUFFER_SIZE]; @@ -1978,7 +1978,8 @@ pid_t sym(fork)(void) { init(); Dl_info info; if (!dladdr(ret_addr, &info) || !func_flags[func_idx_fork] || !lib_flags[lib_idx]) return __real_fork(); - msg("fork(): %p", ret_addr); + char src_file[256]; + msg("fork()" ret_str, ret_data); if (mode >= 4) { char msg_buf[BUFFER_SIZE]; rcv(msg_buf, sizeof(msg_buf)); @@ -2768,7 +2769,7 @@ ssize_t sym(getline)(char **restrict lineptr, size_t *restrict n, FILE *restrict Dl_info info; if (!dladdr(ret_addr, &info) || !func_flags[func_idx_getline] || !lib_flags[lib_idx]) return __real_getline(lineptr, n, stream); char src_file[256]; - msg("getline(%p:%p, %p:%li, %p)" ret_str, lineptr, lineptr != NULL ? lineptr : NULL, n, n != NULL ? *n : 0, stream, ret_data); + msg("getline(%p:%p, %p:%li, %p)" ret_str, lineptr, lineptr != NULL ? *lineptr : NULL, n, n != NULL ? *n : 0, stream, ret_data); if (mode >= 4) { char msg_buf[BUFFER_SIZE]; rcv(msg_buf, sizeof(msg_buf)); @@ -2793,7 +2794,7 @@ ssize_t sym(getdelim)(char **restrict lineptr, size_t *restrict n, int delim, FI Dl_info info; if (!dladdr(ret_addr, &info) || !func_flags[func_idx_getdelim] || !lib_flags[lib_idx]) return __real_getdelim(lineptr, n, delim, stream); char src_file[256]; - msg("getdelim(%p:%p, %p:%li, %p)" ret_str, lineptr, lineptr != NULL ? lineptr : NULL, n, n != NULL ? *n : 0, stream, ret_data); + msg("getdelim(%p:%p, %p:%li, %p)" ret_str, lineptr, lineptr != NULL ? *lineptr : NULL, n, n != NULL ? *n : 0, stream, ret_data); if (mode >= 4) { char msg_buf[BUFFER_SIZE]; rcv(msg_buf, sizeof(msg_buf));