fix stat64 on UW
diff --git a/aclocal.m4 b/aclocal.m4
index 93d880e..a3f07c0 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -287,9 +287,13 @@
dnl ### A macro to determine whether stat64 is defined.
AC_DEFUN(AC_STAT64,
-[AC_MSG_CHECKING(for stat64 in asm/stat.h)
+[AC_MSG_CHECKING(for stat64 in (asm|sys)/stat.h)
AC_CACHE_VAL(ac_cv_type_stat64,
-[AC_TRY_COMPILE([#include <asm/stat.h>],
+[AC_TRY_COMPILE([#ifdef linux
+#include <asm/stat.h>
+#else
+#include <sys/stat.h>
+#endif],
[struct stat64 st;],
ac_cv_type_stat64=yes,
ac_cv_type_stat64=no)])
diff --git a/file.c b/file.c
index 911090c..50fdd4a 100644
--- a/file.c
+++ b/file.c
@@ -999,6 +999,11 @@
printpath(tcp, tcp->u_arg[1]);
tprintf(", ");
} else {
+#ifdef _STAT64_VER
+ if (tcp->u_arg[0] == _STAT64_VER)
+ printstat64 (tcp, tcp->u_arg[2]);
+ else
+#endif
printstat(tcp, tcp->u_arg[2]);
}
return 0;
@@ -1011,6 +1016,11 @@
if (entering(tcp))
tprintf("%ld, %ld, ", tcp->u_arg[0], tcp->u_arg[1]);
else {
+#ifdef _STAT64_VER
+ if (tcp->u_arg[0] == _STAT64_VER)
+ printstat64 (tcp, tcp->u_arg[2]);
+ else
+#endif
printstat(tcp, tcp->u_arg[2]);
}
return 0;
@@ -1025,6 +1035,11 @@
printpath(tcp, tcp->u_arg[1]);
tprintf(", ");
} else {
+#ifdef _STAT64_VER
+ if (tcp->u_arg[0] == _STAT64_VER)
+ printstat64 (tcp, tcp->u_arg[2]);
+ else
+#endif
printstat(tcp, tcp->u_arg[2]);
}
return 0;