From 734a2ff96f37515957199cf9f27cdd37332edccc Mon Sep 17 00:00:00 2001 From: Thomas Hurst Date: Sun, 16 Dec 2018 07:28:51 +0000 Subject: [PATCH] Quick hack to make FreeBSDFileStat work on FreeBSD 12 (#126) --- src/main/java/jnr/posix/FreeBSDFileStat.java | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/main/java/jnr/posix/FreeBSDFileStat.java b/src/main/java/jnr/posix/FreeBSDFileStat.java index ec01140b..4e494073 100644 --- a/src/main/java/jnr/posix/FreeBSDFileStat.java +++ b/src/main/java/jnr/posix/FreeBSDFileStat.java @@ -44,11 +44,15 @@ public final class time_t extends SignedLong {} public final class dev_t extends Signed32 {} public final dev_t st_dev = new dev_t(); - public final Signed32 st_ino = new Signed32(); + public final Signed64 st_ino = new Signed64(); + // FIXME: this should be a 64-bit field + public final Signed32 st_nlink_upper = new Signed32(); + public final Signed32 st_nlink = new Signed32(); public final Signed16 st_mode = new Signed16(); - public final Signed16 st_nlink = new Signed16(); + public final Signed16 st_padding0 = new Signed16(); public final Signed32 st_uid = new Signed32(); public final Signed32 st_gid = new Signed32(); + public final Signed32 st_padding1 = new Signed32(); public final dev_t st_rdev = new dev_t(); public final time_t st_atime = new time_t(); public final SignedLong st_atimensec = new SignedLong(); @@ -56,14 +60,13 @@ public final class dev_t extends Signed32 {} public final SignedLong st_mtimensec = new SignedLong(); public final time_t st_ctime = new time_t(); public final SignedLong st_ctimensec = new SignedLong(); + public final time_t st_birthtime = new time_t(); + public final SignedLong st_birthtimensec = new SignedLong(); public final Signed64 st_size = new Signed64(); public final Signed64 st_blocks = new Signed64(); public final Signed32 st_blksize = new Signed32(); public final Signed32 st_flags = new Signed32(); - public final Signed32 st_gen = new Signed32(); - public final Signed32 st_lspare = new Signed32(); - public final time_t st_birthtime = new time_t(); - public final SignedLong st_birthtimensec = new SignedLong(); + public final Signed64 st_gen = new Signed64(); /* FIXME: This padding isn't quite correct */ public final Signed64 st_qspare0 = new Signed64(); }