On Thu, Jul 08, 1999 at 12:37:58AM +0200, Wichert Akkerman wrote: > > I have currently only one bug reamining which I want to solve before > releasing strace 4.0, and it involves only two architectures: alpha > and powerpc. > > The problem is that the stat structure is not decoded correctly. To see > this happening simply try the following command: > > strace -v ls -ald . > > I suspect it has something to do with 64bit kerneltypes, but I can't see > where it's going wrong.. > > Please note I made some changes since the last Debian package, so using > the CVS version might be a good idea. The CVS archive is at the > following address: > > :pserver:[EMAIL PROTECTED]:/cvs/strace > > The password is empty, and module is strace. Alternative there are also > daily snapshots at the strace homepage > http://www.wi.leidenuniv.nl/~wichert/strace/ > > Any help is appreciated!
The attached patch fixes the problem. It's a little ugly, but it basically allows the kernel's ideas of the type sizes to be visible to strace. Libc has other ideas. Dan /--------------------------------\ /--------------------------------\ | Daniel Jacobowitz |__| SCS Class of 2002 | | Debian GNU/Linux Developer __ Carnegie Mellon University | | [EMAIL PROTECTED] | | [EMAIL PROTECTED] | \--------------------------------/ \--------------------------------/
Index: file.c =================================================================== RCS file: /cvs/strace/strace/file.c,v retrieving revision 1.14 diff -u -r1.14 file.c --- file.c 1999/06/11 13:18:40 1.14 +++ file.c 1999/07/08 01:45:29 @@ -66,7 +66,25 @@ # include <asm/stat.h> # undef stat # else +# define dev_t __kernel_dev_t +# define ino_t __kernel_ino_t +# define mode_t __kernel_mode_t +# define nlink_t __kernel_nlink_t +# define uid_t __kernel_uid_t +# define gid_t __kernel_gid_t +# define off_t __kernel_off_t +# define loff_t __kernel_loff_t + # include <asm/stat.h> + +# undef dev_t +# undef ino_t +# undef mode_t +# undef nlink_t +# undef uid_t +# undef gid_t +# undef off_t +# undef loff_t # endif # define stat libc_stat # include <sys/stat.h>

