1.1 --- a/fsaccess/op_list_objects.c Sat Dec 10 01:31:35 2022 +0100
1.2 +++ b/fsaccess/op_list_objects.c Sun Dec 11 00:21:58 2022 +0100
1.3 @@ -38,7 +38,7 @@
1.4
1.5 static void _show_object(const char *basename, struct stat *st)
1.6 {
1.7 - printf("%s%s %5d %5d %6ld %6ld %s\n",
1.8 + printf("%s%s %5d %5d %6ld %6d %s\n",
1.9 S_ISDIR(st->st_mode) ? "d" : "-",
1.10 get_permission_string(st->st_mode),
1.11 st->st_uid,
2.1 --- a/fsaccess/op_stat_objects.c Sat Dec 10 01:31:35 2022 +0100
2.2 +++ b/fsaccess/op_stat_objects.c Sun Dec 11 00:21:58 2022 +0100
2.3 @@ -26,9 +26,12 @@
2.4 #include <sys/types.h>
2.5
2.6 #include <fsclient/client.h>
2.7 +#include <systypes/format.h>
2.8
2.9 #include "ops.h"
2.10
2.11 +#define FMT64d "%" pFMT64 "d"
2.12 +
2.13
2.14
2.15 /* Show statistics for files and directories. */
2.16 @@ -57,7 +60,7 @@
2.17 printf("%s %ld %ld %x %d %d ",
2.18 path, st.st_size, st.st_blocks, st.st_mode, st.st_uid, st.st_gid);
2.19
2.20 - printf("%ld %ld %ld %x %x ",
2.21 + printf(FMT64d " %ld %d %x %x ",
2.22 st.st_dev, st.st_ino, st.st_nlink,
2.23 major(st.st_rdev), minor(st.st_rdev));
2.24
3.1 --- a/libsystypes/include/systypes/base.h Sat Dec 10 01:31:35 2022 +0100
3.2 +++ b/libsystypes/include/systypes/base.h Sun Dec 11 00:21:58 2022 +0100
3.3 @@ -76,13 +76,15 @@
3.4
3.5 /* Equivalent types are defined in sys/types.h typically. In newlib, they are
3.6 defined in sys/_types.h if not defined elsewhere (such as in
3.7 - machine/_types.h).
3.8 + machine/_types.h). In uclibc, the following file is informative:
3.9 +
3.10 + pkg/l4re-core/uclibc/lib/contrib/uclibc/libc/sysdeps/linux/common/bits/types.h
3.11
3.12 These types are intended for IPC, permitting different parties to employ
3.13 different library implementations where these types may be different.
3.14 */
3.15
3.16 -typedef unsigned long int sys_dev_t; /* device number */
3.17 +typedef l4_uint64_t sys_dev_t; /* device number */
3.18 typedef unsigned long int sys_ino_t; /* inode number */
3.19 typedef unsigned int sys_mode_t; /* file permissions */
3.20 typedef unsigned long int sys_nlink_t; /* link count */
4.1 --- a/tests/dstest_file_readdir.cc Sat Dec 10 01:31:35 2022 +0100
4.2 +++ b/tests/dstest_file_readdir.cc Sun Dec 11 00:21:58 2022 +0100
4.3 @@ -29,6 +29,9 @@
4.4
4.5 #include <fsclient/client.h>
4.6 #include <systypes/fcntl.h>
4.7 +#include <systypes/format.h>
4.8 +
4.9 +#define FMT64d "%" pFMT64 "d"
4.10
4.11
4.12
4.13 @@ -85,7 +88,7 @@
4.14 printf("%s %ld %ld %x %d %d ",
4.15 path, st.st_size, st.st_blocks, st.st_mode, st.st_uid, st.st_gid);
4.16
4.17 - printf("%ld %ld %ld %x %x ",
4.18 + printf(FMT64d " %ld %d %x %x ",
4.19 st.st_dev, st.st_ino, st.st_nlink,
4.20 major(st.st_rdev), minor(st.st_rdev));
4.21