1bcb5f5a96
o Syscall return values do not fit in int on 64-bit architectures. Change the type of retval in <arch>_syscall_exit() to long and change the prototype of said function to return a long as well. o Change the prototype of print_syscall_ret() to take a long for the return address and change the format string accordingly. o Replace the code sequence tmp = malloc(X); sprintf(tmp, format, ...); with X by definition too small on 64-bit platforms by asprintf(&tmp, format, ...); With these changes the output makes sense again, although it does mess up the tabulation on ia64. Go widescreen... Not tested on: alpha, sparc64. |
||
---|---|---|
.. | ||
alpha-fbsd.c | ||
amd64-fbsd32.c | ||
amd64-linux32.c | ||
extern.h | ||
i386-fbsd.c | ||
i386-linux.c | ||
i386.conf | ||
i386linux.conf | ||
ia64-fbsd.c | ||
main.c | ||
Makefile | ||
setup.c | ||
sparc64-fbsd.c | ||
syscall.h | ||
syscalls.c | ||
truss.1 | ||
truss.h |